IP Library Granted Patent US 9,129,228
Granted Patent B1
US 9,129,228 · App. 14/304,143 · Granted Sep 8, 2015

Robust and fast model fitting by adaptive sampling

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 9,129,228
App. No.
14/304,143
Granted
Sep 8, 2015
Kind
B1
Abstract

Aspects of the present disclosure relate generally to model fitting. A target model having a large number of inputs is fit using a performance model having relatively few inputs. The performance model is learned during the fitting process. Optimal optimization parameters including a sample size, a damping factor, and an iteration count are selected for an optimization round. A random subset of data is sampled based on the selected sample size. The optimization round is conducted using the iteration count and the sampled data to produce optimized parameters. The performance model is updated based on the performance of the optimization round. The parameters of the target model are then updated based on the damping factor and the parameters computed by the optimization round. The aforementioned steps are performed in a loop in order to obtain optimized parameters and fit of the data to the target model.

Claims (44)

1. A method for training a target model on a set of training data by performing a plurality of optimization rounds, the method comprising, for each of the plurality of optimization rounds:

selecting a set of optimization parameters for the optimization round including a sample size and a damping factor;

sampling the training data based on the selected sample size;

performing, by one or more processors, the optimization round including optimizing an objective function for the sampled training data;

updating a set of target parameters of the target model based on results of the optimization round and the damping factor; and

determining, by the one or more processors and using a performance model associated with a set of performance parameters, an optimal sample size for a next optimization round in the plurality of optimization rounds, wherein the performance model is configured to forecast an expected performance of the next optimization round for a given sample size and damping factor based on results of the optimization round, the selected sample size and the damping factor.

2. The method of claim 1 , wherein the training data includes handwriting samples and the target model is directed to handwriting recognition.

3. The method of claim 1 , wherein the training data includes speech samples and the target model is directed to speech recognition.

4. The method of claim 1 , wherein the training data includes click through rates and the target model is directed to tracking advertisements.

5. The method of claim 1 , wherein the training data includes text samples and the target model is directed to spam filtering in text.

6. The method of claim 1 , further comprising, for each optimization round:

updating the performance parameters associated with the performance model based on a performance of the optimization round.

7. The method of claim 6 , wherein updating the performance parameters associated with the performance model based on a performance of the optimization round comprises:

updating the performance parameters based on a running time and memory necessary to perform the optimization round.

8. The method of claim 6 , wherein updating the performance parameters associated with the performance model based on a performance of the optimization round comprises:

updating the performance parameters based on a generalization error of the optimization round.

9. The method of claim 8 , further comprising:

analyzing the generalization error by evaluating the target model on a second sample of training data.

10. The method of claim 9 , wherein a size of the second sample of training data is larger than the selected sample size.

11. The method of claim 9 , further comprising:

selecting the second sample of the training data such that the second sample of the training data does not include the sampled training data.

12. The method of claim 9 , wherein the generalization error is determined based on an overall objective generalization function: F(m,s)−e(|s|,F(m,s)−F(m′,s),r(m),d), where s is the selected sample size, e represents an estimated error function for the sampled training data, r is a regularization cost, and d is the selected damping factor.

13. The method of claim 1 , wherein the objective function is optimized in the optimization round according to the function: F(m)=g(m)+1/NΣ t ƒ(m,x t ), where m is a vector of the set of target model parameters, x t are instances of the sampled training data, the function ƒ is a loss function, and g is a regularization term which depends on the target model.

14. A system comprising one or more computers and one or more storage devices storing instructions that when executed by the one or more computers cause the one or more computers to perform operations for training a target model on a set of training data by performing a plurality of optimization rounds, the operations comprising, for each of the plurality of optimization rounds:

selecting a set of optimization parameters for the optimization round including a sample size and a damping factor;

sampling the training data based on the selected sample size;

performing the optimization round including optimizing an objective function for the sampled training data;

updating a set of target parameters of the target model based on results of the optimization round and the damping factor; and

determining, using a performance model associated with a set of performance parameters, an optimal sample size for a next optimization round in the plurality of optimization rounds, wherein the performance model is configured to forecast an expected performance of the next optimization round for a given sample size and damping factor based on results of the optimization round, the selected sample size and the damping factor.

15. The system of claim 14 , the operations further comprising, for each optimization round:

updating the performance parameters associated with the performance model based on a performance of the optimization round.

16. The system of claim 15 , wherein updating the performance parameters associated with the performance model based on a performance of the optimization round comprises:

updating the performance parameters based on a running time and memory necessary to perform the optimization round.

17. The system of claim 15 , wherein updating the performance parameters associated with the performance model based on a performance of the optimization round comprises:

updating the performance parameters based on a generalization error of the optimization round.

18. The system of claim 17 , the operations further comprising:

analyzing the generalization error by evaluating the target model on a second sample of training data.

19. The system of claim 18 , wherein a size of the second sample of training data is larger than the selected sample size.

20. A computer program product encoded on one or more non-transitory computer storage media, the computer program storing instructions that when executed by one or more processors cause the one or more processors to perform operations for training a target model on a set of training data by performing a plurality of optimization rounds, the operations comprising, for each of the plurality of optimization rounds:

selecting a set of optimization parameters for the optimization round including a sample size and a damping factor;

sampling the training data based on the selected sample size;

performing the optimization round including optimizing an objective function for the sampled training data;

updating a set of target parameters of the target model based on results of the optimization round and the damping factor; and

determining, using a performance model associated with a set of performance parameters, an optimal sample size for a next optimization round in the plurality of optimization rounds, wherein the performance model is configured to forecast an expected performance of the next optimization round for a given sample size and damping factor based on results of the optimization round, the selected sample size and the damping factor.

Assignments (2)
CHANGE OF NAME Recorded Oct 2, 2017
From: GOOGLE INC.
To: GOOGLE LLC
Reel/Frame 044334/0466 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 11, 2014
From: SZEGEDY, CHRISTIAN
To: GOOGLE INC.
Reel/Frame 033717/0819 →