IP Library Granted Patent US 12,361,095
Granted Patent B2
US 12,361,095 · App. 17/991,274 · Granted Jul 15, 2025

Detecting suitability of machine learning models for datasets

Inventors: Sindhu Ghanta (San Mateo, CA); Bharath Ramsundar (Fremont, CA); Drew Roselli (Woodinville, WA); Nisha Talagala (Saratoga, CA); Vinay Sridhar (San Jose, CA); Swaminathan Sundararaman (San Jose, CA); Lior Amar (Sunnyvale, CA); Lior Khermosh (Palo Alto, CA); Sriram Subramanian (Dallas, TX)
Assignee: DataRobot, Inc.
G06F18/217G06F17/18G06F18/2155G06F18/2193G06N5/04G06N20/00
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,361,095
App. No.
17/991,274
Granted
Jul 15, 2025
Kind
B2
Abstract

Apparatuses, systems, program products, and method are disclosed for detecting suitability of machine learning models for datasets. An apparatus includes a training evaluation module configured to calculate a first statistical data signature for a training data set of a machine learning system using one or more predefined statistical algorithms. An apparatus includes an inference evaluation module configured to calculate a second statistical data signature for an inference data set of a machine learning system using one or more predefined statistical algorithms. An apparatus includes a score module configured to calculate a suitability score describing the suitability of a training data set to an inference data set as a function of a first and a second statistical data signature. An apparatus includes an action module configured to perform an action related to a machine learning system in response to a suitability score satisfying an unsuitability threshold.

Claims (49)

1. A system comprising:

a memory device; and

one or more processors configured to execute instructions stored in the memory device to cause the system to perform operations including:

generating, by the one or more processors based on one or more statistical models, a first signature including a first score based on a distribution of values of one or more features of a training data set, the training data set provided as input to train a first model using machine learning;

generating, by the one or more processors based on the one or more statistical models, a second signature including a second score based on a distribution of values of one or more features of an inference data set, the inference data set provided as input to the first model trained based on the training data set using machine learning;

generating, by the one or more processors, a score indicating a suitability between the training data set and the inference data set based on the first score of the first signature and the second score of the second signature;

in response to a determination that the suitability score satisfies a threshold indicating unsuitability of the first model trained using the training data set for making predictions based on the inference data set, generating, by the one or more processors, a message an alert, message, or notification including an indication that the first model trained using the training data set is unsuitable for the inference data set and a recommendation regarding remedial action, and providing the message to a user via a computer network and/or a display device; and

in response to receiving user input indicating approval of the remedial action, replacing the first model with a second machine learning model,

wherein the distribution of values of the one or more features of the inference data set corresponds to a probability distribution of values of the one or more features of the inference data set.

2. The system of claim 1 , wherein the operations further include generating the suitability score on an ongoing basis during processing using machine learning.

3. The system of claim 1 , the suitability score indicating accuracy or predictive performance of the first model.

4. The system of claim 1 , one or more of the training data set or the inference data set comprising feature data sets free of labels.

5. The system of claim 1 , wherein the operations further include generating the first score before analyzing the inference data set.

6. The system of claim 1 , the distribution of values of the one or more features of the training data set and the distribution of values of the one or more features of the inference data set each based on a data structure corresponding to a forest of trees.

7. The system of claim 1 , wherein at least one feature of the one or more features of the training data set includes image data, string data, text data, or graph data, and at least one feature of the one or more features of the inference data set includes image data, string data, text data, or graph data.

8. The system of claim 1 , wherein the first model comprises one or more learning layers of a deep learning system, the training data set comprises data output from a learning layer of the deep learning system preceding the one or more learning layers of the first model during training of the first model, and the inference data set comprises data output from the learning layer of the deep learning system during use of the first model.

9. The system of claim 1 , wherein the remedial action comprises (i) retraining the first model on a second training data set, (ii) replacing the first model with the second machine learning model, or (iii) generating the second machine learning model.

10. The system of claim 9 , wherein generating the second machine learning model comprises performing a hyper-parameter search to choose values of one or more hyper-parameters for a machine learning algorithm and training the second machine learning model using the machine learning algorithm.

11. The system of claim 1 , wherein the remedial action comprises:

determining, based on a policy, that user approval is required to replace the first model with another machine learning model.

