IP Library Granted Patent US 12,699,896
Granted Patent B2
US 12,699,896 · App. 17/744,284 · Granted Aug 4, 2026

Automated and adaptive design and training of neural networks

Inventors: Zachary Albert Mayer (Boston, MA); Jason McGhee (Boston, MA); Jesse Bannon (Boston, MA); Joshua Matthew Weiner (Boston, MA)
Assignee: DataRobot, Inc.
G06N3/08G06F17/18G06N3/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 12,699,896
App. No.
17/744,284
Filed
May 13, 2022
Granted
Aug 4, 2026
Kind
B2
Art Unit
2123
USPC
706/20
Abstract

Systems and methods are described for developing and using neural network models. An example method of training a neural network includes: oscillating a learning rate while performing a preliminary training of a neural network; determining, based on the preliminary training, a number of training epochs to perform for a subsequent training session, and training the neural network using the determined number of training epochs. The systems and methods can be used to build neural network models that efficiently and accurately handle heterogeneous data.

Claims (48)

1 . A system, comprising:

one or more processors; and

at least one computer-readable medium having stored thereon executable instructions that, when executed by the one or more processors, cause the one or more processors to perform operations including:

obtaining an initial schedule of a plurality of hyperparameters of a machine learning algorithm, the initial schedule including an initial number of training iterations of a machine learning algorithm and indicating, for each training iteration in the initial number of training iterations, values of the plurality of hyperparameters during the respective training iteration, wherein the plurality of hyperparameters include a learning rate and a momentum coefficient;

adaptively training a machine learning model via application of the machine learning algorithm to the machine learning model and a training data set, wherein adaptively training the machine learning model includes:

performing a plurality of sets of training iterations of the machine learning algorithm, including, for each set of training iterations, (i) varying the values of the plurality of hyperparameters of the machine learning algorithm across the training iterations within the respective set of training iterations, wherein the varying values are based in part on the values indicated by the initial schedule, and (ii) determining an accuracy of the machine learning model corresponding to the respective set of training iterations;

determining, based on a rate of change in the determined accuracy of the machine learning model across two or more of the sets of training iterations, an adapted number of training iterations;

generating an adapted schedule of the plurality of hyperparameters based on the initial schedule and the adapted number of training iterations, the adapted schedule including the adapted number of training iterations and indicating, for each training iteration in the adapted number of training iterations, values of the plurality of hyperparameters during the respective training iteration, wherein the learning rate has a single peak throughout the adapted number of training iterations; and

performing the adapted number of training iterations of the machine learning algorithm in accordance with the adapted schedule of the plurality of hyperparameters of the machine learning algorithm.

2 . The system of claim 1 , wherein performing a training iteration of a set of training of iterations of the plurality of sets of training iterations comprises training the machine learning model on a subset of the training data set corresponding to the training iteration.

3 . The system of claim 1 , wherein one or more first sets of training iterations in the plurality of sets of training iterations correspond, respectively, to a warm up phase and a general training phase of the initial schedule.

4 . The system of claim 1 , wherein varying the values of the plurality of hyperparameters across the training iterations within the respective set of training iterations includes:

increasing and decreasing values of the learning rate across the training iterations within the respective set of training iterations such that the learning rate peaks two or more times across the training iterations.

5 . The system of claim 3 , wherein a second set of training iterations of the plurality of sets of training iterations corresponds to a warm down phase of the initial schedule.

6 . The system of claim 1 , wherein determining the adapted number of training iterations based on the rate of change in the determined accuracy of the machine learning model across the two or more sets of training iterations comprises:

determining that a change in the determined accuracy of the machine learning model across the two or more sets of the sets of training iterations is less than a threshold value, and

calculating the adapted number of training iterations based on a total number of training iterations in the two or more sets of training iterations and in any of the sets of training iterations performed prior to the two or more sets of training iterations.

7 . The system of claim 1 , wherein varying the values of the plurality of hyperparameters of the machine learning algorithm across the training iterations within the respective set of training iterations comprises varying values of a learning rate between a maximum value of the learning rate and a minimum value of the learning rate indicated in the initial schedule.

