简体   繁体   中英

Incremental learning in facial recognition

I am trying to implement incremental/online learning for a face recognition application. I've trained a model on a dataset and it works perfectly fine, however, I need to capture new faces(classes) over time and add them to the existing dataset. Is there any way that I can train the model with new classes without retraining from the scratch?

I've not found any rich resources so far and really appreciated if anyone can point me out somewhere.

My advice is to train your model using either of these two techniques:

Finally, you should think that you are not going to keep that model, but that you are only going to use it as a feature extractor. In other words, the models will be very good at extracting facial information, not classified (that will not be their task).

Later you fix that model and you can do different things:

  • Directly use a distance as the cosine to identify the closest face with respect to a dataset (it works if you don't require an extremely certain accuracy ). You directly use KNN between the features of your face and your entire database and consider the recognition as the closest face.

  • You train an additional model that uses the features of the previous one. You can use a neural network again, but in this case my suggestion is to use an SVM (since SVM models as LASVM is an approximation of learning online). Thus, they only have to train a small classifier every so often. https://machinelearningmastery.com/how-to-develop-a-face-recognition-system-using-facenet-in-keras-and-an-svm-classifier/

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM