IP Library Granted Patent US 12,405,975
Granted Patent B2
US 12,405,975 · App. 17/216,496 · Granted Sep 2, 2025

Method and system for constraint based hyperparameter tuning

Inventors: Mark Edward Johnson (Castle Cove, AU); Thanh Long Duong (Seabrook, AU); Vishal Vishnoi (Redwood City, CA); Balakota Srinivas Vinnakota (Sunnyvale, CA); Tuyen Quang Pham (Springvale, AU); Cong Duy Vu Hoang (Wantima South, AU)
Assignee: Oracle International Corporation
G06F16/3329G06F18/211G06F18/217G06N3/08G06N20/00H04L51/02
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,405,975
App. No.
17/216,496
Granted
Sep 2, 2025
Kind
B2
Abstract

Techniques are disclosed for tuning hyperparameters of a model. Datasets are obtained for training the model and metrics are selected for evaluating performance of the model. Each metric is assigned a weight specifying an importance to the performance of the model. A function is created that measures performance based on the weighted metrics. Hyperparameters are tuned to optimize the model performance. Tuning the hyperparameters includes: (i) training the model that is configured based on a current values for the hyperparameters; (ii) evaluating a performance of the model using the function; (iii) determining whether the model is optimized for the metrics; (iv) in response to the model not being optimized, searching for a new values for the hyperparameters, reconfiguring the model with the new values, and repeating steps (i)-(iii) using the reconfigured model; and (v) in response to the model being optimized for the metrics, providing a trained model.

Claims (62)

1. A method comprising:

obtaining one or more digital datasets for training a machine-learning model;

selecting a plurality of metrics for evaluating performance of the machine-learning model on the one or more digital datasets, each metric of the plurality of metrics being configured based on a specification set associated with the metric, and wherein each metric is configured independently of other metrics included in the plurality of metrics, wherein the plurality of metrics is selected to include at least a size of the machine-learning model, a training time of the machine-learning model, an accuracy of the machine-learning model, a stability of the machine-learning model, a regression error of the machine-learning model, and a confidence score of the machine-learning model;

assigning a first weight to each metric of the plurality of metrics, wherein the first weight specifies an importance of each metric in evaluating the performance of the machine-learning model;

creating a loss function that measures the performance of the machine-learning model based on the plurality of metrics and the first weights assigned to each of the plurality of metrics;

tuning a set of hyperparameters associated with the machine-learning model in order to obtain a minimum value of the loss function across the plurality of metrics, thereby optimizing the machine-learning model for the plurality of metrics,

wherein the tuning comprises:

(i) training the machine-learning model using the one or more digital datasets, wherein the machine-learning model is configured based on a current set of values for the set of hyperparameters, the current set of values being determined for a current iteration of the tuning;

(ii) evaluating, using the loss function, performance of the machine-learning model on the one or more digital datasets, thereby obtaining a current value of the loss function for the current iteration;

(iii) determining whether the machine-learning model is optimized for the plurality of metrics by comparing the current value of the loss function with a value of the loss function obtained in a previous iteration;

(iv) in response to the machine-learning model not being optimized for the plurality of metrics: (a) modifying the current set of values for the set of hyperparameters to generate a modified set of hyperparameters, (b) reconfiguring the machine-learning model with the modified set of hyperparameters, and (c) repeating steps (i)-(iii) using the reconfigured machine-learning model, to determine the minimum value of the loss function; and

(v) in response to the machine-learning model being optimized for the plurality of metrics, providing the machine-learning model configured with a set of optimal values of hyperparameters in an iteration determined to have the minimum value of the loss function, as a trained machine-learning model;

incorporating the trained machine-learning model in a digital assistant chatbot system (DACS) configured for a set of predetermined intents; and

based on an input utterance of a user provided to the DACS, inputting the input utterance to the trained machine-learning model, and outputting, by the trained machine-learning model, an intent for the input utterance from the set of predetermined intents.

2. The method of claim 1 , further comprising:

assigning a second weight to each digital dataset of the one or more digital datasets, wherein the second weight specifies an importance of each digital dataset in training the machine-learning model.

3. The method of claim 1 , further comprising:

establishing one or more constraints based on one or more hyperparameters of the set of hyperparameters,

wherein the machine-learning model satisfies each of the one or more constraints.

4. The method of claim 3 , wherein a first constraint of the one or more constraints corresponds to requiring a model size of the machine-learning model to be less than a threshold model size or requiring a training time of the machine-learning model to be less than a threshold time limit.

5. The method of claim 1 , wherein the machine-learning model is a neural network model, and the set of hyperparameters includes at least a number of layers of the machine-learning model, a learning rate of the machine-learning model, a number of hidden units in each layer of the machine-learning model, and a learning algorithm utilized to train the machine-learning model.

6. The method of claim 1 , wherein the loss function utilizes an asymmetric loss technique.

7. A computing device comprising:

a processor; and

a memory including instructions that, when executed with the processor, cause the computing device to, at least:

obtain one or more digital datasets for training a machine-learning model;

select a plurality of metrics for evaluating performance of the machine-learning model on the one or more digital datasets, each metric of the plurality of metrics being configured based on a specification set associated with the metric, and wherein each metric is configured independently of other metrics included in the plurality of metrics, wherein the plurality of metrics is selected to include at least a size of the machine-learning model, a training time of the machine-learning model, an accuracy of the machine-learning model, a stability of the machine-learning model, a regression error of the machine-learning model, and a confidence score of the machine-learning model;

assign a first weight to each metric of the plurality of metrics, wherein the first weight specifies an importance of each metric in evaluating the performance of the machine-learning model;

create a loss function that measures the performance of the machine-learning model based on the plurality of metrics and the first weights assigned to each of the plurality of metrics;

tune a set of hyperparameters associated with the machine-learning model in order to obtain a minimum value of the loss function across the plurality of metrics, thereby optimizing the machine-learning model for the plurality of metrics,

wherein tuning the set of hyperparameters includes:

(i) training the machine-learning model using the one or more digital datasets, wherein the machine-learning model is configured based on a current set of values for the set of hyperparameters, the current set of values being determined for a current iteration of the tuning;

(ii) evaluating, using the loss function, performance of the machine-learning model on the one or more digital datasets, thereby obtaining a current value of the loss function for the current iteration;

(iii) determining whether the machine-learning model is optimized for the plurality of metrics by comparing the current value of the loss function with a value of the loss function obtained in a previous iteration;

(iv) in response to the machine-learning model not being optimized for the plurality of metrics: (a) modifying the current set of values for the set of hyperparameters to generate a modified set of hyperparameters, (b) reconfiguring the machine-learning model with the modified set of hyperparameters, and (c) repeating steps (i)-(iii) using the reconfigured machine-learning model, to determine the minimum value of the loss function; and

(v) in response to the machine-learning model being optimized for the plurality of metrics, providing the machine-learning model configured with a set of optimal values of hyperparameters in an iteration determined to have the minimum value of the loss function, as a trained machine-learning model;

incorporate the trained machine-learning model in a digital assistant chatbot system (DACS) configured for a set of predetermined intents; and

based on an input utterance of a user provided to the DACS, provide, as an input, the input utterance to the trained machine-learning model, and obtain, as an output of the trained machine-learning model, an intent for the input utterance from the set of predetermined intents.

8. The computing device of claim 7 , wherein the processor is further configured to assign a second weight to each digital dataset of the one or more digital datasets, wherein the second weight specifies an importance of each digital dataset in training the machine-learning model.

9. The computing device of claim 7 , wherein the processor is further configured to establish one or more constraints based on one or more hyperparameters of the set of hyperparameters, and

wherein the trained machine-learning model satisfies each of the one or more constraints.

10. The computing device of claim 9 , wherein a first constraint of the one or more constraints corresponds to requiring a model size of the machine-learning model to be less than a threshold model size or requiring a training time of the machine-learning model to be less than a threshold time limit.

11. The computing device of claim 7 , wherein the machine-learning model is a neural network model, and the set of hyperparameters includes at least a number of layers of the machine-learning model, a learning rate of the machine-learning model, a number of hidden units in each layer of the machine-learning model, and a learning algorithm utilized to train the machine-learning model.

12. A non-transitory computer readable medium storing specific computer-executable instructions that, when executed by a processor, cause a computer system to at least:

obtain one or more digital datasets for training a machine-learning model;

select a plurality of metrics for evaluating performance of the machine-learning model on the one or more digital datasets, each metric of the plurality of metrics being configured based on a specification set associated with the metric, and wherein each metric is configured independently of other metrics included in the plurality of metrics, wherein the plurality of metrics is selected to include at least a size of the machine-learning model, a training time of the machine-learning model, an accuracy of the machine-learning model, a stability of the machine-learning model, a regression error of the machine-learning model, and a confidence score of the machine-learning model;

assign a first weight to each metric of the plurality of metrics, wherein the first weight specifies an importance of each metric in evaluating the performance of the machine-learning model;

create a loss function that measures the performance of the machine-learning model based on the plurality of metrics and the first weights assigned to each of the plurality of metrics;

tune a set of hyperparameters associated with the machine-learning model in order to obtain a minimum value of the loss function across the plurality of metrics, thereby optimizing the machine-learning model for the plurality of metrics,

wherein tuning the set of hyperparameters includes:

(i) training the machine-learning model using the one or more digital datasets, wherein the machine-learning model is configured based on a current set of values for the set of hyperparameters, the current set of values being determined for a current iteration of the tuning;

(ii) evaluating, using the loss function, performance of the machine-learning model on the one or more digital datasets, thereby obtaining a current value of the loss function for the current iteration;

(iii) determining whether the machine-learning model is optimized for the plurality of metrics by comparing the current value of the loss function with a value of the loss function obtained in a previous iteration;

(iv) in response to the machine-learning model not being optimized for the plurality of metrics: (a) modifying the current set of values for the set of hyperparameters to generate a modified set of hyperparameters, (b) reconfiguring the machine-learning model with the modified set of hyperparameters, and (c) repeating steps (i)-(iii) using the reconfigured machine-learning model, to determine the minimum value of the loss function; and

(v) in response to the machine-learning model being optimized for the plurality of metrics, providing the machine-learning model configured with a set of optimal values of hyperparameters in an iteration determined to have the minimum value of the loss function, as a trained machine-learning model;

incorporate the trained machine-learning model in a digital assistant chatbot system (DACS) configured for a set of predetermined intents; and

based on an input utterance of a user provided to the DACS, provide, as an input, the input utterance to the trained machine-learning model, and obtain, as an output of the trained machine-learning, an intent for the input utterance from the set of predetermined intents.

13. The non-transitory computer readable medium of claim 12 , wherein the computer system is further configured to assign a second weight to each digital dataset of the one or more digital datasets, wherein the second weight specifies an importance of each digital dataset in training the machine-learning model.

14. The non-transitory computer readable medium of claim 12 , wherein the computer system is further configured to establish one or more constraints based on one or more hyperparameters of the set of hyperparameters, and

wherein the trained machine-learning model satisfies each of the one or more constraints.

15. The non-transitory computer readable medium of claim 14 , wherein a first constraint of the one or more constraints corresponds to requiring a model size of the machine-learning model to be less than a threshold model size or requiring a training time of the machine-learning model to be less than a threshold time limit.

