IP Library Granted Patent US 12,567,004
Granted Patent B2
US 12,567,004 · App. 17/161,575 · Granted Mar 3, 2026

Method of machine learning training for data augmentation

Inventors: Wei Wang (Fremont, CA); Jingxian Liao (San Jose, CA); Zhicheng Xue (Union City, CA); Anthony Hiotong Wong Lei (San Mateo, CA)
Assignee: Intuit Inc.
G06N20/20G06F16/2246G06F16/25G06N5/04G06Q40/03G06Q30/0185H04L63/08
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,567,004
App. No.
17/161,575
Granted
Mar 3, 2026
Kind
B2
Abstract

A method including training, using accepted data having known labels, an untrained prediction model to generate a trained prediction model. The method also includes generating, using the trained prediction model, predicted labels for unknown data. The method also includes generating, using a confidence model, confidence scores for the predicted labels. The method also includes selecting, using the confidence scores, a subset of the unknown data and confident labels. The confident labels include ones of the predicted labels for the subset of the unknown data. The method also includes training, using the subset of the unknown data and the confident labels, the trained prediction model to generate an updated prediction model.

Claims (76)

1 . A method for self-training a prediction machine learning model by increasing a size of initially available training data, the method comprising:

training, using accepted data having known labels, an untrained supervised prediction model to generate a trained prediction model, wherein:

the accepted data comprises less than a predetermined amount of training data to achieve a desired accuracy of the trained prediction model,

the accepted data comprises the initially available training data, and

the untrained supervised prediction model comprises first parameters;

generating, using the trained prediction model, predicted labels for unknown data;

generating, using a confidence model, confidence scores for the predicted labels, wherein the confidence model comprises a logistic regression algorithm comprising second parameters different than the first parameters;

selecting, using the confidence scores, a subset of the unknown data and confident labels, the confident labels comprising ones of the predicted labels for the subset of the unknown data, wherein selecting further comprises:

selecting, as the confident labels, ones of the predicted labels having predicted label values that exceed a threshold value, and

selecting, as the subset of the unknown data, portions of the unknown data corresponding to the confident labels,

wherein the subset of unknown data is less than the unknown data;

training, using the accepted data, the subset of the unknown data, and the confident labels, the trained prediction model to generate an updated supervised prediction model, wherein the subset of the unknown data, the confident labels, and the accepted data together comprise augmented data that, when used to train the trained prediction model, improves an accuracy of predictions made by the updated supervised prediction model;

executing the updated supervised prediction model on remaining data to generate updated prediction labels, wherein the remaining data comprises the unknown data less the subset of the unknown data;

executing the confidence model on the remaining data to output other confidence scores for the updated predicted labels;

selecting other confident labels for a second subset of the remaining data, outside the subset of data, wherein:

the other confident labels comprise ones of the updated predicted labels for the second subset for which the other confident scores exceed a second threshold, and

the other confident labels and the second subset of the remaining data together increase the size of the initially available training data to increased training data;

training, using the second subset and the other confident labels, the updated supervised prediction model to generate a deployed prediction model, wherein the deployed prediction model is more accurate than the trained prediction model trained using the initially available training data due to the increased training data; and

deploying the deployed prediction model to an enterprise environment.

2 . The method of claim 1 further comprising:

iteratively generating the updated prediction labels, generating the confidence scores, selecting the subset of unknown data, and training the updated supervised prediction model, until a stop condition occurs.

3 . The method of claim 2 , wherein the stop condition comprises a pre-determined number of iterations.

4 . The method of claim 2 , wherein the stop condition comprises finding less than a remainder threshold number of updated confidence scores that are above the threshold value.

5 . The method of claim 1 , further comprising:

receiving live data; and

predicting, using the updated supervised prediction model, live prediction labels for the live data.

6 . The method of claim 5 , wherein the live prediction labels comprise an evaluation of credit risk for a plurality of users from whom the live data was received.

7 . The method of claim 1 , wherein the untrained supervised prediction model comprises a gradient boosted tree algorithm.

8 . A system for self-training a deployed prediction model by increasing a size of initially available training data, the system comprising:

a computer processor;

a data repository in communication with the computer processor;

a training application executable on the computer processor, wherein the training application comprises program code which, when executed, performs a computer-implemented method comprising:

training, using accepted data having known labels, an untrained supervised prediction model to generate a trained prediction model, wherein:

the accepted data comprises less than a predetermined amount of training data to achieve a desired accuracy of the trained prediction model, the accepted data comprises the initially available training data, and

the untrained supervised prediction model comprises first parameters;

generating, using the trained prediction model, predicted labels for unknown data;

generating, using a confidence model, confidence scores for the predicted labels, wherein the confidence model comprises a logistic regression algorithm comprising second parameters different than the first parameters;

selecting, using the confidence scores, a subset of the unknown data and confident labels, the confident labels comprising ones of the predicted labels for the subset of the unknown data, wherein selecting further comprises:

selecting, as the confident labels, ones of the predicted labels having predicted label values that exceed a threshold value, and

selecting, as the subset of the unknown data, portions of the unknown data corresponding to the confident labels,

wherein the subset of unknown data is less than the unknown data; and

training, using the accepted data, the subset of the unknown data, and the confident labels, the trained prediction model to generate an updated supervised prediction model, wherein the subset of the unknown data, the confident labels, and the accepted data together comprise augmented data that, when used to train the trained prediction model, improves an accuracy of predictions made by the updated supervised prediction model;

executing the updated supervised prediction model on remaining data to generate updated prediction labels, wherein the remaining data comprises the unknown data less the subset of the unknown data;

executing the confidence model on the remaining data to output other confidence scores for the updated predicted labels;

selecting other confident labels for a second subset of the remaining data, outside the subset of data, wherein:

the other confident labels comprise ones of the updated predicted labels for the second subset for which the other confident scores exceed a second threshold, and

the other confident labels and the second subset of the remaining data together increase the size of the initially available training data to increased training data;

training, using the second subset and the other confident labels, the updated supervised prediction model to generate the deployed prediction model, wherein the deployed prediction model is more accurate than the trained prediction model trained using the initially available training data due to the increased training data; and

deploying the deployed prediction model to an enterprise environment.

9 . A method comprising:

receiving live data comprising unknown labels;

generating an updated supervised prediction model by:

training, using accepted data having known labels, an untrained supervised prediction model to generate a trained prediction model, wherein:

the accepted data comprises less than a predetermined amount of training data to achieve a desired accuracy of the trained prediction model, the accepted data comprises initially available training data, and

the untrained supervised prediction model comprises first parameters;

generating, using the trained prediction model, predicted labels for unknown data;

generating, using a confidence model, confidence scores for the predicted labels, wherein the confidence model comprises a logistic regression algorithm comprising second parameters different than the first parameters;

selecting, using the confidence scores, a subset of the unknown data and confident labels, the confident labels comprising ones of the predicted labels for the subset of the unknown data, wherein selecting further comprises:

selecting, as the confident labels, ones of the predicted labels having predicted label values that exceed a threshold value, and

selecting, as the subset of the unknown data, portions of the unknown data corresponding to the confident labels,

wherein the subset of unknown data is less than the unknown data;

training, using the accepted data, the subset of the unknown data, and the confident labels, the trained prediction model to generate the updated supervised prediction model, wherein the subset of the unknown data, the confident labels, and the accepted data together comprise augmented data that, when used to train the trained prediction model, improves an accuracy of predictions made by the updated supervised prediction model;

generating a deployed supervised prediction model by increasing a size of initially available training data, wherein generating the deployed supervised prediction model further comprises:

executing the updated supervised prediction model on remaining data to generate updated prediction labels, wherein the remaining data comprises the unknown data less the subset of the unknown data;

executing the confidence model on the remaining data to output other confidence scores for the updated predicted labels;

selecting other confident labels for a second subset of the remaining data, outside the subset of data, wherein:

the other confident labels comprise ones of the updated predicted labels for the second subset for which the other confident scores exceed a second threshold, and

the other confident labels and the second subset of the remaining data together increase the size of the initially available training data to increased training data;

training, using the second subset and the other confident labels, the updated supervised prediction model to generate a deployed prediction model, wherein the deployed prediction model is more accurate than the trained prediction model trained using the initially available training data due to the increased training data;

deploying the deployed prediction model to an enterprise environment;

generating a result by inputting the live data to the deployed prediction model; and

presenting the result to a user device.

10 . The method of claim 9 wherein the live data comprises a credit application received from the user device, and wherein presenting the result comprises:

determining a credit value from the predicted labels;

granting or rejecting, automatically, the credit application when the credit value exceeds a credit threshold; and