8 . The system of claim 1 , wherein generating the adapted schedule of the plurality of hyperparameters based on the initial schedule and the adapted number of training iterations comprises stretching or compressing the initial schedule based on a difference between the adapted number of training iterations and the initial number of training iterations.

9 . The system of claim 1 , wherein the operations further include:

providing, for presentation via a user interface, a graph of the adapted schedule indicating the values of the learning rate across the adapted number of training iterations, wherein the learning rate has the single peak throughout the adapted number of training iterations.

10 . The system of claim 1 , wherein operations further include:

prior to performing the adapted number of training iterations of the machine learning algorithm, updating one or more values of a first hyperparameter of the plurality of hyperparameters of the adapted schedule based on input received via a user interface.

11 . A method, comprising:

obtaining, by a data processing system comprising one or more processors coupled with memory, an initial schedule of hyperparameters of a machine learning algorithm, the initial schedule including an initial number of training iterations of a machine learning algorithm and indicating, for each training iteration in the initial number of training iterations, values of the plurality of hyperparameters during the respective training iteration, wherein the plurality of hyperparameters include a learning rate and a momentum coefficient;

adaptively training, by the data processing system, a machine learning model via application of the machine learning algorithm to the machine learning model and a training data set, wherein adaptively training the machine learning model includes:

performing a plurality of sets of training iterations of the machine learning algorithm, including, for each set of training iterations, (i) varying the values of the plurality of hyperparameters of the machine learning algorithm across the training iterations within the respective set of training iterations, wherein the varying values are based in part on the values indicated by the initial schedule, and (ii) determining an accuracy of the machine learning model corresponding to the respective set of training iterations;

determining based on a rate of change in the determined accuracy of the machine learning model across two or more of the sets of training iterations, an adapted number of training iterations;

generating an adapted schedule of the plurality of hyperparameters based on the initial schedule and the adapted number of training iterations, the adapted schedule including the adapted number of training iterations and indicating, for each training iteration in the adapted number of training iterations, values of the plurality of hyperparameters during the respective training iteration, wherein the learning rate has a single peak throughout the adapted number of training iterations; and

performing the adapted number of training iterations of the machine learning algorithm in accordance with the adapted schedule of the plurality of hyperparameters of the machine learning algorithm.

12 . The method of claim 11 , wherein performing a training iteration of a set of training of iterations of the plurality of sets of training iterations comprises training the machine learning model on a subset of the training data set corresponding to the training iteration.

13 . The method of claim 11 , wherein one or more first sets of training iterations in the plurality of sets of training iterations correspond, respectively, to a warm up phase and a general training phase of the initial schedule.

14 . The method of claim 11 , wherein varying the values of the plurality of hyperparameters across the training iterations within the respective set of training iterations includes:

increasing and decreasing values of the learning rate across the training iterations within the respective set of training iterations such that the learning rate peaks two or more times across the training iterations.

15 . The method of claim 13 , wherein a second set of training iterations of the plurality of sets of training iterations corresponds to a warm down phase of the initial schedule.

16 . The method of claim 11 , wherein determining the adapted number of training iterations based on the rate of change in the determined accuracy of the machine learning model across the two or more sets of training iterations comprises:

determining that a change in the determined accuracy of the machine learning model across the two or more sets of the sets of training iterations is less than a threshold value, and

calculating the adapted number of training iterations based on a total number of training iterations in the two or more sets of training iterations and in any of the sets of training iterations performed prior to the two or more sets of training iterations.

17 . The method of claim 11 , wherein varying the values of the plurality of hyperparameters of the machine learning algorithm across the training iterations within the respective set of training iterations comprises varying values of a learning rate between a maximum value of the learning rate and a minimum value of the learning rate indicated in the initial schedule.

18 . The method of claim 11 , wherein generating the adapted schedule of the plurality of hyperparameters based on the initial schedule and the adapted number of training iterations comprises stretching or compressing the initial schedule based on a difference between the adapted number of training iterations and the initial number of training iterations.

