A non-transitory computer readable storage medium storing one or more programs, the one or more programs comprising instructions, which, when executed by an apparatus device with one or more processors, one or more input devices, and one or more output devices, cause the apparatus to perform operations for recognizing a user of a communicating device as belonging to a list of known users from an utterance included in a voice signal received from the communicating device, the operations comprising:
- applying an utterance of a speaker to a machine learning voiceprint extraction model to extract a voiceprint set comprising an i-vector or a speaker embedding based on the utterance;
- outputting the voiceprint set by the machine learning voiceprint extraction model;
- applying the output voiceprint set to a machine learning model to compute an utterance match score based on the voiceprint set, or to a machine learning hashing model to reduce the voiceprint set to a reduced dimension voiceprint set and apply the reduced dimension voiceprint set to the machine learning model to compute the utterance match score based on the reduced dimension voiceprint set;
- outputting the utterance match score by the machine learning model;
- applying the output match score to a machine learning score normalization model (NL-NORM) to calibrate the match score;
- comparing the calibrated match score to a match score threshold;
- and,
- when the calibrated match score is greater than the match score threshold, identifying the user as belonging to a list of known users.