First of all, I want to recommend this article (TABLE IV). It's not the most recent, but the algorithm families haven't changed much.
If you were referring to the face_recognition library, then it uses the dlib_face_recognition_resnet_model_v1 model, which is indeed somewhat outdated.
In my opinion, you should compare the two models Facenet and SphereFace2. The second one is quite new. And for training the first one, Google used a huge amount of data (more than for any other model).
machine learning - Best Python library for face recognition - Data Science Stack Exchange
machine learning - which is the most effective(accurate) face detection method in python - Data Science Stack Exchange
Which is the best algorithm for Face Recognition?
Face Recognition
You can use the Facial landmarks library, it's very easy to use you will get 68 point and compare them from your dataSet very dirty and easy way of doing things note that
- The users must take the pictures at the same position to keep the same depth
Did you look into a (pre)trained convolutional net? I have not used any pre-trained facial model (trained other objects with tensorflow though) but I'm pretty sure a quick search will yield quite a few semi off the shelf models.
That should be pretty much the state of the art, quite effective even with simpler models, but also widely available pretrained (specially for more widely used objects such as faces)