CUFCTL / face-recognition

A GPU-accelerated real-time face recognition system based on classical machine learning algorithms
MIT License
23 stars 11 forks source link

Research (and possibly implement) other classifiers #23

Closed bentsherman closed 6 years ago

bentsherman commented 7 years ago

So the high-level problem that we are dealing with in this project is statistical classification: given a training set of observations (images) with labels (identity of the person in the image), we are trying to determine the correct label of a new observation (test image); in other words, we are trying to "classify" the test image.

There are many different types of classifiers (see the Wikipedia article), but we currently use only one, k-nearest neighbors. We use PCA, LDA, and ICA to (1) reduce the dimensionality and (2) extract important features from the images so that our classifier is faster and more accurate, but these three algorithms each use the same classifier. Some other classifiers that may be worth exploring:

This may be more of a long-term endeavor, depending on how many contributors we have. The priority is to test our current system against several datasets and tune the hyperparameters, but we could probably at least have a couple of people researching these techniques and thinking about (1) how useful they could be to us and (2) how we might implement them in our code.

Further reading: http://cs231n.github.io/classification/ Further reading: http://face-rec.org/algorithms/

bentsherman commented 6 years ago

Since all of these classifiers are implemented in scikit-learn, if we ever want to play around with them then we can do so in scikit-learn first.