# US 2019/0171978 A1 · Systems and Methods for Distributed On-Device Learning with Data-Correlated Availability

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 2019/0171978 A1
- Document ID: US20190171978A1
- Status: Published application
- Kind: A1
- Application number: 15/834,001
- Filed: 2017-12-06
- Published: 2019-06-06
- Earliest claimed: 2017-12-06
- Assignees: Google Inc.
- Applicants: Google LLC
- Inventors: Keith Bonawitz
- Web page: https://patentgrep.com/patent/US20190171978A1

## CPC

- G06N 20/00: Machine learning
- G06F 16/95: Retrieval from the web
- G06N 20/20: Ensemble learning
- G06N: COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)

## Abstract

The present disclosure provides systems and methods for distributed training of machine learning models. In one example, a computer-implemented method is provided for training machine-learned models. The method includes obtaining, by one or more computing devices, a plurality of regions based at least in part on temporal availability of user devices; selecting a plurality of available user devices within a region; and providing a current version of a machine-learned model associated with the region to the plurality of selected user devices within the region. The method includes obtaining, from the plurality of selected user devices, updated machine-learned model data generated by the plurality of selected user devices through training of the current version of the machine-learned model associated with the region using data local to each of the plurality of selected user devices and generating an updated machine-learned model associated with the region based on the updated machine-learned model data.

## Claims

### Claim 1

A computer-implemented method for training machine-learned models, the method comprising:
obtaining, by one or more computing devices, a plurality of regions based at least in part on temporal availability of user devices;
selecting, by the one or more computing devices, a plurality of available user devices within a region;
providing, by the one or more computing devices, a current version of a machine-learned model associated with the region to the plurality of selected user devices within the region;
obtaining, by the one or more computing devices from the plurality of selected user devices, updated machine-learned model data generated by the plurality of selected user devices through training of the current version of the machine-learned model associated with the region using data local to each of the plurality of selected user devices; and
generating, by the one or more computing devices, an updated machine-learned model associated with the region based on the updated machine-learned model data.

### Claim 2 (depends on 1)

The computer-implemented method of claim 1, wherein obtaining, by one or more computing devices, a plurality of regions based at least in part on temporal availability of user devices further comprises generating the plurality of regions based at least in part on one or more of:
time zones,
latitude ranges,
longitude ranges,
semantic boundaries,
user population, or
diurnal availability patterns.

### Claim 3 (depends on 2)

The computer-implemented method of claim 2, wherein each region is generated such that each region comprises a user population having a similar diurnal cycle.

### Claim 4 (depends on 1)

The computer-implemented method of claim 1, further comprising associating, by the one or more computing devices, a copy of a global machine-learned model with each region wherein the machine-learned model associated with the region is trained using federated learning based on users in the region.

### Claim 5 (depends on 1)

The computer-implemented method of claim 1, further comprising:
providing, by the one or more computing devices, a regularization term to the plurality of selected user devices within the region, wherein the regularization term is added to the loss function for training of the current version of the machine-learned model associated with the region, and wherein the regularization term represents a sum of distances, measured in parameter space, of the model associated with the region from at least one model of at least one other region.

### Claim 6 (depends on 1)

The computer-implemented method of claim 1, wherein generating, by the one or more computing devices, the updated machine-learned model associated with the region based on the updated machine-learned model data further comprises performing, by the one or more computing devices, multitask learning to bias the machine-learned model associated with the region toward at least one machine-learned model associated with at least one other region.

### Claim 7 (depends on 1)

The computer-implemented method of claim 1, further comprising:
computing, by the one or more devices, a centroid of at least one model of at least one other region in parameter space; and
providing, by the one or more computing devices, the centroid to the plurality of selected user devices within the region, wherein each of the plurality of selected user devices computes a distance, measured in parameter space, of the model associated with the region from the centroid as a regularization term that is added to the loss function for training of the current version of the machine-learned model associated with the region.

### Claim 8

A computing device comprising:
one or more processors; and
one or more non-transitory computer-readable media that store instructions that, when executed by the one or more processors, cause the computing device to:
generate a plurality of regions based at least in part on temporal availability of user devices;
select a plurality of available user devices within a region;
provide a current version of a machine-learned model associated with the region to the plurality of selected user devices within the region, wherein each of the plurality of selected user devices performs training of the current version of the machine-learned model associated with the region using data local to each of the plurality of selected user devices;
obtain, from the plurality of selected user devices, updated machine-learned model data; and
generate an updated machine-learned model associated with the region based on the updated machine-learned model data.

