Imputing machine learning training data
AssigneeInternational Business Machines Corporation
InventorsA Peng Zhang, Xiao Ming Ma, Lei Gao, Jin Wang, Kai Li
Life of this patent
Estimating the term…
Abstract
Embodiments are disclosed for a method. The method includes determining a correlation list of missing value predictors. The method also includes generating a cluster model having multiple clusters. The cluster model is based on a target value and predictor values. The method further includes determining an imputed value for a missing value of a row of original training data based on a linear regression model for multiple non-missing value predictor values for the clusters.
Claims20
A computer system comprising:
- one or more computer processing circuits;
- and
- one or more computer-readable storage media storing program instructions which, when executed by the one or more computer processing circuits, are configured to cause the one or more computer processing circuits to perform actions comprising:
- executing an imputing manager configured to generate imputed training data from original training data for training a machine learning model, wherein the imputing manager generates the imputed training data by:
- determining a correlation list comprising a plurality of missing value predictors in the original training data, wherein one or more correlations represent a respective relationship between each of the plurality of missing value predictors in a plurality of missing value predictor pairs;
- sorting the correlation list by increasing value of the one or more correlations;
- generating a cluster model having a plurality of clusters, wherein the cluster model is based on a target value and a plurality of non-missing value predictor values, comprising:
- splitting one or more rows of the original training data into the plurality of clusters based on the target value for the one or more rows, wherein the target value is a classification for the one or more rows;
- determining an imputed value for a missing value of the one or more rows of the original training data based on a linear regression model for the plurality of clusters and the plurality of non-missing value predictor values, wherein the imputed value for a first missing value predictor of the plurality of missing value predictors with a lower value of the one or more correlations is imputed before a second missing value predictor of the plurality of missing value predictors with more correlation;
- updating the cluster model based on the imputed value;
- updating the linear regression model based on the plurality of non-missing value predictor values and the imputed value;
- determining a plurality of imputed values for a corresponding plurality of missing values of a plurality of rows of the original training data, based on the updated linear regression model;
- generating the imputed training data by incorporating the imputed value into the original training data;
- and
- training the machine learning model with the imputed training data generated by the imputing manager to classify the one or more rows according to the target value.
A computer-implemented method, comprising:
- executing an imputing manager configured to generate imputed training data from original training data for training a machine learning model, wherein the imputing manager generates the imputed training data by:
- determining a correlation list comprising a plurality of missing value predictors, wherein each of the plurality of missing value predictors comprise a missing value of the original training data, wherein one or more correlations represent a respective relationship between each of the plurality of missing value predictors in a plurality of missing value predictor pairs;
- sorting the correlation list by increasing value of the one or more correlations;
- generating a cluster model having a plurality of clusters, wherein the cluster model is based on a target value and a plurality of non-missing value predictor values, comprising:
- splitting one or more rows of the original training data into the plurality of clusters based on the target value for the one or more rows, wherein the target value is a classification for the one or more rows;
- determining an imputed value for a missing value of the one or more rows of the original training data based on a linear regression model for the plurality of clusters and the plurality of non-missing value predictor values, wherein the imputed value for a first missing value predictor of the plurality of missing value predictors with a lower value of the one or more correlations is imputed before a second missing value predictor of the plurality of missing value predictors with a higher value of the one or more correlations;
- updating the cluster model based on the imputed value;
- updating the linear regression model based on the plurality of non-missing value predictor values and the imputed value;
- determining a plurality of imputed values for a corresponding plurality of missing values of a plurality of rows of the original training data, based on the updated linear regression model;
- generating the imputed training data by incorporating the imputed value into the original training data;
- and
- training the machine learning model with the imputed training data generated by the imputing manager to classify the one or more rows according to the target value.
A computer program product comprising one or more computer readable storage media, and program instructions collectively stored on the one or more computer readable storage media, the program instructions comprising instructions configured to cause one or more processors to perform actions comprising:
- executing an imputing manager configured to generate imputed training data from original training data for training a machine learning model, wherein the imputing manager generates the imputed training data by:
- determining a correlation list comprising a plurality of missing value predictors, wherein each of the plurality of missing value predictors comprise a missing value of the original training data, wherein one or more correlations represent a respective relationship between each of the plurality of missing value predictors in a plurality of missing value predictor pairs;
- sorting the correlation list by increasing value of the one or more correlations;
- generating a cluster model having a plurality of clusters, wherein the cluster model is based on a target value and a plurality of non-missing value predictor values, comprising:
- splitting one or more rows of the original training data into the plurality of clusters based on the target value for the one or more rows, wherein the target value is a classification for the one or more rows;
- determining an imputed value for a missing value of the one or more rows of the original training data based on a linear regression model for the plurality of clusters and the plurality of non-missing value predictor values, wherein the imputed value for a first missing value predictor of the plurality of missing value predictors with a lower value of the one or more correlations is imputed before a second missing value predictor of the plurality of missing value predictors with a higher value of the one or more correlations;
- updating the cluster model based on the imputed value;
- updating the linear regression model based on the plurality of non-missing value predictor values and the imputed value;
- determining a plurality of imputed values for a corresponding plurality of missing values of a plurality of rows of the original training data, based on the updated linear regression model;
- generating the imputed training data by incorporating the imputed value into the original training data;
- and
- training the machine learning model with the imputed training data generated by the imputing manager to classify the one or more rows according to the target value.
Dependencies are inferred from the claim text.