Closed yyl199655 closed 6 years ago
Hi, thank you for your interest. If you want to further improve the training accuracy, you probably can try to reduce learning rate, e.g. reduce 10X smaller, this may give you immediate improvement but not be significant. You could stop your training when you observer your training accuracy is not going up anymore. I would like to suggest you to select several models near your stopping iteration to do the evaluation, then you can find the best model to fit your testing data.
thank you, can you tell me the detailed process of this experiment 'Softmax_enforce+L2+PCA+[b]' or code? I don't know how to do
Hi. As for "Softmax_enforce", we design a new loss function to increase the margin of decision boundary for the "groundtruth" class during training, please refer our paper[1] for detail description. Sorry that I have no plan to release the code now. As for "L2", we add the l2 normalization on both features and weights of last two fully connected layer, please also refer our paper[1]. As for "PCA", during the testing, after we extract features from the bottleneck layer, we apply PCA to reduce the feature dimension. Please note that we apply "dropout" after bottleneck layer during the training. As for "[b]", it's a multiple cropping methods.
[1]:Cheng, Yu, et al. "Know You at One Glance: A Compact Vector Representation for Low-Shot Learning." Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition. 2017.
As for "PCA", how many dimension need to reduce by apply PCA?
In my setting, the dimension of feature is 512, we reduce the feature dimension to 256 by applying PCA and the performance is improved to 0.5%-1%.
I wan to train a Feature Extractor use your model,When should I stop training? I use your model the accuracy in training set is about 80% no longer improve ,so what should I do?