Methods, apparatus, systems, and computer program products are provided for providing distributed online learning for personal predictive models that preserves user privacy. An example method comprises receiving model updates based at least in part on synchronization metadata. The model update comprises one or more received model parameter updates. The received model parameter updates correspond to one or more model parameters. The model updates are associated with a particular apparatus. The example method further comprises determining a decay factor based at least in part on the synchronization metadata; applying the decay factor to the one or more received model parameter updates; and updating the one or more model parameters based on the decayed model parameter updates.
Please help me write a proper abstract based on the patent claims. CLAIM: 1. A method comprising: receiving model updates based at least in part on synchronization metadata, wherein (a) the model update comprises one or more received model parameter updates, (b) the received model parameter updates correspond to one or more model parameters, and (c) the model updates are associated with a particular apparatus; determining a decay factor based at least in part on the synchronization metadata; applying the decay factor to the one or more received model parameter updates; and updating the one or more model parameters based on the decayed model parameter updates. 2. A method according to claim 1, further comprising: collecting one or more data points, the one or more data points based at least in part on measurements made by one or more sensors; determining one or more determined model parameter updates based at least in part on the one or more data points; and updating the one or more model parameters based at least in part on the one or determined model updates. 3. A method according to claim 2, wherein determining the one or more determined model parameter updates is based at least in part on a loss function, a regularization term, a learning rate function, or a combination thereof. 4. A method according to claim 2, wherein the one or more model parameters are updated by an element wise addition of one or more determined model parameter updates. 5. A method according to claim 1 wherein the synchronization metadata comprises information indicating a number of model update iterations completed by the particular apparatus since the last model update associated with the particular apparatus was received. 6. A method according to claim 1, wherein the decay factor applied to the received model parameter updates decreases monotonically as the number of model update iterations completed by the particular apparatus since received model updates associated with the particular apparatus were last received increases. 7. A method according to claim 1, wherein the decay factor is parameterized by a decay constant. 8. A method according to claim 1, further comprising, providing one or more determined model updates to the particular apparatus, the one or more determined model updates selected based on synchronization metadata indicating a model update iteration number for which a determined model update was last provided to the particular apparatus. 9. A method according to claim 8, further comprising storing synchronization metadata indicating a most recent model update iteration number for which a determined model update has been provided to the particular apparatus, the most recent model update iteration number being stored in association with an identifier configured to identify the particular apparatus. 10. A method according to claim 1, wherein the one or more model parameters comprise one or more parameters of a predictive model. 11. A method according to claim 1, wherein the one or more model parameters comprise a default prediction. 12. An apparatus comprising at least one processor and at least one memory storing computer program code, the at least one memory and the computer program code configured to, with the processor, cause the apparatus to at least: receive model updates based at least in part on synchronization metadata, wherein (a) the model update comprises one or more received model parameter updates, (b) the received model parameter updates correspond to one or more model parameters, and (c) the model updates are associated with a particular apparatus; determine a decay factor based at least in part on the synchronization metadata; apply the decay factor to the one or more received model parameter updates; and update the one or more model parameters based on the decayed model parameter updates. 13. An apparatus according to claim 12, wherein the at least one memory and the computer program code are further configured to, with the processor, cause the apparatus to at least: collect one or more data points, the one or more data points based at least in part on measurements made by one or more sensors; determine one or more determined model parameter updates based at least in part on the one or more data points; and update the one or more model parameters based at least in part on the one or determined model updates. 14. An apparatus according to claim 13, wherein the one or more model parameters are updated by an element wise addition of one or more determined model parameter updates. 15. An apparatus according to claim 13, wherein determining the one or more determined model parameter updates is based at least in part on a loss function, a regularization term, a learning rate function, or a combination thereof. 16. An apparatus according to claim 12, wherein the synchronization metadata comprises information indicating a number of model update iterations completed by the particular apparatus since the last model update associated with the particular apparatus was received. 17. An apparatus according to claim 12, wherein the decay factor applied to the received model parameter updates decreases monotonically as the number of model update iterations completed by the particular apparatus since received model updates associated with the particular apparatus were last received increases. 18. An apparatus according to claim 12, wherein the at least one memory and the computer program code are further configured to, with the processor, cause the apparatus to at least provide one or more determined model updates to the particular apparatus, the one or more determined model updates selected based on synchronization metadata indicating a model update iteration number for which a determined model update was last provided to the particular apparatus. 19. An apparatus according to claim 18, wherein the at least one memory and the computer program code are further configured to, with the processor, cause the apparatus to at least store synchronization metadata indicating a most recent model update iteration number for which a determined model update has been provided to the particular apparatus, the most recent model update iteration number being stored in association with an identifier configured to identify the particular apparatus. 20. A computer program product comprising at least one non-transitory computer-readable storage medium having computer-executable program code instructions stored therein, the computer-executable program code instructions comprising program code instructions configured to: receive model updates based at least in part on synchronization metadata, wherein (a) the model update comprises one or more received model parameter updates, (b) the received model parameter updates correspond to one or more model parameters, and (c) the model updates are associated with a particular apparatus; determine a decay factor based at least in part on the synchronization metadata; apply the decay factor to the one or more received model parameter updates; and update the one or more model parameters based on the decayed model parameter updates.