12. The system of claim 1 , wherein the probability distribution of values of the one or more features of the inference data set is based on an assignment of the values of the one or more features of the inference data set to a plurality of bins.

13. A method comprising:

performing, by one or more processors, operations including:

generating, by the one or more processors based on one or more statistical models, a first signature including a first score based on a distribution of values of one or more features of a training data set, the training data set provided as input to train a first model using machine learning;

generating, by the one or more processors based on the one or more statistical models, a second signature including a second score based on a distribution of values of one or more features of an inference data set, the inference data set provided as input to the first model trained based on the training data set using machine learning;

generating by the one or more processors a score indicating a suitability between the training data set and the inference data set based on the first score of the first signature and the second score of the second signature;

in response to a determination that the suitability score satisfies a threshold indicating unsuitability of the first model trained using the training data set for making predictions based on the inference data set, generating by the one or more processors a message including an indication that the first model trained using the training data set is unsuitable for the inference data set and a recommendation regarding remedial action, and providing the message to a user via a computer network and/or a display device; and

in response to receiving user input indicating approval of the remedial action, replacing the first model with a second machine learning model,

wherein the distribution of values of the one or more features of the inference data set corresponds to a probability distribution of values of the one or more features of the inference data set.

14. The method of claim 13 , further comprising: generating the suitability score on an ongoing basis during processing using machine learning.

15. The method of claim 13 , the suitability score indicating accuracy or predictive performance of the first model.

16. The method of claim 13 , one or more of the training data set or the inference data set comprising feature data sets free of labels.

17. The method of claim 13 , further comprising: generating the first score before analyzing the inference data set.

18. The method of claim 13 , the distribution of values of the one or more features of the training data set and the distribution of values of the one or more features of the inference data set each based on a data structure corresponding to a forest of trees.

19. The method of claim 13 , wherein at least one feature of the one or more features of the training data set includes image data, string data, text data, or graph data, and at least one feature of the one or more features of the inference data set includes image data, string data, text data, or graph data.

20. The method of claim 13 , wherein the first model comprises one or more learning layers of a deep learning system, the training data set comprises data output from a learning layer of the deep learning system preceding the one or more learning layers of the first model during training of the first model, and the inference data set comprises data output from the learning layer of the deep learning system during use of the first model.

21. The method of claim 13 , wherein the remedial action comprises (i) retraining the first model on a second training data set, (ii) replacing the first model with the second machine learning model, or (iii) generating the second machine learning model.

22. The method of claim 21 , wherein generating the second machine learning model comprises performing a hyper-parameter search to choose values of one or more hyper-parameters for a machine learning algorithm and training the second machine learning model using the machine learning algorithm.

23. The method of claim 13 , wherein the remedial action comprises:

determining, based on a policy, that user approval is required to replace the model with another machine learning model.

24. The method of claim 13 , wherein the probability distribution of values of the one or more features of the inference data set is based on an assignment of the values of the one or more features of the inference data set to a plurality of bins.

25. A non-transitory computer readable medium including one or more instructions stored thereon and executable by one or more processors to perform operations including:

generating, by the one or more processors and based on one or more statistical models, a first signature including a first score based on a distribution of values of one or more features of a training data set, the training data set provided as input to train a first model using machine learning;

generating, by the one or more processors and based on the one or more statistical models, a second signature including a second score based on a distribution of values of one or more features of an inference data set provided as input to the first model trained based on the training data set, the inference data set using machine learning;

generating, by the one or more processors, a score indicating a suitability between the training data set and the inference data set based on the first score of the first signature and the second score of the second signature; and

in response to a determination that the suitability score satisfies a threshold indicating unsuitability of the first model trained using the training data set for making predictions based on the inference data set, generating, by the one or more processors, a message including an indication that the first model trained using the training data set is unsuitable for the inference data set and a recommendation regarding remedial action, and providing the message to a user via a computer network and/or a display device; and

in response to receiving user input indicating approval of the remedial action, replacing the first model with a second machine learning model,

wherein the distribution of values of the one or more features of the inference data set corresponds to a probability distribution of values of the one or more features of the inference data set.

26. The non-transitory computer readable medium of claim 25 , wherein the operations further include generating the suitability score on an ongoing basis during processing using machine learning.

