Predictive model caching
First Claim
1. A computer-implemented method comprising:
- maintaining, in a secondary memory of a computing system, a collection of trained predictive models, wherein each trained predictive model in the collection has a respective identifier;
obtaining a plurality of records, wherein each record includes a time of a previously submitted predictive request and an identifier of a trained predictive model that provided a predictive output in response to the previously submitted predictive request, and wherein each of the plurality of records identifies the respective previously submitted predictive request as having been submitted by a first user;
generating a trained scheduling model using the plurality of records as training data, wherein the trained scheduling model is a trained individual scheduling model that is specific to the first user;
identifying, using the trained scheduling model, a particular set of trained predictive models that are most likely to receive predictive requests at a target time;
selecting, for storing, one or more of the trained predictive models in the particular set of trained predictive models that have a likelihood of receiving a predictive request at the target time that is higher relative to others of the trained predictive models in the particular set of trained predictive models; and
storing the selected one or more of the trained predictive models in the particular set of trained predictive models in a primary memory of the computing system, wherein the primary memory comprises volatile memory and the secondary memory comprises a non-volatile memory.
2 Assignments
0 Petitions
Accused Products
Abstract
Methods, systems, and apparatus, including computer programs encoded on one or more computer storage devices, for caching predictive models are described. Records are obtained, each record including a time of a previously submitted predictive request and an identifier of a trained predictive model. A trained scheduling model is generated using the records as training data. A set of identifiers of trained predictive models are determined from a plurality of trained predictive models that are stored in a secondary memory of a computing system. The target time is inputted to the trained scheduling model. In response, a second predictive output is received that comprises the set of identifiers. A set of trained predictive models are obtained that correspond to the set of identifiers from the secondary memory. The set of trained predictive models are stored in a primary memory of the computing system.
-
Citations
19 Claims
-
1. A computer-implemented method comprising:
-
maintaining, in a secondary memory of a computing system, a collection of trained predictive models, wherein each trained predictive model in the collection has a respective identifier; obtaining a plurality of records, wherein each record includes a time of a previously submitted predictive request and an identifier of a trained predictive model that provided a predictive output in response to the previously submitted predictive request, and wherein each of the plurality of records identifies the respective previously submitted predictive request as having been submitted by a first user; generating a trained scheduling model using the plurality of records as training data, wherein the trained scheduling model is a trained individual scheduling model that is specific to the first user; identifying, using the trained scheduling model, a particular set of trained predictive models that are most likely to receive predictive requests at a target time; selecting, for storing, one or more of the trained predictive models in the particular set of trained predictive models that have a likelihood of receiving a predictive request at the target time that is higher relative to others of the trained predictive models in the particular set of trained predictive models; and storing the selected one or more of the trained predictive models in the particular set of trained predictive models in a primary memory of the computing system, wherein the primary memory comprises volatile memory and the secondary memory comprises a non-volatile memory. - View Dependent Claims (2, 3, 12)
-
-
4. A computer storage medium encoded with computer program instructions that when executed by one or more computers cause the one or more computers to perform operations comprising:
-
maintaining, in a secondary memory of the one or more computers, a collection of trained predictive models, wherein each trained predictive model in the collection has a respective identifier; obtaining a plurality of records, wherein each record includes a time of a previously submitted predictive request and an identifier of a trained predictive model that provided a predictive output in response to the previously submitted predictive request, and wherein each of the plurality of records identifies the respective previously submitted predictive request as having been submitted by a first user; generating a trained scheduling model using the plurality of records as training data, wherein the trained scheduling model is a trained individual scheduling model that is specific to the first user; identifying, using the trained scheduling model, a particular set of trained predictive models that are most likely to receive predictive requests at a target time; selecting, for storing, one or more of the trained predictive models in the particular set of trained predictive models that have a likelihood of receiving a predictive request at the target time that is higher relative to others of the trained predictive models in the particular set of trained predictive models; and storing the selected one or more of the trained predictive models in the particular set of trained predictive models in a primary memory of the one or more computers, wherein the primary memory comprises volatile memory and the secondary memory comprises a non-volatile memory. - View Dependent Claims (5, 6, 7)
-
-
8. A system comprising:
one or more computers and one or more storage devices storing instructions that are operable, when executed by the one or more computers, to cause the one or more computers to perform operations comprising; maintaining, in a secondary memory of a computing system, a collection of trained predictive models, wherein each trained predictive model in the collection has a respective identifier; obtaining a plurality of records, wherein each record includes a time of a previously submitted predictive request and an identifier of a trained predictive model that provided a predictive output in response to the previously submitted predictive request, and wherein each of the plurality of records identifies the respective previously submitted predictive request as having been submitted by a first user; generating a trained scheduling model using the plurality of records as training data, wherein the trained scheduling model is a trained individual scheduling model that is specific to the first user; identifying, using the trained scheduling model, a particular set of trained predictive models that are most likely to receive predictive requests at a target time; selecting, for storing, one or more of the trained predictive models in the particular set of trained predictive models that have a likelihood of receiving a predictive request at the target time that is higher relative to others of the trained predictive models in the particular set of trained predictive models; and storing the selected one or more of the trained predictive models in the particular set of trained predictive models in a primary memory of the computing system, wherein the primary memory comprises volatile memory and the secondary memory comprises a non-volatile memory. - View Dependent Claims (9, 10, 11, 13, 14, 15, 16)
-
17. A computer-implemented method comprising:
-
maintaining, in a secondary memory of a computing system, a collection of trained predictive models, wherein each trained predictive model in the collection has a respective identifier; obtaining a plurality of records, wherein each record includes a time of a previously submitted predictive request and an identifier of a trained predictive model that provided a predictive output in response to the previously submitted predictive request, and wherein each of the plurality of records identifies the respective previously submitted predictive request as having been submitted from a particular geographic region; generating a trained scheduling model using the plurality of records as training data, wherein the trained scheduling model is specific to the particular geographic region; identifying, using the trained scheduling model, a particular set of trained predictive models that are most likely to receive predictive requests at a target time; obtaining, from the secondary memory, prior to the target time, the particular set of trained predictive models that are most likely to receive predictive requests at the target time; selecting, for storing, one or more of the trained predictive models in the particular set of trained predictive models that have a likelihood of receiving a predictive request at the target time that is higher relative to others of the trained predictive models in the particular set of trained predictive models; and storing the selected one or more of the trained predictive models in the particular set of trained predictive models in a primary memory of the computing system, wherein the primary memory comprises volatile memory and the secondary memory comprises a non-volatile memory.
-
-
18. A computer storage medium encoded with computer program instructions that when executed by one or more computers cause the one or more computers to perform operations comprising:
-
maintaining, in a secondary memory of the one or more computers, a collection of trained predictive models, wherein each trained predictive model in the collection has a respective identifier; obtaining a plurality of records, wherein each record includes a time of a previously submitted predictive request and an identifier of a trained predictive model that provided a predictive output in response to the previously submitted predictive request, and wherein each of the plurality of records identifies the respective previously submitted predictive request as having been submitted from a particular geographic region; generating a trained scheduling model using the plurality of records as training data, wherein the trained scheduling model is specific to the particular geographic region; identifying, using the trained scheduling model, a particular set of trained predictive models that are most likely to receive predictive requests at a target time; obtaining, from the second memory, prior to the target time, the particular set of trained predictive models that are most likely to receive predictive requests at the target time; selecting, for storing, one or more of the trained predictive models in the particular set of trained predictive models that have a likelihood of receiving a predictive request at the target time that is higher relative to others of the trained predictive models in the particular set of trained predictive models; and storing the selected one or more of the trained predictive models in the particular set of trained predictive models in a primary memory of the one or more computers, wherein the primary memory comprises volatile memory and the secondary memory comprises a non-volatile memory.
-
-
19. A system comprising:
one or more computers and one or more storage devices storing instructions that are operable, when executed by the one or more computers, to cause the one or more computers to perform operations comprising; maintaining, in a secondary memory of a computing system, a collection of trained predictive models, wherein each trained predictive model in the collection has a respective identifier; obtaining a plurality of records, wherein each record includes a time of a previously submitted predictive request and an identifier of a trained predictive model that provided a predictive output in response to the previously submitted predictive request, and wherein each of the plurality of records identifies the respective previously submitted predictive request as having been submitted from a particular geographic region; generating a trained scheduling model using the plurality of records as training data, wherein the trained scheduling model is specific to the particular geographic region; identifying, using the trained scheduling model, a particular set of trained predictive models that are most likely to receive predictive requests at a target time; obtaining, from the secondary memory, prior to the target time, the particular set of trained predictive models that are most likely to receive predictive requests at a target time; selecting, for storing, one or more of the trained predictive models in the particular set of trained predictive models that have a likelihood of receiving a predictive request at the target time that is higher relative to others of the trained predictive models in the particular set of trained predictive models; and storing the selected one or more of the trained predictive models in the particular set of trained predictive models in a primary memory of the computing system, wherein the primary memory comprises volatile memory and the secondary memory comprises a non-volatile memory.
Specification