<p>face_recognition problem is formed as the following:</p>
<p>The features are two pictures for each data point and the label is whether those two pictures for the same person or not(Binary classification) but the network is constructed without the classification layer. after training the model the output is called embedding. the network is trained such that the distance between the output of the model(embedding) for the same person is small and different persons is big. You can use cosine distance as a metric to get the distance between two vectors(embedding) and so on.</p>
<p>Note: this is very abstract idea about how face_recognition works, if you need more details you can read this <a href="https://arxiv.org/abs/1503.03832" rel="nofollow noreferrer">paper</a>.</p>
How does face_recognition library work in the background?
<p>I am using a face recognition library to detect faces. The model gets 128 embeddings from the image. To check if two faces match, it checks if the distance between those two points is less than 0.6. I am not sure what it means by distance between two images. As per my understanding, does it mean comparing the distance between two points in known images and also again in the image we want it to recognize. I could not find any documentation on this online. Please Help</p>