1
$\begingroup$

This is a general or more conceptual questions about biometric classification models, based on deep learning neural networks.

The goal of the system is to take a set of features (e.g. voice recording, face photo) and identify to which person (enrolled in the system's database) it belongs. For example: if we have Alice and Bob in the system and the input is the voice of Alice, the model should return "Alice".

One of the more common approaches to this problem is to take the input (e.g. voice recording, face photo) and create a vector of features, called "embedding". It creates an embedding for each person stored in the database, the process of adding a person to the database and creating an embedding for him is called "enrolling".

In most system, the deep learning model part takes a set of features and returns an embedding. Then the embedding is compared to all the embeddings stored in the database, and returns the person with the "closest" embedding. "Closest" may be by Euclidean distance, cosine similarity or other method.

The shortcoming of this process, is that it always returns one person from the database and doesn't know how to handle an unknown person (not in the database). An idea is to add a class of "other"/"unknown" and return it when unknown person is checked by the system.

The problem is how do I determine for a certain embedding, that it belongs to the class unknown? The naive answer is to threshold the distance/similarity to the closest embedding. However, in some or many models (including the specific model we are working with) it is very hard to find a good threshold, without getting substantial false rejection rate (FRR).

Is there another approach to produce a biometric system that can classify unknown speakers as "other"?

$\endgroup$

2 Answers 2

1
$\begingroup$

You probably have an assumption that biometric systems return one most likely match. For example, if you look at the definition of the identification task in face recognition, then the most common scenario will be to return the N closest candidates (open-set identification). This is also evidenced by the quality metrics used, which assess whether there was a correct answer among N objects.

I don't want to be categorical by saying that any method of searching for a similar vector embedding in the database will be reduced to a comparison with a threshold distance. But any method will not be "perfect", because you will still have to compromise between errors of the 1st and 2nd type (Precision and Recall).

$\endgroup$
0
$\begingroup$

Learning an embedding and using k-Nearest Neighbor is one way to create a classification system. Another option would be to choose other classification algorithms, such as random forest. If a classification algorithm returns a probability, the probability can be thresholded to return "other".

$\endgroup$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.