IP Library › Granted Patent US 12,450,525
Granted Patent B2
US 12,450,525 · App. 17/048,374 · Granted Oct 21, 2025

Method and system for model auto-selection using an ensemble of machine learning models

Inventors: Kanchana Padmanabhan (Toronto, CA); Brian Keng (Toronto, CA)
Assignee: Kinaxis Inc.
G06N20/20G06F18/2193G06F18/24765G06F18/285
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,450,525
App. No.
17/048,374
Granted
Oct 21, 2025
Kind
B2
Abstract

A system and method for model auto-selection for a prediction using an ensemble of machine learning models. The method includes: receiving historical data, the historical data including previous outcomes of a plurality of events associated with a plurality of data categories; training candidate machine learning models with the historical data, each candidate machine learning model trained using a respective one of the data categories; and determining an ensemble of machine learning models by determining a median prediction for combinations of candidate machine learning models and determining the combination that has the median prediction that is closest to at least one of the previous outcomes.

Claims (45)

1. A method for model auto-selection for a prediction using an ensemble of machine learning models, the method executed on at least one processing unit, the method comprising:

receiving historical data, the historical data comprising previous outcomes of a plurality of events associated with a plurality of data categories;

training candidate machine learning models with the historical data, each candidate machine learning model trained using a respective one of the data categories;

for each data category of the plurality of data categories:

obtaining a respective prediction from each of the candidate machine learning models for that respective data category;

determining a respective plurality of possible combinations of the candidate machine learning models for that respective data category;

determining, for each of the respective plurality of possible combinations of the candidate machine learning models, a median prediction that is the median of the predictions of the candidate machine learning models of that respective combination; and

determining the combination of the respective plurality of possible combinations that has the median prediction that is closest to at least one of the previous outcomes as a respective ensemble of machine learning models for that respective data category; and

outputting the respective ensemble of models for the respective data category for each of the plurality of data categories.

2. The method of claim 1 , wherein at least two of the candidate machine learning models are trained in parallel.

3. The method of claim 2 , wherein the determining of the median prediction for at least two combinations is performed in parallel.

4. The method of claim 1 , wherein the respective ensemble of models comprises three, four, or five models.

5. The method of claim 1 , wherein the candidate machine learning models comprise 25 to 50 models.

6. The method of claim 1 , wherein determining the combination that has the median prediction that is closest to at least one of the previous outcomes comprises determining the closeness by determining a weighted error measurement (WMAPE) of an error between the prediction of each combination and the respective outcome in the historical data.

7. The method of claim 5 , wherein determining the combination that has the median prediction that is closest to at least one of the previous outcomes further comprises iteratively determining median values for each of the combinations and discarding the combination of the present iteration if the respective WMAPE is not at least a predetermined amount greater than the previous iteration.

8. The method of claim 6 , wherein the predetermined amount is 0.1.

9. The method of claim 6 , wherein the predetermined amount is 0.01.

10. The method of claim 1 , further comprising receiving at least one input condition for at least one data category, feeding the input condition into the ensemble of models to generate the median prediction, and outputting the median prediction.

11. A method for model auto-selection for a prediction using an ensemble of machine learning models, the method executed on at least one processing unit, the method comprising:

receiving historical data, the historical data comprising previous outcomes of a plurality of events associated with a plurality of data categories;

training candidate machine learning models with the historical data, each candidate machine learning model trained using a respective one of the data categories;

for each data category of the plurality of data categories:

obtaining a respective prediction from each of the candidate machine learning models for that respective data category;

determining a respective plurality of possible combinations of the candidate models for that respective data category;

determining, for each of the plurality of respective possible combinations of the candidate models, a prediction based on the predictions of each of the candidate machine learning models in that respective combination; and

determining one of the plurality of possible combinations of the candidate models having a prediction that is closest to the respective previous outcomes as a respective ensemble of machine learning models for the data category; and

outputting the respective ensemble of models for the respective data category for each of the plurality of data categories.

12. A system for model auto-selection for a prediction using an ensemble of machine learning models, the system comprising one or more processors in communication with a data storage, the one or more processors configurable to execute:

a data acquisition module to receive historical data, the historical data comprising previous outcomes of a plurality of events associated with a plurality of data categories;

a training module to train candidate machine learning models with the historical data, each candidate machine learning model trained using a respective one of the data categories;

an ensemble module to determine, for each data category of the plurality of data categories, an ensemble of machine learning models for each data category by:

obtaining a respective prediction from each of the candidate machine learning models for that respective data category;

determining a respective plurality of possible combinations of the candidate machine learning models;

determining, for each of the respective plurality of possible combinations of the candidate machine learning models, a median prediction that is the median of the predictions of the candidate machine learning models of that respective combination;

and

determining the combination of the respective plurality of possible combinations that has the median prediction that is closest to at least one of the previous outcomes as a respective ensemble of machine learning models for that respective data category; and

an execution module to output the respective ensemble of models for the respective data category for each of the plurality of data categories.

13. The system of claim 12 , wherein each of the candidate machine learning models are trained in parallel on different subsets of one or more processors of the one or more processors.

14. The system of claim 13 , wherein the determining of the median prediction for at least two combinations is performed in parallel.

15. The system of claim 12 , wherein the respective ensemble of models comprises three, four, or five models.

16. The system of claim 12 , wherein the candidate machine learning models comprise 25 to 50 models.

17. The system of claim 12 , wherein determining the combination that has the median prediction that is closest to at least one of the previous outcomes comprises determining the closeness by determining a weighted error measurement (WMAPE) of an error between the prediction of each combination and the respective outcome in the historical data.

18. The system of claim 17 , wherein determining the combination that has the median prediction that is closest to at least one of the previous outcomes further comprises iteratively determining median values for each of the combinations and discarding the combination of the present iteration if the respective WMAPE is not at least a predetermined amount greater than the previous iteration.

19. The system of claim 12 , wherein the execution module further receives at least one input condition for at least one data category and outputs the median prediction after the input condition is fed into the ensemble of models to generate the median prediction.

20. The system of claim 19 , wherein outputting the ensemble of models comprises communicating the ensemble of models to a separate computing device.

Assignments (4)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 26, 2022
From: PADMANABHAN, KANCHANA; KENG, BRIAN
To: RUBIKLOUD TECHNOLOGIES INC.
Reel/Frame 060913/0952 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 13, 2022
From: RUBIKLOUD TECHNOLOGIES INC.
To: KINAXIS INC.
Reel/Frame 060175/0887 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 16, 2020
From: PADMANABHAN, KANCHANA; KENG, BRIAN
To: RUBIKLOUD TECHNOLOGIES INC.
Reel/Frame 054079/0487 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 16, 2020
From: RUBIKLOUD TECHNOLOGIES INC.
To: KINAXIS INC.
Reel/Frame 054079/0619 →
Continuity (2)
Provisional Application 62659174 · Apr 18, 2018
Related Publication 20210103858A1 · Apr 8, 2021
References Cited (8)
US 8370280B1 · Lin · 2013 [cited by examiner]
US 11182691B1 · Zhang · 2021 [cited by examiner]
US 20150379426A1 · Steele · 2015 [cited by examiner]
US 20160048766A1 · McMahon · 2016 [cited by examiner]
US 20180346151A1 · Sturlaugson · 2018 [cited by examiner]
International Search Report and The Written Opinion for PCT/CA2019/050482 mailed Jul. 8, 2019, 7 pages. [cited by applicant]
Li, K. et al.: A Novel Dynamic Weight Neural Network Ensemble Model, 2014 International Conference on Identification, Information and Knowledge in the Internet of Things, Oct. 18, 2014 (Oct. 18, 2014), pp. 22-27. [cited by applicant]
Wikipedia: Ensemble learning, Mar. 23, 2018 (Mar. 23, 2018), https:// en. wikipedia.org/w /index.php?title=Ensemble_learning&oldid=83 I 990200, retrieved on May 7, 2019 (May 7, 2017). [cited by applicant]