Objective
Reproduce the result claimed by dlib
author, i.e. trained a 30-layer ResNet to achieve 99.4% accuracy on LFW face verification benchmark.
Further optimize it if possible.
Use PyTorch.
Implementation Plan
[x] Calculate statistics of the dataset (train and test) of VGG dataset;
[x] Modify 34-layer ResNet to 30-layer one and train a classification network;
[x] Do the above step using uncleaned dataset, i.e. no face detection no alignment no shit;
[x] Take notes of the performance of the trained model;
[ ] Modify loss function from multinomial logistic loss to the pair-wise hinge loss;
[ ] Retrain the model (maybe transfer learning) and take notes of the performance;
[ ] Experiment with cleaned data, i.e. face detection;
[ ] Use transfer learning on Asian faces;
[ ] First just train the classifier -- last layer;
[ ] Second experiment with fine-tuning the ConvNet.
Papers
FaceNet
DeepFace