IP Library Granted Patent US 12,136,038
Granted Patent B2
US 12,136,038 · App. 17/175,487 · Granted Nov 5, 2024

Gradient pruning for efficient training of machine learning models

Inventors: Yash Sanjay Bhalgat (San Diego, CA); Jin Won Lee (San Diego, CA); Jamie Menjay Lin (San Diego, CA); Fatih Murat Porikli (Carlsbad, CA); Chirag Sureshbhai Patel (San Diego, CA)
Assignee: QUALCOMM Incorporated
G06N3/082G06F18/2148G06N3/098G06N20/00
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 12,136,038
App. No.
17/175,487
Granted
Nov 5, 2024
Kind
B2
Abstract

Certain aspects of the present disclosure provide techniques for improved machine learning using gradient pruning, comprising computing, using a first batch of training data, a first gradient tensor comprising a gradient for each parameter of a parameter tensor for a machine learning model; identifying a first subset of gradients in the first gradient tensor based on a first gradient criteria; and updating a first subset of parameters in the parameter tensor based on the first subset of gradients in the first gradient tensor.

Claims (59)

1. A method for training a machine learning model, comprising:

computing using a first batch of training data, a first gradient tensor comprising a gradient for each parameter of a parameter tensor for a machine learning model;

identifying a first subset of gradients in the first gradient tensor based on evaluating each respective gradient of the first gradient tensor using a first gradient criteria; and

updating a first subset of parameters in the parameter tensor based on the first subset of gradients.

2. The method of claim 1 , further comprising: generating a sparse gradient tensor based on the first subset of gradients in the first gradient tensor.

3. The method of claim 2 , further comprising: transmitting the sparse gradient tensor to a remote server managing federated learning of the machine learning model.

4. The method of claim 2 , wherein the sparse gradient tensor is stored in a compressed sparse row (CSR) format.

5. The method of claim 1 , further comprising:

computing, using a second batch of training data, a second gradient tensor comprising a gradient for each parameter of the parameter tensor;

determining a first set of indices corresponding to the first subset of gradients in the first gradient tensor; and

updating the first subset of parameters in the parameter tensor based on the first set of indices and the second gradient tensor.

6. The method of claim 1 , further comprising:

computing, using a second batch of training data, a second gradient tensor comprising a gradient for each parameter of the parameter tensor; and

identifying a second subset of gradients in the second gradient tensor based on a second gradient criteria.

7. The method of claim 6 , wherein the first subset of gradients comprises more gradient values than the second subset of gradients.

8. The method of claim 6 , wherein the first subset of gradients comprises fewer gradient values than the second subset of gradients.

9. The method of claim 1 , wherein the first gradient criteria comprises a percentile value.

10. The method of claim 1 , wherein updating the first subset of parameters in the parameter tensor based on the first subset of gradients is performed during a training iteration and comprises modifying only parameters in the parameter tensor that correspond to gradients in the first subset of gradients, wherein at least one parameter in the parameter tensor that does not correspond to any gradient in the first subset of gradients is not updated during the training iteration.

11. The method of claim 1 , further comprising deploying the machine learning model to generate model outputs.

12. A non-transitory computer-readable medium comprising computer-executable instructions that, when executed by one or more processors of a processing system, cause the processing system to perform an operation comprising:

computing using a first batch of training data, a first gradient tensor comprising a gradient for each parameter of a parameter tensor for a machine learning model;

identifying a first subset of gradients in the first gradient tensor based on evaluating each respective gradient of the first gradient tensor using a first gradient criteria; and

updating a first subset of parameters in the parameter tensor based on the first subset of gradients.

13. The non-transitory computer-readable medium of claim 12 , wherein the operation further comprises: generating a sparse gradient tensor based on the first subset of gradients in the first gradient tensor.

14. The non-transitory computer-readable medium of claim 13 , wherein the operation further comprises: transmitting the sparse gradient tensor to a remote server managing federated learning of the machine learning model.

15. The non-transitory computer-readable medium of claim 12 , wherein the operation further comprises:

computing, using a second batch of training data, a second gradient tensor comprising a gradient for each parameter of the parameter tensor;

determining a first set of indices corresponding to the first subset of gradients in the first gradient tensor; and

updating the first subset of parameters in the parameter tensor based on the first set of indices and the second gradient tensor.

16. The computer-readable medium of claim 12 , the operation further comprising:

