Online hyperparameter tuning in distributed machine learning
Abstract
The disclosed embodiments provide a system for performing online hyperparameter tuning in distributed machine learning. During operation, the system uses input data for a first set of versions of a statistical model for a set of entities to calculate a batch of performance metrics for the first set of versions. Next, the system applies an optimization technique to the batch to produce updates to a set of hyperparameters for the statistical model. The system then uses the updates to modulate the execution of a second set of versions of the statistical model for the set of entities. When a new entity is added to the set of entities, the system updates the set of hyperparameters with a new dimension for the new entity.
Claims
exact text as granted — not AI-modifiedWhat is claimed is:
1 . A method, comprising:
using input data for a first set of versions of a statistical model for a set of entities to calculate, by one or more computer systems, a batch of performance metrics for the first set of versions; applying, by the one or more computer systems, an optimization technique to the batch to produce updates to a set of hyperparameters for the statistical model; using the updates to modulate the execution of a second set of versions of the statistical model for the set of entities; and when a new entity is added to the set of entities, updating the set of hyperparameters with a new dimension for the new entity.
2 . The method of claim 1 , further comprising:
using the input data to produce the second set of versions of the statistical model.
3 . The method of claim 2 , wherein using the input data to produce the second set of versions of the statistical model comprises:
when a pre-specified amount of the input data is received for an entity in the set of entities, using the pre-specified amount to produce an update to a version of the statistical model for the entity.
4 . The method of claim 3 , wherein using the input data to produce the second set of versions of the statistical model further comprises:
merging, into a global version of the statistical model, the update and other updates to other versions of the statistical model for other entities in the set of entities asynchronously from generating the update and the other updates.
5 . The method of claim 1 , wherein using the input data to calculate the set of performance metrics associated with the first set of versions of the statistical model comprises:
using a set of outputs generated from a subset of the input data for a version of the statistical model and a set of labels associated with the subset of input data to calculate a performance metric for the version; and discounting contributions of the outputs to the performance metric based on a set of ages associated with the subset of the input data.
6 . The method of claim 1 , wherein applying the optimization technique to the set of performance metrics to produce the updates to the set of hyperparameters for the statistical model comprises:
using a set of particles to explore a search space for the hyperparameters; using the calculated performance metrics to update a set of average performance metrics for a set of positions of the particles; identifying, from the set of positions, a particle position with a highest average performance metric; updating the hyperparameters with values represented by the particle position; and using the average performance metrics to update positions and velocities of the particles in the search space.
7 . The method of claim 6 , wherein using the average performance metrics to update the positions and the velocities of the particles in the search space comprises:
removing a first subset of the positions with average performance metrics that fall below a threshold; replacing the first subset with the position of the particle; and for each particle in the set of particles, deflecting the particle toward a global best position for the set of particles and a historic best position for the particle.
8 . The method of claim 1 , wherein updating the set of hyperparameters with a new dimension for the new entity comprises at least one of:
updating the hyperparameters with a default value for the new dimension; and updating the new dimension with a random value.
9 . The method of claim 1 , wherein the set of hyperparameters comprises at least one of:
a regularization parameter; a clustering parameter; a convergence parameter; a feature complexity; a model training parameter; a model selection parameter; a decay parameter; a threshold; and a hyper-hyperparameter.
10 . The method of claim 1 , wherein the set of entities comprises at least one of:
a user; an advertisement; and a recommendation.
11 . An apparatus, comprising:
one or more processors; and memory storing instructions that, when executed by the one or more processors, cause the apparatus to:
use input data for a first set of versions of a statistical model for a set of entities to calculate a batch of performance metrics for the first set of versions;
apply an optimization technique to the batch to produce updates to a set of hyperparameters for the statistical model;
use the updates to modulate the execution of a second set of versions of the statistical model for the set of entities; and
when a new entity is added to the set of entities, update the set of hyperparameters with a new dimension for the new entity.
12 . The apparatus of claim 11 , wherein the memory further stores instructions that, when executed by the one or more processors, cause the apparatus to:
use the input data to produce the second set of versions of the statistical model.
13 . The apparatus of claim 12 , wherein using the input data to produce the second set of versions of the statistical model comprises:
when a pre-specified amount of the input data is received for an entity in the set of entities, using the pre-specified amount to produce an update to a version of the statistical model for the entity.
14 . The apparatus of claim 13 , wherein using the input data to produce the second set of versions of the statistical model further comprises:
merging, into a global version of the statistical model, the update and other updates to other versions of the statistical model for other entities in the set of entities asynchronously from generating the update and the other updates.
15 . The apparatus of claim 11 , wherein using the input data to calculate the set of performance metrics associated with the first set of versions of the statistical model comprises:
using a set of outputs generated from a subset of the input data for a version of the statistical model and a set of labels associated with the subset of input data to calculate a performance metric for the version; and discounting contributions of the outputs to the performance metric based on a set of ages associated with the subset of the input data.
16 . The apparatus of claim 11 , wherein applying the optimization technique to the set of performance metrics to produce the updates to the set of hyperparameters for the statistical model comprises:
using a set of particles to explore a search space for the hyperparameters; using the calculated performance metrics to update a set of average performance metrics for a set of positions of the particles; identifying, from the set of positions, a particle position with a highest average performance metric; updating the hyperparameters with values represented by the particle position; and using the average performance metrics to update positions and velocities of the particles in the search space.
17 . The apparatus of claim 16 , wherein using the average performance metrics to update the positions and the velocities of the particles in the search space comprises:
removing a first subset of the positions with average performance metrics that fall below a threshold; replacing the first subset with the position of the particle; and for each particle in the set of particles, deflecting the particle toward a global best position for the set of particles and a historic best position for the particle.
18 . The apparatus of claim 11 , wherein updating the set of hyperparameters with a new dimension for the new entity comprises at least one of:
updating the hyperparameters with a default value for the new dimension; and updating the new dimension with a random value.
19 . A system, comprising:
a merging module comprising a non-transitory computer-readable medium storing instructions that, when executed, cause the system to:
use input data for a first set of versions of a statistical model for a set of entities to calculate a batch of performance metrics for the first set of versions;
apply an optimization technique to the batch to produce updates to a set of hyperparameters for the statistical model; and
when a new entity is added to the set of entities, update the set of hyperparameters with a new dimension for the new entity; and
a training module comprising a non-transitory computer-readable medium storing instructions that, when executed, cause the system to:
use the input data to produce a second set of versions of the statistical model; and
use the updates to modulate the execution of the second set of versions.
20 . The system of claim 19 , wherein applying the optimization technique to the set of performance metrics to produce the updates to the set of hyperparameters for the statistical model comprises:
using a set of particles to explore a search space for the hyperparameters; using the calculated performance metrics to update a set of average performance metrics for a set of positions of the particles; identifying, from the set of positions, a particle position with a highest average performance metric; updating the hyperparameters with values represented by the particle position; and using the average performance metrics to update positions and velocities of the particles in the search space.Join the waitlist — get patent alerts
Track US2018285759A1 — get alerts on status changes and closely related new filings.
We store only your email — no account needed. See our privacy policy.