IP Library › Granted Patent US 11,715,032
Granted Patent B2
US 11,715,032 · App. 16/582,928 · Granted Aug 1, 2023

Training a machine learning model using a batch based active learning approach

Inventors: Gaurav Gupta (Los Angeles, CA); Anit Kumar Sahu (Pittsburgh, PA); Wan-Yi Lin (Pittsburgh, PA); Joseph Christopher Szurley (Upper St. Clair, PA)
Assignee: Robert Bosch GmbH
G06N20/00G06N5/04
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,715,032
App. No.
16/582,928
Granted
Aug 1, 2023
Kind
B2
Abstract

A system for training a machine learning model using a batch based active learning approach. The system includes an information source and an electronic processor. The electronic processor is configured to receive a machine learning model to train, an unlabeled training data set, a labeled training data set, and an identifier of the information source. The electronic processor is also configured to select a batch of training examples from the unlabeled training data set and send, to the information source, a request for, for each training example included in the batch, a label for the training example. The electronic processor is further configured to, for each training example included in the batch, receive a label, associate the training example with the label, and add the training example to the labeled training data set. The electronic processor is also configured to train the machine learning model using the labeled training data.

Claims (190)

1. A system for training a machine learning model using a batch based active learning approach, the system comprising:

an information source; and

an electronic processor, the electronic processor configured to

(i) receive a machine learning model to be trained, an unlabeled training data set, a labeled training data set, and an identifier of the information source;

(ii) cluster training examples of the unlabeled training data set based on assigned importance scores, wherein the importance scores are based on mutual information between a vector of model parameters of the machine learning model and the training examples;

(iii) select a training example for a batch of training examples from the cluster of training examples of the unlabeled training data set based on a probability that the training example is associated with a centroid of the cluster;

(iv) send, to the information source, a request for, for each training example included in the batch, a label;

(v) for each training example included in the batch

receive a label,

associate the training example with the label, and

add the training example to the labeled training data set; and

(vi) train the machine learning model using the labeled training data included in the batch.

2. The system according to claim 1 , wherein the electronic processor is configured to repeat acts (iii)-(vi) until training of the machine learning model is complete.

3. The system according to claim 2 , wherein the training of the machine learning model is complete when at least one condition is met from the group consisting of: the machine learning model achieves a desired success rate, the machine learning model achieves a desired failure rate, the electronic processor has sent at least a predetermined number of requests for labels to the information source, and at least a predetermined amount of processing power is used to query the information source.

4. The system according to claim 1 , wherein the electronic processor is configured to select a batch of training examples from the unlabeled training data set by

(vii) assigning an importance score to a training example for each training example included in the unlabeled training data set;

(viii) clustering the training examples based on an output of a squashing function of the training examples, wherein an input of the squashing function is an output of each of the training examples input into the machine learning model;

(ix) determining a centroid for each cluster based on the importance scores of training examples included in the cluster associated with the centroid;

(x) for each centroid, selecting one or more training examples associated with the centroid to include in the batch, wherein the probability P ic is determined using the following formula:

P

i

⁢

c

∼

Categorical

(

e

-

β

⁢

d

1

⁢

c

∑

e

-

β

⁢

d

1

⁢

c

′

,

e

-

β

⁢

d

2

⁢

c

∑

e

-

β

⁢

d

2

⁢

c

′

,

…

,

e

-

β

⁢

d

N

⁢

c

∑

e

-

β

⁢

d

Nc

′

)

.

5. The system according to claim 4 , wherein the electronic processor is configured to

repeat act (x) until a desired number of training examples are included in the batch; and

each time act (x) is repeated modify a predetermined threshold for selecting one or more training examples to include in a batch.

6. The system according to claim 4 , wherein the importance score of a training example is indicative of reduction in uncertainty of the machine learning model when the machine learning model is trained using the training example.

7. The system according to claim 4 , wherein the electronic processor is configured to

determine an uncertainty of the machine learning model;

use a Gibbs distribution with a temperature coefficient that is the inverse of the uncertainty of the machine learning model to determine a probability that a training example is associated with a centroid; and

when the probability that the training example is associated with the centroid is greater than a predetermined threshold include the training example in the batch.

8. The system according to claim 4 , wherein an importance score of a centroid of a cluster is a median of each of the training examples included in the cluster.

9. The system according to claim 1 , wherein the electronic processor is further configured to

