IP Library › Granted Patent US 11,556,775
Granted Patent B2
US 11,556,775 · App. 16/150,855 · Granted Jan 17, 2023

Systems and methods for trace norm regularization and faster inference for embedded models

Inventors: Markus Kliegl (Santa Clara, CA); Siddharth Goyal (San Jose, CA); Kexin Zhao (Santa Clara, CA); Kavya Srinet (Sunnyvale, CA); Mohammad Shoeybi (San Mateo, CA)
Assignee: Baidu USA LLC
G06N3/08G06F17/16G06N5/04G10L15/063G10L15/16
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 11,556,775
App. No.
16/150,855
Granted
Jan 17, 2023
Kind
B2
Abstract

Described herein are systems and methods for compressing and speeding up dense matrix multiplications as found, for examples, in the fully connected and recurrent layers of neural networks for embedded large vocabulary continuous speech recognition (LVCSR). For compression, trace norm regularization technique embodiments were introduced and studied for training low rank factored versions of matrix multiplications. Compared to standard low rank training, the methods more consistently lead to good accuracy versus number of parameter trade-offs and can be used to speed-up training of large models. Faster inference may be further enabled on ARM processors through kernels optimized for small batch sizes, resulting in speed ups over the currently used library. Beyond LVCSR, the techniques are also generally applicable to embedded neural networks with large fully connected or recurrent layers.

Claims (56)

1. A computer-implemented method to train a neural network model, the method comprising:

replacing each of one or more weight matrices in the neural network model by a product of a first and a second matrices, the neural network model has a first parameter size requiring a first memory space for implementation;

using a loss function that incorporates one or more terms related to norms of the first and the second matrices;

training the neural network model to convergence to obtain a trained first matrix and a trained second matrix for each weight matrix;

recovering each weight matrix by a multiplication of corresponding trained first and second matrices; and

applying low-rank approximation by using truncated singular-value decomposition (SVD) on the one or more recovered weight matrices to obtain a trained neural network model with a second parameter size less than the first parameter size, the trained neural network model requiring a second memory space less than the first memory space for implementation.

2. The computer-implemented method of claim 1 wherein the one or more weight matrices comprise one or more recurrent weight matrices and one or more non-recurrent weight matrices.

3. The computer-implemented method of claim 2 wherein the one or more terms incorporated in the loss function comprise at least one hyperparameter to control strength of a sum of the norms of the first matrix and the second matrix.

4. The computer-implemented method of claim 3 wherein the norms are Frobenius norms of the first matrix and the second matrix.

5. The computer-implemented method of claim 3 wherein the at least one hyperparameter comprises a first hyperparameter for the one or more recurrent weight matrices and a second hyperparameter for the one or more non-recurrent weight matrices.

6. The computer-implemented method of claim 3 wherein the first hyperparameter for the one or more recurrent weight matrices is fixed as a multiple of the second hyperparameter for the one or more non-recurrent weight matrices.

7. The computer-implemented method of claim 2 wherein using the truncated SVD on the one or more recovered weight matrices comprises:

implementing an SVD decomposition for each recovered weight matrix to obtain one or more singular values;

retaining a fraction of the one or more singular values; and

obtaining a low-rank approximation of each recovered weight matrix using the retained fraction of the one or more singular values.

8. The computer-implemented method of claim 2 wherein applying low-rank approximation by using truncated SVD comprises:

concatenating the recovered weight matrices into one or more concatenated matrices;

implementing an SVD decomposition for each concatenated matrix to obtain one or more singular values;

retaining a fraction of the one or more singular values; and

obtaining the low-rank approximation of each concatenated matrix using the retained fraction of the one or more singular values.

9. The computer-implemented method of claim 8 wherein the one or more concatenated matrices comprise a single recurrent matrix concatenated from the one or more recurrent matrices and a single non-recurrent matrix concatenated from the one or more non-recurrent matrices.

10. The computer-implemented method of claim 9 wherein the one or more recurrent matrices and the one or more non-recurrent matrices are concatenated along a first dimension into a single combined matrix for low-rank factorization.

11. A system to train a neural network, the system comprising:

a neural network model comprising one or more recurrent layers and one or more non-recurrent layers, the neural network model having a first parameter size requiring a first memory space for implementation; and

one or more processors configured to train the neural network model in a training process, the training process comprising:

replacing each of one or more weight matrices in the neural network model by a product of a first matrix and a second matrix;

using a loss function that incorporates one or more terms related to norms of the first and the second matrices;

training the neural network model using the loss function with predetermined training epochs to obtain a trained first matrix and a trained second matrix for each weight matrix;

recovering each weight matrix by a multiplication of the corresponding trained first matrix and trained second matrix; and

applying low-rank approximation by using truncated singular-value decomposition (SVD) to the one or more recovered weight matrix to obtain a trained neural network model with a second parameter size less than the first parameter size, the trained neural network model requiring a second memory space less than the first memory space for implementation.

12. The system of claim 11 wherein the neural network model is trained by implementing the truncated SVD with a learning rate initiated with a learning rate used in training the neural network model in a last epoch of the predetermined training epochs.

13. The system of claim 11 wherein using the truncated SVD comprises:

implementing an SVD decomposition for each recovered weight matrix in the neural network model into a product of a left unitary matrix, a diagonal matrix with one or more singular values, and a right unitary matrix;

retaining a fraction of the one or more singular values according to a threshold variable;

obtaining a low-rank approximation of each recovered weight matrix using the retained fraction of the one or more singular values;

identifying a largest value of the threshold variable for each weight matrix to allow a parameter size of the neural network model less than or equal to a target number;

based on the identified largest value of the threshold variable, determining a finalized fraction of singular values to be retained; and

using the finalized fraction of singular values to obtain a finalized low-rank approximation for each of the recovered weight matrices.

14. The system of claim 11 wherein applying low-rank approximation using truncated SVD comprises:

concatenating the recovered weight matrices into one or more concatenated matrices;

implementing an SVD decomposition for each concatenated matrix to obtain one or more singular values for each concatenated matrix;

retaining a fraction of the one or more singular values; and

obtaining a low-rank approximation for each concatenated matrix using the retained fraction of the one or more singular values.

15. The system of claim 14 wherein the one or more concatenated matrices comprise a single recurrent matrix concatenated from the one or more recurrent matrices and

a single non-recurrent matrix concatenated from the one or more non-recurrent matrices, and the concatenated single recurrent matrix and the single non-recurrent matrix are applied low-rank approximation separately.

16. The system of claim 15 wherein the one or more recurrent matrices and the one or more non-recurrent matrices are concatenated along a first dimension into a single combined matrix for low-rank factorization.

17. A non-transitory computer-readable medium or media comprising one or more sequences of instructions which, when executed by one or more processors, causes steps to be performed, the steps comprising:

replacing each of one or more weight matrices in a recurrent network model by a product of a first matrix and a second matrix, the recurrent network model having a first parameter size before training;

using a loss function that incorporates one or more terms related to norms of the first matrix and the second matrix;

training the recurrent network model to obtain a trained first matrix and a trained second matrix for each weight matrix;

recovering each weight matrix by the product of corresponding trained first and second matrices;

applying low-rank approximation by using a truncated singular-value decomposition (SVD) to the one or more recovered weight matrix; and

outputting the recurrent network model with low-rank approximation as a trained recurrent network model, the trained recurrent network model having a second parameter size less than the first parameter size and requires a second memory space less than the first memory space for implementation.

18. The non-transitory computer-readable medium or media of claim 17 wherein the recurrent network model is a recurrent neural network model comprising one or more recurrent layers and one or more fully connected layers, the one or more weight matrices comprising one or more recurrent weight matrices in the one or more recurrent layers and one or more non-recurrent matrices in the one or more fully connected layers.

19. The non-transitory computer-readable medium or media of claim 18 wherein the loss function comprises one or more hyperparameters to control strength of the norms of the first matrix and the second matrix.

20. The non-transitory computer-readable medium or media of claim 19 wherein the one or more hyperparameters comprise a first hyperparameter for the one or more recurrent weight matrices and a second hyperparameter for the one or more non-recurrent weight matrices.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 3, 2018
From: KLIEGL, MARKUS; GOYAL, SIDDHARTH; ZHAO, KEXIN; SRINET, KAVYA; SHOEYBI, MOHAMMAD
To: BAIDU USA LLC
Reel/Frame 047060/0803 →
Continuity (2)
Provisional Application 62576470 · Oct 24, 2017
Related Publication 20190122108A1 · Apr 25, 2019