### Claim 9 (depends on 8)

The computing device of claim 8, wherein generating a plurality of regions based at least in part on temporal availability of user devices further comprises generating the plurality of regions based at least in part on one or more of:
time zones,
latitude ranges,
longitude ranges,
semantic boundaries,
user population, or
diurnal availability patterns.

### Claim 10 (depends on 9)

The computing device of claim 9, wherein each region is generated such that each region comprises a user population having a similar diurnal cycle.

### Claim 11 (depends on 8)

The computing device of claim 8, further comprising instructions that, when executed by the one or more processors, cause the computing device to associate a copy of a global machine-learned model with each region wherein the machine-learned model associated with the region is trained using federated learning based on users in the region.

### Claim 12 (depends on 8)

The computing device of claim 8, further comprising instructions that, when executed by the one or more processors, cause the computing device to:
compute a regularization term which represents a sum of distances, measured in parameter space, of the model associated with the region from at least one other model of at least one other region; and
provide the regularization term to the plurality of selected user devices within the region, wherein the regularization term is added to the loss function for training of the current version of the machine-learned model associated with the region.

### Claim 13 (depends on 8)

The computing device of claim 8, wherein generating the updated machine-learned model associated with the region based on the updated machine-learned model data further comprises performing multitask learning to bias the machine-learned model associated with the region toward at least one machine-learned model associated with at least one other region.

### Claim 14 (depends on 8)

The computing device of claim 8, further comprising instructions that, when executed by the one or more processors, cause the computing device to:
compute a centroid of at least one model of at least one other region in parameter space; and
provide the centroid to the plurality of selected user devices within the region, wherein each of the plurality of selected user devices computes a distance, measured in parameter space, of the model associated with the region from the centroid as a regularization term that is added to the loss function for training of the current version of the machine-learned model associated with the region.

### Claim 15

A system comprising:
a server; and
a plurality of user devices;
the server comprising:
one or more processors; and
one or more non-transitory computer-readable media that store instructions that, when executed by the one or more processors, cause the one or more processors to perform operations, the operations comprising:
obtaining a plurality of regions based at least in part on temporal availability of user devices;
selecting, from the plurality of user devices, a plurality of available user devices within a region;
providing a current version of a machine-learned model associated with the region to the plurality of selected user devices within the region;
obtaining, from the plurality of selected user devices, updated machine-learned model data; and
generating an updated machine-learned model associated with the region based on the updated machine-learned model data;
each of the plurality of user devices comprising:
one or more processors; and
one or more non-transitory computer-readable media that store instructions that, when executed by the one or more processors, cause the one or more processors to perform operations, the operations comprising:
performing, in response to being selected from the plurality of user devices as an available user device within the region and receiving the current version of a machine-learned model associated with the region, training of the current version of the machine-learned model associated with the region using data local to the user device; and
providing, to the server, updated machine-learned model data generated through the training of the current version of the machine-learned model.

### Claim 16 (depends on 15)

The system of claim 15, wherein obtaining a plurality of regions based at least in part on temporal availability of user devices further comprises generating the plurality of regions based at least in part on one or more of:
time zones,
latitude ranges,
longitude ranges,
semantic boundaries,
user population, or
diurnal availability patterns.

### Claim 17 (depends on 16)

The system of claim 16, wherein each region is generated such that each region comprises a user population having a similar diurnal cycle.

### Claim 18 (depends on 15)

The system of claim 15, the server further comprising operations comprising:
computing a regularization term which represents a sum of distances, measured in parameter space, of the model associated with the region from at least one model of at least one other region; and
providing the regularization term to the plurality of selected user devices within the region, wherein the regularization term is added to the loss function for training of the current version of the machine-learned model associated with the region.

### Claim 19 (depends on 15)

The system of claim 15, wherein generating the updated machine-learned model associated with the region based on the updated machine-learned model data further comprises performing multitask learning to bias the machine-learned model associated with the region toward at least one machine-learned model associated with at least one other region.

### Claim 20 (depends on 15)

The system of claim 15, the server further comprising operations comprising:
computing a centroid of at least one model of at least one other region in parameter space; and
providing the centroid to the plurality of selected user devices within the region, wherein each of the plurality of selected user devices computes a distance, measured in parameter space, of the model associated with the region from the centroid as a regularization term that is added to the loss function for training of the current version of the machine-learned model associated with the region.