Assignments (4)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 2, 2025
From: GHANTA, SINDU; ROSELLI, DREW; TALAGALA, NISHA; SRIDHAR, VINAY; SUNDARARAMAN, SWAMINATHAN; AMAR, LIOR; KHERMOSH, LIOR; RAMSUNDAR, BHARATH; SUBRAMANIAN, SRIRAM
To: PARALLEL MACHINES, INC.
Reel/Frame 071282/0466 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 2, 2025
From: PARALLEL MACHINES, INC.; PARALLEL MACHINES LTD.
To: DATAROBOT, INC.
Reel/Frame 071282/0704 →
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 →
Continuity (2)
Continuation 16001904 · Jun 6, 2018
Related Publication 20230161843A1 · May 25, 2023
References Cited (74)
US 20060136205A1 · Song · 2006 [cited by examiner]
US 20130103713A1 · Woodruff · 2013 [cited by applicant]
US 20150157274A1 · Ghassemzadeh · 2015 [cited by examiner]
US 20150339572A1 · Achin · 2015 [cited by applicant]
US 20160267525A1 · Lin · 2016 [cited by examiner]
US 20160300144A1 · Santhanam · 2016 [cited by examiner]
US 20160314123A1 · Ramachandran · 2016 [cited by examiner]
US 20160358088A1 · Lemmer et al. · 2016 [cited by applicant]
US 20170149813A1 · Wright · 2017 [cited by examiner]
US 20170161640A1 · Shamir · 2017 [cited by examiner]
US 20170236060A1 · Ignatyev · 2017 [cited by applicant]
US 20170300814A1 · Shaked · 2017 [cited by applicant]
US 20170372232A1 · Maughan · 2017 [cited by examiner]
US 20180114142A1 · Mueller · 2018 [cited by applicant]
US 20180181901A1 · Babcock · 2018 [cited by examiner]
US 20180307576A1 · Debnath · 2018 [cited by applicant]
US 20180365557A1 · Kobayashi · 2018 [cited by applicant]
US 20190007508A1 · Xu · 2019 [cited by examiner]
US 20190043380A1 · Clarke, IV · 2019 [cited by applicant]
US 20190087821A1 · Jia · 2019 [cited by applicant]
US 20190188602A1 · Kwant et al. · 2019 [cited by applicant]
US 20190354895A1 · Vasudevan · 2019 [cited by applicant]
US 20190377984A1 · Ghanta · 2019 [cited by applicant]
US 20200034665A1 · Ghanta · 2020 [cited by applicant]
US 20200082296A1 · Fly · 2020 [cited by applicant]
US 20200151619A1 · Mopur · 2020 [cited by applicant]
US 20200272915A1 · Tata · 2020 [cited by applicant]
US 20200311616A1 · Rajkumar et al. · 2020 [cited by applicant]
US 20210133632A1 · Elprin · 2021 [cited by applicant]
US 20210224696A1 · Nasr-Azadani · 2021 [cited by applicant]
US 20210390455A1 · Schierz · 2021 [cited by applicant]
US 20230196101A1 · Ghanta · 2023 [cited by applicant]
US 20240394595A1 · Schierz · 2024 [cited by applicant]
EP 3101599A2 · 2016 [cited by applicant]
JP 2005081228A · 2005 [cited by applicant]
JP 2017520068A · 2017 [cited by applicant]
JP 2017228068A · 2017 [cited by applicant]
JP 2019159538A · 2019 [cited by applicant]
JP 2019204458A · 2019 [cited by applicant]
WO 2016152053A1 · 2016 [cited by applicant]
WO WO2019180778A1 · 2019 [cited by applicant]
Membership Inference Attacks Against Machine Learning Models. Author: Shokri, Reza, et. al., Publication info: Proceedings—IEEE Symposium on Security and Privacy : 3-18. Institute of Electrical and Electronics Engineers… [cited by examiner]
Privacy-preserving personal model training. Author: Servia-Rodriguez, Sandra, et. al., Publication info: Proceedings—ACM/IEEE International Conference on Internet of Things Design and Implementation, IoTDI 2018 : 153-16… [cited by examiner]
Neural Networks for Astronomical Data Analysis and Bayesian Inference. Author: Graff, Philip, et al., Publication info: 2013 IEEE 13th International Conference on Data Mining Workshops (ICDM) : 16-23;lix+596. IEEE Compu… [cited by examiner]
Examination Report on EP Appl. Ser. No. 19733619.1 dated Feb. 15, 2023 (6 pages). [cited by applicant]
International Preliminary Report on Patentability on PCT Appl. Ser. No. PCT/US2019/035853 dated Dec. 8, 2020 (7 pages). [cited by applicant]
International Search Report and Written Opinion on PCT Appl. Ser. No. PCT/US2019/035853 dated Sep. 20, 2019 (9 pages). [cited by applicant]
Non-Final Office Action on U.S. Appl. No. 16/001,904 dated Jun. 3, 2022 (26 pages). [cited by applicant]
Office Action on JP Appl. Ser. No. 2021-518048 dated Jun. 20, 2023 (10 pages). [cited by applicant]
U.S. Appl. No. 16/001,904, filed Jun. 6, 2018, Ghanta et al. [cited by applicant]
U.S. Appl. No. 16/049,647, filed Jul. 30, 2018, Ghanta et al. [cited by applicant]
U.S. Appl. No. 17/988,725, filed Nov. 16, 2022, Ghanta et al. [cited by applicant]
U.S. Appl. No. 17/344,252, filed Jun. 10, 2021, Schierz et al. [cited by applicant]
U.S. Appl. No. 18/582,380, filed Feb. 20, 2024, Schierz et al. [cited by applicant]
Baier et al., “Handling Concept Drifts in Regression Problems—the Error Intersection Approach,” Jan. 2020, In Proceedings of 15th International Conference on Wirtschaftsinformatik, 15 Pages (Year: 2020). [cited by applicant]
Bi, Jinbo et al., “Regression Error Characteristic Curves”, Proceedings of the 20th International Conference on Machine Learning, 2003, 8 pages. [cited by applicant]
Final Office Action from U.S. Appl. No. 17/344,252, dated Feb. 11, 2022, 24 pp. [cited by applicant]
Final Office Action from U.S. Appl. No. 17/344,252, dated Mar. 9, 2023, 24 pp. [cited by applicant]
Final Office Action from U.S. Appl. No. 17/344,252, dated Oct. 20, 2023, 31 pp. [cited by applicant]
International Preliminary Report on Patentability on PCT Appl. Ser. No. PCT/US2019/044250 dated Feb. 2, 2021 (9 pages). [cited by applicant]
International Preliminary Report on Patentability on PCT Appl. Ser. No. PCT/US2021/036767 dated Dec. 22, 2022 (9 pages). [cited by applicant]
International Search Report & Written Opinion on PCT Appl. Ser. No. PCT/US2019/044250 dated Dec. 6, 2019 (11 pages). [cited by applicant]
International Search Report and Written Opinion on PCT Appl. Ser. No. PCT/US2021/036767 dated Sep. 21, 2021 (18 pages). [cited by applicant]
Non-final Office Action from U.S. Appl. No. 16/049,647, dated Jun. 6, 2022, 32 pp. [cited by applicant]
Non-final Office Action from U.S. Appl. No. 17/344,252, dated Jul. 17, 2023, 24 pp. [cited by applicant]
Non-final Office Action from U.S. Appl. No. 17/344,252, dated Oct. 13, 2022, 29 pp. [cited by applicant]
Non-final Office Action from U.S. Appl. No. 17/344,252, dated Oct. 29, 2021, 22 pp. [cited by applicant]
Non-final Office Action from U.S. Appl. No. 17/988,725, dated Sep. 29, 2023, 26 pp. [cited by applicant]
Office Action from EP application No. 19752816.9, dated Aug. 1, 2023, 4 pp. [cited by applicant]
Office Action from JP application No. 2021-505276, dated Jul. 21, 2023, 4 pp. [cited by applicant]
Webb et al., “Analyzing concept drift and shift from sample data”, Data Mining and Knowledge Discovery (2018) 32: 1179-1199 (Year: 2018). [cited by applicant]
Wikipedia, “Confusion matrix”, https://en.wikipedia.org/wiki/Confusion_matrix, Retrieved Jul. 10, 2018. [cited by applicant]
Written Opinion and Invitation to Respond on SG Appl. Ser. No. 11202100975P dated Oct. 24, 2022 (8 pages). [cited by applicant]
Office Action in corresponding Korean Patent Application No. 10-2021-7000062, mailed May 22, 2025 (12 Pages). [cited by applicant]