Predictive model training management
First Claim
1. A computer-implemented method comprising:
- receiving training data for predictive modeling;
setting an ultimate time by which each of a plurality of processes executing training functions to generate respective trained predictive models is to be completed;
executing the plurality of processes simultaneously in parallel to generate the trained predictive models using the training data;
determining, after executing each of the plurality of processes for an initial time that is earlier than the ultimate time, a respective convergence status of each of the plurality of processes, wherein the convergence status indicates a likelihood that the process will converge, and based on the determination, identifying one or more processes that are not likely to converge, terminating processes that are not likely to converge, and allowing the remaining processes to continue executing;
after the ultimate time has been reached, terminating processes that have not yet converged and generating an effectiveness score for each of a plurality of trained predictive models that were generated by the remaining processes, wherein the effectiveness score for a particular trained predictive model represents an estimation of the effectiveness of the particular trained predictive model;
storing the plurality of trained predictive models in a repository of trained predictive models;
receiving input data and a prediction request;
selecting, for use in servicing the prediction request, a first trained predictive model from among the plurality of trained predictive models based on their respective effectiveness scores;
providing the input data to the first trained predictive model; and
receiving a predictive output from the first trained predictive model.
2 Assignments
0 Petitions
Accused Products
Abstract
Methods, systems, and apparatus, including computer programs encoded on one or more computer storage devices, for receiving training data for predictive modeling and executing multiple processes simultaneously to generate multiple trained predictive models using the training data and training functions. After executing the processes for an initial runtime, a convergence status of each process is determined that indicates a likelihood that the training function being executed will converge on the training data. Based on the determination, training functions are identified that are not likely to converge and processes that are executing these training functions are terminated. After an ultimate runtime has expired, processes that are still executing training functions that have not yet converged are terminated. An effectiveness score is generated for each of the trained predictive models that were successfully generated and a trained predictive model is selected based on the effectiveness scores.
91 Citations
27 Claims
-
1. A computer-implemented method comprising:
-
receiving training data for predictive modeling; setting an ultimate time by which each of a plurality of processes executing training functions to generate respective trained predictive models is to be completed; executing the plurality of processes simultaneously in parallel to generate the trained predictive models using the training data; determining, after executing each of the plurality of processes for an initial time that is earlier than the ultimate time, a respective convergence status of each of the plurality of processes, wherein the convergence status indicates a likelihood that the process will converge, and based on the determination, identifying one or more processes that are not likely to converge, terminating processes that are not likely to converge, and allowing the remaining processes to continue executing; after the ultimate time has been reached, terminating processes that have not yet converged and generating an effectiveness score for each of a plurality of trained predictive models that were generated by the remaining processes, wherein the effectiveness score for a particular trained predictive model represents an estimation of the effectiveness of the particular trained predictive model; storing the plurality of trained predictive models in a repository of trained predictive models; receiving input data and a prediction request; selecting, for use in servicing the prediction request, a first trained predictive model from among the plurality of trained predictive models based on their respective effectiveness scores; providing the input data to the first trained predictive model; and receiving a predictive output from the first trained predictive model. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. A computer-implemented system comprising:
-
one or more computers; one or more data storage devices coupled to the one or more computers, storing; a repository of training functions, and instructions that, when executed by the one or more computers, cause the one or more computers to perform operations comprising; receiving training data for predictive modeling; setting an ultimate time by which each of a plurality of processes executing training functions obtained from the repository of training functions to generate respective trained predictive models is to be completed; executing the plurality of processes simultaneously in parallel to generate the trained predictive models using the training data; determining, after executing each of the plurality of processes for an initial time that is earlier than the ultimate time, a respective convergence status of each of the plurality of processes, wherein the convergence status indicates a likelihood that the process will converge, and based on the determination, identifying one or more processes that are not likely to converge, terminating processes that are not likely to converge, and allowing the remaining processes to continue executing; after the ultimate time has been reached, terminating processes that have not yet converged, and generating an effectiveness score for each of a plurality of trained predictive models that were generated by the remaining processes, wherein the effectiveness score for a particular trained predictive model represents an estimation of the effectiveness of the particular trained predictive model; storing the plurality of trained predictive models in a repository of trained predictive models; receiving input data and a prediction request; selecting, for use in servicing the prediction request, a first trained predictive model from among the plurality of trained predictive models based on their respective effectiveness scores; providing the input data to the first trained predictive model; and receiving a predictive output from the first trained predictive model. - View Dependent Claims (11, 12, 13, 14, 15, 16, 17, 18)
-
-
19. A computer-readable storage device encoded with a computer program product, the computer program product comprising instructions that when executed on one or more computers cause the one or more computers to perform operations implementing a predictive model training system, the operations comprising:
-
receiving training data for predictive modeling; setting an ultimate time by which each of a plurality of processes executing training functions to generate respective trained predictive models is to be completed; executing the plurality of processes simultaneously in parallel to generate the trained predictive models using the training data; determining, after executing each of the plurality of processes for an initial time that is earlier than the ultimate time, a respective convergence status of each of the plurality of processes, wherein the convergence status indicates a likelihood that the process will converge, and based on the determination identifying one or more processes that are not likely to converge, terminating processes that are not likely to converge, and allowing the remaining processes to continue executing; after the ultimate time has been reached, terminating processes that have not yet converged, and generating an effectiveness score for each of a plurality of trained predictive models that were generated by the remaining processes, wherein the effectiveness score for a particular trained predictive model represents an estimation of the effectiveness of the particular trained predictive model; storing the plurality of trained predictive models in a repository of trained predictive models; receiving input data and a prediction request; selecting, for use in servicing the prediction request, a first trained predictive model from among the plurality of trained predictive models based on their respective effectiveness scores; providing the input data to the first trained predictive model; and receiving a predictive output from the first trained predictive model. - View Dependent Claims (20, 21, 22, 23, 24, 25, 26, 27)
-
Specification