A Machine Learning Newbie Web Engineer Starts Face Recognition with Machine Learning
Previously
Face detection and face recognition are fundamentally different.
- Face detection is determining whether something is a face
- Face recognition is determining whose face it is, i.e. identifying a specific person
This time I put together how to build the latter, face recognition.
What I’m Trying to Do
I’m carrying out the following five steps in order.
- Download images from a search engine
- Detect faces in the downloaded images and extract only the face regions
- Split the extracted face images into a training set and a test set
- Build a model with machine learning
- Use the model on the test images to evaluate whose face each one is
References
For machine learning, I’m using TensorFlow.
① The following are “Hello World”-style examples for TensorFlow, with code you can copy and paste to get it running right away.
- https://www.tensorflow.org/versions/r0.10/tutorials/mnist/beginners/index.html#mnist-for-ml-beginners
- https://www.tensorflow.org/versions/r0.10/tutorials/mnist/pros/index.html#deep-mnist-for-experts
- https://www.tensorflow.org/versions/r0.10/tutorials/mnist/tf/index.html#tensorflow-mechanics-101
- https://www.tensorflow.org/versions/r0.10/tutorials/tfserve/index.html#tensorflow-serving
② Sugyan’s article was extremely helpful.

What he does is simple and easy to understand, and the way he turned it into a service with a web engineer’s mindset really caught my interest and made me want to give it a try.
Going Forward
What I originally wanted to do was
have a Raspberry Pi recognize faces and, when it determines someone is a family member, greet them with “Good morning.”
So this time I learned the basics of that face recognition part.
Going forward, I want to actually try connecting this system with a Raspberry Pi.
That said, family photos aren’t that easy to gather, so for now let me keep building the basics with SMAP!