19 . A non-transitory computer-readable medium storing processor-executable instructions that, when executed by one or more processors, cause the one or more processors to perform operations including:

obtaining an initial schedule of a plurality of hyperparameters of a machine learning algorithm, the initial schedule including an initial number of training iterations of a machine learning algorithm and indicating, for each training iteration in the initial number of training iterations, values of the plurality of hyperparameters during the respective training iteration, wherein the plurality of hyperparameters include a learning rate and a momentum coefficient;

adaptively training a machine learning model via application of the machine learning algorithm to the machine learning model and a training data set, wherein adaptively training the machine learning model includes:

performing a plurality of sets of training iterations of the machine learning algorithm, including, for each set of training iterations, (i) varying the values of the plurality of hyperparameters of the machine learning algorithm across the training iterations within the respective set of training iterations, wherein the varying values are based in part on the values indicated by the initial schedule, and (ii) determining an accuracy of the machine learning model corresponding to the respective set of training iterations;

determining, based on a rate of change in the determined accuracy of the machine learning model across two or more of the sets of training iterations, an adapted number of training iterations;

generating an adapted schedule of the plurality of hyperparameters based on the initial schedule and the adapted number of training iterations, the adapted schedule including the adapted number of training iterations and indicating, for each training iteration in the adapted number of training iterations, values of the plurality of hyperparameters during the respective training iteration, wherein the learning rate has a single peak throughout the adapted number of training iterations; and

performing the adapted number of training iterations of the machine learning algorithm in accordance with the adapted schedule of the plurality of hyperparameters of the machine learning algorithm.

20 . The non-transitory computer-readable medium of claim 19 , wherein performing a training iteration of a set of training of iterations of the plurality of sets of training iterations comprises training the machine learning model on a subset of the training data set corresponding to the training iteration.