16. The non-transitory computer readable medium of claim 12 , wherein the machine-learning model is a neural network model, and the set of hyperparameters includes at least a number of layers of the machine-learning model, a learning rate of the machine-learning model, a number of hidden units in each layer of the machine-learning model, and a learning algorithm utilized to train the machine-learning model.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 29, 2021
From: JOHNSON, MARK EDWARD; DUONG, THANH LONG; VISHNOI, VISHAL; VINNAKOTA, BALAKOTA SRINIVAS; PHAM, TUYEN QUANG; HOANG, CONG DUY VU
To: ORACLE INTERNATIONAL CORPORATION
Reel/Frame 055759/0190 →
Continuity (3)
Provisional Application 63119577 · Nov 30, 2020
Provisional Application 63002159 · Mar 30, 2020
Related Publication 20210304003A1 · Sep 30, 2021
References Cited (40)
US 10379995B1 · Walters · 2019 [cited by examiner]
US 10572823B1 · Feinman · 2020 [cited by examiner]
US 10860629B1 · Gangadharaiah et al. · 2020 [cited by applicant]
US 20140344193A1 · Bilenko et al. · 2014 [cited by applicant]
US 20150206065A1 · Abu-Mostafa et al. · 2015 [cited by applicant]
US 20160132787A1 · Drevo et al. · 2016 [cited by applicant]
US 20170337478A1 · Sarikaya et al. · 2017 [cited by applicant]
US 20180336493A1 · Hayes et al. · 2018 [cited by applicant]
US 20190019108A1 · Eads · 2019 [cited by applicant]
US 20190042887A1 · Nguyen et al. · 2019 [cited by applicant]
US 20190156249A1 · Nakata · 2019 [cited by applicant]
US 20190236487A1 · Huang et al. · 2019 [cited by applicant]
US 20200065705A1 · Cheng et al. · 2020 [cited by applicant]
US 20200302225A1 · Dutta et al. · 2020 [cited by applicant]
US 20200372307A1 · Arun · 2020 [cited by examiner]
US 20200389438A1 · Chakraborty · 2020 [cited by applicant]
US 20210295191A1 · Bui et al. · 2021 [cited by applicant]
US 20210304056A1 · Qi · 2021 [cited by examiner]
US 20220414341A1 · Zotto et al. · 2022 [cited by applicant]
EP 3620996 · 2020 [cited by applicant]
JP 2016042322A · 2016 [cited by applicant]
JP 2017500637A · 2017 [cited by applicant]
JP 2019096285A · 2019 [cited by applicant]
EP21721259.6 , “Summons to Attend Oral Proceedings”, Oct. 23, 2023, 9 pages. [cited by applicant]
EP21721669.6 , “Office Action”, Oct. 20, 2023, 9 pages. [cited by applicant]
PCT/US2021/024950 , “International Preliminary Report on Patentability”, Oct. 13, 2022, 9 pages. [cited by applicant]
PCT/US2021/024953 , “International Preliminary Report on Patentability”, Oct. 13, 2022, 9 pages. [cited by applicant]
International Application No. PCT/US2021/024950, International Search Report and Written Opinion mailed on Jun. 18, 2021, 13 pages. [cited by applicant]
International Application No. PCT/US2021/024953, International Search Report and Written Opinion mailed on Jun. 22, 2021, 13 pages. [cited by applicant]
Japanese Application No. JP2022-559647, Office Action, Mailed Jan. 21, 2025, 8 pages with English translation. [cited by applicant]
Okura et al., “Automatic Classification Of Distant Galaxy Lyman-alpha Emitter Observation Data Using Subaru Telescope Hyper Suprime-cam Using Convolutional Neural Network”, 11th Forum on Data Engineering and Information… [cited by applicant]
U.S. Appl. No. 17/216,498, Non-Final Office Action mailed on Jul. 25, 2024, 44 pages. [cited by applicant]
Tamaazousti et al., Learning More Universal Representations for Transfer-learning, Available Online at: https://arxiv.org/pdf/1712.09708, Sep. 3, 2018, 15 pages. [cited by applicant]
Zhang et al., DeepRec: a Deep Neural Network Approach to Recommendation With Item Embedding and Weighted Loss Function, Information Sciences, vol. 470, Jan. 2019, pp. 121-140. [cited by applicant]
“Kentaro the Optimization Technology of the Hyper-parameter in Others and Support Vector Revolution”, Japan, Institute of Electronics, Information and Communication Engineers, vol. 102, No. 508, Jan. 16, 2003, pp. 7-12. [cited by applicant]
Japanese Application No. JP2022-559629, Office Action, Mailed On Feb. 4, 2025, 6 pages with English translation. [cited by applicant]
U.S. Appl. No. 17/216,498, Final Office Action, Mailed On May 14, 2025, 34 pages. [cited by applicant]
Andonie , “Hyperparameter Optimization in Learning Systems”, Journal of Membrane Computing, vol. 1, Oct. 16, 2019, pp. 279-291. [cited by applicant]
Indian Application No. IN202247049903, “First Examination Report”, mailed Jun. 3, 2025, 6 pages. [cited by applicant]
Indian Application No. IN202247050693, “First Examination Report”, mailed Jun. 3, 2025, 7 pages. [cited by applicant]