presenting an indication of grant or reject of the credit application to the user device.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 2, 2021
From: WANG, WEI; LIAO, JINGXIAN; XUE, ZHICHENG; LEI, ANTHONY HIOTONG WONG
To: INTUIT INC.
Reel/Frame 055109/0095 →
Continuity (1)
Related Publication 20220237520A1 · Jul 28, 2022
References Cited (31)
US 20170061330A1 · Kurata · 2017 [cited by examiner]
US 20200250527A1 · Zhao · 2020 [cited by examiner]
Sohn, Kihyuk, et al. “Fixmatch: Simplifying semi-supervised learning with consistency and confidence.” (Year: 2020). [cited by examiner]
Han, Yaodong, et al. “Detection and analysis of credit card application fraud using machine learning algorithms.” (Year: 2020). [cited by examiner]
Chen, Mu-Chen, and Shih-Hsien Huang. “Credit scoring and rejected instances reassigning through evolutionary computation techniques.” (Year: 2003). [cited by examiner]
Kozodoi, Nikita, et al. “Shallow self-learning for reject inference in credit scoring.” (Year: 2020). [cited by examiner]
Bao, Wang, Ning Lianju, and Kong Yue. “Integration of unsupervised and supervised machine learning algorithms for credit risk assessment.” (Year: 2019). [cited by examiner]
Wu, Di, et al. “A highly accurate framework for self-labeled semi-supervised classification in industrial applications.” (Year: 2017). [cited by examiner]
Ouali et al., “An overview of deep semi-supervised learning.” (Year: 2020). [cited by examiner]
Xie, et al., “Self-training with noisy student improves imagenet classification.” (Year: 2020). [cited by examiner]
Yalniz, I. Zeki, et al. “Billion-scale semi-supervised learning for image classification.” (Year: 2019). [cited by examiner]
Rosenberg, Chuck, Martial Hebert, and Henry Schneiderman. “Semi-supervised self-training of object detection models.” (Year: 2005). [cited by examiner]
Zhang, et al., “Class-incremental learning via deep model consolidation.” (Year: 2020). [cited by examiner]
Amazon SageMaker, “How Hyperparameter Tuning Works”; https://docs.aws.amazon.com/sagemaker/latest/dg/automatic-model-tuning-how-it-works.html; Jan. 2021 (2 pages). [cited by applicant]
Bradley, Andrew P., “The Use of the Area Under the ROC Curve in the Evaluation of Machine Learning Algorithms”; Pattern Recognition; vol. 30, Issue 7; pp. 1145-1159; Jul. 1997 (15 pages). [cited by applicant]
Dmlc / xgboost, “[New Feature] Monotonic Constraints in Tree Construction”; https://github.com/dmlc/xgboost/issues/1514; Issue #1514; Aug. 27, 2016 (21 pages). [cited by applicant]
Hand, D.J. et al., “Can reject inference ever work?”; IMA Journal of Management Mathematics; vol. 5, Issue 1; pp. 45-55; Jan. 1, 1993 (11 pages). [cited by applicant]
Jiang, Heinrich et al., “To Trust or Not to Trust a Classifier”; Proceedings of the 32nd International Conference on Neural Information Processing Systems (NIPS'18); pp. 5546-5557; Dec. 2018 (12 pages). [cited by applicant]
Shiryayev, A. N. (Ed.), “15. On the Empirical Determination of a Distribution Law”; Selected Works of A. N. Kolmogorov: vol. II Probability Theory and Mathematical Statistics; pp. 139-146; 1992 (8 pages). [cited by applicant]
Kozodoi, Nikita et al., “Shallow Self-Learning for Reject Inference in Credit Scoring”; Joint European Conference on Machine Machine Learning and Knowledge Discovery in Databases (ECML PKDD 2019); pp. 516-532; Sep. 16-2… [cited by applicant]
Li, Zhiyong et al., “ Inferring the outcomes of rejected loans: an application of semisupervised clustering”; The Journal of the Royal Statistical Society, Series A (Statistics in Society); vol. 183, Issue 2; pp. 631-65… [cited by applicant]
Li, Zhiyong et al., “Reject inderence in credit scoring using Semi-supervised Support Vector Machines”; Expert Systems with Applications; vol. 74; pp. 105-114; May 15, 2017 (10 pages). [cited by applicant]
Lundberg, Scott M. et al., “A Unified Approach to Interpreting Model Predictions”; Proceeding of the 31st International Conference on Neural Information Processing Systems (NIPS'17); pp. 4765-4774; Dec. 2017 (10 pages). [cited by applicant]
Montrichard, Derek et al., “Reject Inference Methodologies in Credit Rish Modeling”; Proceedings of the 16th annual Southeast SAS Users Group Conference (SESUG 2008); Oct. 19-22, 2008 (10 pages). [cited by applicant]
Niculescu-Mizil, Alexandru et al., “Predicting good probabilities with supervised learning”; Proceedings of the 22nd International conference on Machine learning (ICML '05); pp. 625-632; Aug. 2005 (8 pages). [cited by applicant]
Ratner, Alexander et al., “Snorkel: Rapid Training Data Creation with Weak Supervision”; Proceedings of the VLDB Endowment; vol. 11, Issue 3; pp. 269-282; Nov. 2017 (14 pages). [cited by applicant]
Siddiqi, Naeem, “Credit Risk Scorecards: Developing and Implementing Intelligent Credit Scoring” John Wiley & Sons, Inc.; Chapter 6: Scorecard Development Process, Stage 4: Scorecard Development, Reject Inference; pp. 9… [cited by applicant]
Smirnov, N., “Table for Estimating the Goodness of Fit of Empirical Distributions”; The Annals of Mathematical Statistics; vol. 19, Issue 2; pp. 279-281; Jun. 1948 (3 pages). [cited by applicant]
Snorkel, “Programmatically Build Training Data”; https://www.snorkel.org/; 2020 (6 pages). [cited by applicant]
Trihuero, Isaac et al., “Self-labeled techniques for semi-supervised learning: taxonomy, software and empirical study”; Knowledge and Information Systems; vol. 42, Issue 2; pp. 245-284; Feb. 2015 (40 pages). [cited by applicant]
Wang, Wei et al., “Using Small Business Banking Data for Explainable Credit Risk Scoring”; Proceedings of the Thirty-Second Conference on Innovatice Applications of Artificial Intelligence (IAAI-20); vol. 34, Issue 8; p… [cited by applicant]
Cited By (1)
US 12,710,993