Assignments (3)
RELEASE OF SECURITY INTEREST Recorded Apr 7, 2025
From: CITIBANK, N.A.
To: DATAROBOT, INC.; ALGORITHMIA, INC.; DULLES RESEARCH, LLC
Reel/Frame 070750/0866 →
SECURITY INTEREST Recorded Mar 22, 2023
From: DATAROBOT, INC.; ALGORITHMIA, INC.; DULLES RESEARCH, LLC
To: CITIBANK, N.A.
Reel/Frame 063263/0926 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 23, 2022
From: MAYER, ZACHARY ALBERT; MCGHEE, JASON; BANNON, JESSE; WEINER, JOSHUA MATTHEW
To: DATAROBOT, INC.
Reel/Frame 061190/0725 →
Continuity (3)
Continuation 17198841 · Mar 11, 2021
Provisional Application 62989685 · Mar 14, 2020
Related Publication 20230004796A1 · Jan 5, 2023
References Cited (37)
US 20160224903A1 · Talathi et al. · 2016 [cited by applicant]
US 20180357543A1 · Brown et al. · 2018 [cited by applicant]
US 20190095794A1 · Lopez et al. · 2019 [cited by applicant]
US 20190236487A1 · Huang et al. · 2019 [cited by applicant]
US 20190392311A1 · Liu et al. · 2019 [cited by applicant]
US 20210174246A1 · Triplet · 2021 [cited by applicant]
US 20210190360A1 · Lee · 2021 [cited by examiner]
CN 105204333A · 2015 [cited by examiner]
EP 1192595B1 · 2005 [cited by applicant]
EP 3441912A1 · 2019 [cited by applicant]
WO WO2019035364A1 · 2019 [cited by applicant]
WO WO2019200410A1 · 2019 [cited by applicant]
International Preliminary Report on Patentability on PCT Appl. Ser. No. PCT/US2021/021882 dated Sep. 29, 2022 (9 pages). [cited by applicant]
Abadi, Martin et al., “TensorFlow: Large-Scale Machine Learning on Heterogeneous Distributed Systems,” Cornell University Computer Science: Distributed, Parallel, and Cluster Computing, 2016, 19 pages. [cited by applicant]
Bishop, Christopher M., “Neural Networks for Pattern Recognition”, Oxford University Press, 1995, 498 pages. [cited by applicant]
Brownlee, Jason, “A Gentle Introduction to Dropout for Regularizing Deep Neural Networks”, Deep Learning Performance, Dec. 3, 2018, available at https://machinelearningmastery.com/dropout-for-regularizing-deep-neural-ne… [cited by applicant]
Brownlee, Jason, “Loss and Loss Functions for Training Deep Learning Neural Networks”, Deep Learning Performance, Jan. 28, 2019, available at https://machinelearningmastery.com/loss-and-loss-functions-for-training-deep-… [cited by applicant]
Dahl, George E. et al., “Improving deep neural networks for LVCSR using rectified linear units and dropout”, 2013 IEEE International Conference on Acoustics, Speech and Signal Processing, 2013, pp. 8609-8613. [cited by applicant]
Hinton, Geoffrey E. et al., “Improving neural networks by preventing co-adaptation of feature detectors”, 2012, 18 pages. [cited by applicant]
International Search Report and Written Opinion on PCT Appl. Ser. No. PCT/US2021/021882 dated Jun. 29, 2021 (43 pages). [cited by applicant]
Ioffe, Sergey et al., “Batch Normalization: Accelerating Deep Network Training by Reducing Internal Covariate Shift”, JMLR: Workshop and Conference Proceedings, No. 32, 2015, 11 pages. [cited by applicant]
Kingma, Diederik et al., “Adam: A Method for Stochastic Optimization”, published as a conference paper at ICLR 2015, 15 pages. [cited by applicant]
Klambauer, Gunter et al., “Self-Normalizing Neural Networks”, Sep. 7, 2017, 102 pages. [cited by applicant]
Le, Quoc V et al., “On Optimization Methods for Deep Learning”, Proceedings of the 28th International Conference on Machine Learning, 2011, 8 pages. [cited by applicant]
Li, Hao et al., “Visualizing the Loss Landscape of Neural Nets”, Advances in Neural Information Processing Systems 31, 2018, 18 pages. [cited by applicant]
Loshchilov, Ilya et al., “SGDR: Stochastic Gradient Descent with Warm Restarts”, Cornell University, 2017, pp. 1-16. [cited by applicant]
Lu, Zhou et al., “The Expressive Power of Neural Networks: A View from the Width”, Neural Information Processing Systems, 2017, 21 pages. [cited by applicant]
Marcus, Gary, “Deep Learning: A Critical Appraisal”, Jan. 2, 2018, 27 pages. [cited by applicant]
Non-Final Office Action on U.S. Appl. No. 17/198,841 dated May 24, 2021 (7 pages). [cited by applicant]
Non-Final Office Action on U.S. Appl. No. 17/198,841 dated Oct. 5, 2021 (15 pages). [cited by applicant]
Notice of Allowance on U.S. Appl. No. 17/198,841 dated Jan. 21, 2022 (6 pages). [cited by applicant]
Pham, Hieu et al., “Efficient Neural Architecture Search via Parameter Sharing”, Proceedings of Machine Learning Research, vol. No. 80, 10 pages. [cited by applicant]
Smith, Leslie N. et al., “Super-Convergence: Very Fast Training of Residual Networks Using Large Learning Rates”, May 17, 2018, 18 pages. [cited by applicant]
Smith, Leslie N., “A disciplined approach to neural network hyper-parameters: Part 1—learning rate, batch size, momentum, and weigh decay”, Apr. 24, 2018, 21 pages. [cited by applicant]
So, David R. et al., “The Evolved Transformer”, Proceedings of the 36th International Conference on Machine Learning, May 17, 2019, 10 pages. [cited by applicant]
Tan, Mingxing et al., “EfficientNet: Rethinking Model Scaling for Convolutional Neural Networks” Proceedings of the 36th International Conference on Machine Learning, Sep. 11, 2020, 10 pages. [cited by applicant]
Yamada, Kazuki et al., “Adaptive Learning Rate Adjustment with Short-Term Pre-Training in Data-Parallel Deep Learning”, 2018 IEEE International Workshop on Signal Processing Systems (SiPS), 2018, pp. 100-105. [cited by applicant]