when training of the machine learning model is complete, input an image or an audio recording to the machine learning model for classification into one of a plurality of classes, and

based on the classification of the image perform one selected from the group consisting of: control an action of a vehicle, allow access to an electronic device, and output an alert to a user.

10. The system according to claim 1 , wherein the electronic processor is further configured to append a denoising layer onto the machine learning model, wherein the denoising layer determines noise associated with a training example and the machine learning model is trained using output from the denoising layer.

11. A method for training a machine learning model using a batch based active learning approach, the method comprising:

(i) receiving a machine learning model to be trained, an unlabeled training data set, a labeled training data set, and an identifier of an information source;

(ii) clustering training examples of the unlabeled training data set based on assigned importance scores, wherein the importance scores are based on mutual information between a vector of model parameters of the machine learning model and the training examples;

(iii) selecting, with an electronic processor, a training example for a batch of training examples from the cluster of training examples of the unlabeled training data set based on a probability that the training example is associated with a centroid of the cluster;

(iv) sending, to the information source, a request for, for each training example included in the batch, a label for the training example;

(v) for each training example included in the batch

receiving a label,

associating the training example with the label, and

adding the training example to the labeled training data set; and

(vi) training, with the electronic processor, the machine learning model using the labeled training data included in the batch.

12. The method according to claim 11 , wherein the method includes repeating steps (iii)-(vi) until training of the machine learning model is complete.

13. The method according to claim 12 , wherein the training of the machine learning model is complete when at least one condition is met from the group consisting of: the machine learning model achieves a desired success rate, the machine learning model achieves a desired failure rate, the electronic processor has sent at least a predetermined number of requests for labels to the information source, and at least a predetermined amount of processing power is used to query the information source.

14. The method according to claim 11 , wherein the method includes selecting a batch of training examples from the unlabeled training data set by

(vii) assigning an importance score to a training example for each training example included in the unlabeled training data set;

(viii) clustering the training examples based on an output of a squashing function of the training examples, wherein an input of the squashing function is an output of each of the training examples input into the machine learning model;

(ix) determining a centroid for each cluster based on the importance scores of training examples included in the cluster associated with the centroid;

(x) for each centroid, selecting one or more training examples associated with the centroid to include in the batch, wherein the probability P ic is determined using the following formula:

P

i

⁢

c

∼

Categorical

(

e

-

β

⁢

d

1

⁢

c

∑

e

-

β

⁢

d

1

⁢

c

′

,

e

-

β

⁢

d

2

⁢

c

∑

e

-

β

⁢

d

2

⁢

c

′

,

…

,

e

-

β

⁢

d

N

⁢

c

∑

e

-

β

⁢

d

Nc

′

)

.

15. The method according to claim 14 , wherein step (x) is repeated until a desired number of training examples are included in the batch and each time step (x) is repeated a predetermined threshold for selecting one or more training examples to include in a batch is modified.

16. The method according to claim 14 , wherein the importance score of a training example is indicative of reduction in uncertainty of the machine learning model when the machine learning model is trained using the training example.

17. The method according to claim 14 , the method further comprising

determining an uncertainty of the machine learning model;

using a Gibbs distribution with a temperature coefficient that is the inverse of the uncertainty of the machine learning model to determine a probability that a training example is associated with a centroid; and

when the probability that the training example is associated with the centroid is greater than a predetermined threshold including the training example in the batch.

18. The method according to claim 14 , wherein an importance score of a centroid of a cluster is a median of each of the training examples included in the cluster.

19. The method according to claim 11 , the method further comprising

when training of the machine learning model is complete, inputting an image or an audio recording to the machine learning model for classification into one of a plurality of classes, and

based on the classification of the image performing one selected from the group consisting of: control an action of a vehicle, allow access to an electronic device, and output an alert to a user.

20. The method according to claim 11 , wherein the method further comprising appending a denoising layer onto the machine learning model, wherein the denoising layer determines noise associated with a training example and the machine learning model is trained using output from the denoising layer.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 10, 2020
From: GUPTA, GAURAV; SAHU, ANIT KUMAR; LIN, WAN-YI; SZURLEY, JOSEPH CHRISTOPHER
To: ROBERT BOSCH GMBH
Reel/Frame 051774/0496 →
Continuity (1)
Related Publication 20210089960A1 · Mar 25, 2021