IP Library Granted Patent US 10,950,243
Granted Patent B2
US 10,950,243 · App. 16/290,399 · Granted Mar 16, 2021

Method for reduced computation of t-matrix training for speaker recognition

Inventor: Milind Borkar (Plano, TX)
Assignee: ILLUMA Labs Inc.
G10L17/04G10L17/02
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 10,950,243
App. No.
16/290,399
Granted
Mar 16, 2021
Kind
B2
Abstract

A system and method for improving T-matrix training for speaker recognition are provided. The method includes receiving an audio input, divisible into a plurality of audio frames, wherein at least a first audio frame includes an audio sample of a human speaker, the sample having a length above a first threshold; generating for each audio frame a feature vector; generating for a first plurality of feature vectors centered statistics of at least a zero order and a first order; generating a first i-vector, the first i-vector representing the human speaker; generating an optimized T-matrix training sequence computation, based on the first i-vector, an initialized T-matrix, the centered statistics, and a Gaussian mixture model (GMM) of a trained universal background model (UBM).

Claims (51)

1. A method for improving T-matrix training for speaker recognition, comprising:

receiving an audio input, divisible into a plurality of audio frames, wherein at least a first audio frame includes an audio sample of a human speaker, the sample having a length above a first threshold;

generating for each audio frame a feature vector;

generating for a first plurality of feature vectors centered statistics of at least a zero order and a first order;

generating a first i-vector, the first i-vector representing the human speaker;

generating an optimized T-matrix training sequence computation, based on the first i-vector, an initialized T-matrix, the centered statistics, and a Gaussian Mixture Model (GMM) of a trained universal background model (UBM), wherein the GMM is associated with a plurality of components, each defined by a covariance matrix, a mean vector, and a weight, and wherein generating the optimized T-matrix training sequence further comprises:

generating a feature matrix based on the feature vector;

generating a GMM mean matrix based on the plurality of mean vectors associated with the plurality of GMM components; and

generating a delta matrix based on the feature matrix and the GMM mean matrix.

2. The method of claim 1 , wherein generating the optimized T-matrix training sequence further comprises:

generating a first multi-dimensional array comprising a plurality of duplicated matrices, wherein each matrix includes a plurality of GMM mean vectors;

generating a multi-dimensional feature matrix, comprising a plurality of feature matrices, wherein each feature matrix corresponding to a feature vector of a single audio frame; and

generating a multi-dimensional delta array based on the first multi-dimensional array and the multi-dimensional feature matrix.

3. The method of claim 1 , wherein generating the optimized T-matrix training sequence further comprises:

detecting diagonal matrices, and performing only those computations that involve diagonal elements.

4. The method of claim 1 , wherein generating the optimized T-matrix training sequence further comprises:

detecting computations in an intermediate result that generate an off diagonal element of a matrix which is diagonalized; and

eliminating the computation of the intermediate result.

5. The method of claim 1 , wherein generating the optimized T-matrix training sequence further comprises:

detecting a recurring computation; and

precomputing the recurring computation and storing the precomputed result in a cache of the processor.

6. The method of claim 1 , wherein generating the optimized T-matrix training sequence further comprises:

detecting a computation between a first matrix and a second matrix; and

replacing the detected computation with an element by element computation between the first matrix and the second matrix, in response to determining that the replacement will result in the same output.

7. The method of claim 1 , wherein a plurality of i-vectors are generated, wherein each i-vector corresponding to a single human speaker.

8. The method of claim 7 , wherein a first group of the plurality of i-vectors are generated from a first audio input, and a second group is generated from a second audio input.

9. The method of claim 1 , repeating the method for a plurality of iterations based on a single audio frame.

10. The method of claim 1 , repeating the method for each of the plurality of audio frames.

11. The method of claim 1 , wherein the method is performed in multiple iterations on each audio frame.

12. The method of claim 1 , wherein the feature vector is an MFCC vector.

13. The method of claim 1 , executing the optimized T-matrix training sequence on any one of: a general purpose graphics processor unit (GPGPU), a multi-core CPU, and a combination GPGPU and multi-core CPU.

14. A non-transitory computer readable medium having stored thereon instructions for causing a processing circuitry to execute a process, the process comprising:

receiving an audio input, divisible into a plurality of audio frames, wherein at least a first audio frame includes an audio sample of a human speaker, the sample having a length above a first threshold;

generating for each audio frame a feature vector;

generating for a first plurality of feature vectors centered statistics of at least a zero order and a first order;

generating a first i-vector, the first i-vector representing the human speaker;

generating an optimized T-matrix training sequence computation, based on the first i-vector, an initialized T-matrix, the centered statistics, and a Gaussian mixture model (GMM) of a trained universal background model (UBM), wherein the GMM is associated with a plurality of components, each defined by a covariance matrix, a mean vector, and a weight, and wherein generating the optimized T-matrix training sequence further comprises:

generating a feature matrix based on the feature vector;

generating a GMM mean matrix based on the plurality of mean vectors associated with the plurality of GMM components; and

generating a delta matrix based on the feature matrix and the GMM mean matrix.

15. A system for improving T-matrix training for speaker recognition, comprising:

a processing circuitry; and

a memory, the memory containing instructions that, when executed by the processing circuitry, configure the system to:

receive an audio input, divisible into a plurality of audio frames, wherein at least a first audio frame includes an audio sample of a human speaker, the sample having a length above a first threshold;

generate for each audio frame a feature vector;

generate for a first plurality of feature vectors centered statistics of at least a zero order and a first order;

generate a first i-vector, the first i-vector representing the human speaker;

generate an optimized T-matrix training sequence computation, based on the first i-vector, an initialized T-matrix, the centered statistics, and a Gaussian mixture model (GMM) of a trained universal background model (UBM), wherein the GMM is associated with a plurality of components, each defined by a covariance matrix, a mean vector, and a weight, and wherein the system is further configured to:

generate a feature matrix based on the feature vector;

generate a GMM mean matrix based on the plurality of mean vectors associated with the plurality of GMM components; and

generate a delta matrix based on the feature matrix and the GMM mean matrix.

Assignments (2)
SECURITY INTEREST Recorded Dec 27, 2024
From: ILLUMA LABS INC.
To: STIFEL BANK
Reel/Frame 069692/0400 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 1, 2019
From: BORKAR, MILIND
To: ILLUMA LABS INC.
Reel/Frame 048483/0223 →
Continuity (4)
Continuation In Part 16203077 · Nov 28, 2018
Provisional Application 62638086 · Mar 3, 2018
Provisional Application 62592156 · Nov 29, 2017
Related Publication 20190198025A1 · Jun 27, 2019