computing, using a second batch of training data, a second gradient tensor comprising a gradient for each parameter of the parameter tensor; and

identifying a second subset of gradients in the second gradient tensor based on a second gradient criteria.

17. The computer-readable medium of claim 16 , wherein the first subset of gradients comprises more gradient values than the second subset of gradients.

18. The computer-readable medium of claim 16 , wherein the first subset of gradients comprises fewer gradient values than the second subset of gradients.

19. The computer-readable medium of claim 12 , wherein the first gradient criteria comprises a percentile value.

20. The computer-readable medium of claim 12 , wherein updating the first subset of parameters in the parameter tensor based on the first subset of gradients is performed during a training iteration and comprises modifying only parameters in the parameter tensor that correspond to gradients in the first subset of gradients, wherein at least one parameter in the parameter tensor that does not correspond to any gradient in the first subset of gradients is not updated during the training iteration.

21. A processing system, comprising:

a memory comprising computer-executable instructions; and

one or more processors configured to execute the computer-executable instructions and cause the processing system to perform an operation comprising:

computing, using a first batch of training data, a first gradient tensor comprising a gradient for each parameter of a parameter tensor for a machine learning model;

identifying a first subset of gradients in the first gradient tensor based on evaluating each respective gradient of the first gradient tensor using a first gradient criteria; and

updating a first subset of parameters in the parameter tensor based on the first subset of gradients.

22. The processing system of claim 21 , wherein the operation further comprises: generating a sparse gradient tensor based on the first subset of gradients in the first gradient tensor.

23. The processing system of claim 22 , wherein the operation further comprises: transmitting the sparse gradient tensor to a remote server managing federated learning of the machine learning model.

24. The processing system of claim 21 , wherein the operation further comprises:

computing, using a second batch of training data, a second gradient tensor comprising a gradient for each parameter of the parameter tensor;

determining a first set of indices corresponding to the first subset of gradients in the first gradient tensor; and

updating the first subset of parameters in the parameter tensor based on the first set of indices and the second gradient tensor.

25. The processing system of claim 21 , wherein the operation further comprises:

computing, using a second batch of training data, a second gradient tensor comprising a gradient for each parameter of the parameter tensor; and

identifying a second subset of gradients in the second gradient tensor based on a second gradient criteria.

26. The processing system of claim 25 , wherein the first subset of gradients comprises more gradient values than the second subset of gradients.

27. The processing system of claim 25 , wherein the first subset of gradients comprises fewer gradient values than the second subset of gradients.

28. The processing system of claim 21 , wherein the first gradient criteria comprises a percentile value.

29. The processing system of claim 21 , wherein updating the first subset of parameters in the parameter tensor based on the first subset of gradients is performed during a training iteration and comprises modifying only parameters in the parameter tensor that correspond to gradients in the first subset of gradients, wherein at least one parameter in the parameter tensor that does not correspond to any gradient in the first subset of gradients is not updated during the training iteration.

30. A processing system configured to train a machine learning model, comprising:

means for computing, using a first batch of training data, a first gradient tensor comprising a gradient for each parameter of a parameter tensor for a machine learning model;

means for identifying a first subset of gradients in the first gradient tensor based on evaluating each respective gradient of the first gradient tensor using a first gradient criteria; and

means for updating a first subset of parameters in the parameter tensor based on the first subset of gradients.

Assignments (2)
CORRECTIVE ASSIGNMENT TO CORRECT THE THIRD INVENTOR'S EXECUTION DATE PREVIOUSLY RECORDED AT REEL: 056219 FRAME: 0876. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT . Recorded Mar 24, 2022
From: BHALGAT, YASH SANJAY; LEE, JIN WON; LIN, JAMIE MENJAY; PORIKLI, FATIH MURAT; PATEL, CHIRAG SURESHBHAI
To: QUALCOMM INCORPORATED
Reel/Frame 059499/0519 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 12, 2021
From: BHALGAT, YASH SANJAY; LEE, JIN WON; LIN, JAIME MENJAY; PORIKLI, FATIH MURAT; PATEL, CHIRAG SURESHBHAI
To: QUALCOMM INCORPORATED
Reel/Frame 056219/0876 →
Continuity (1)
Related Publication 20220261648A1 · Aug 18, 2022
Cited By (2)
US 12,373,598 US 12,450,388