Google has begun using a machine learning approach to learn from user interactions with mobile devices.
Currently under testing in the Gboard on Android keyboard, Federated Learning lets smartphones collaboratively pick up a shared prediction model while keeping training data on the device. This way, the need to do machine learning is decoupled from the need to store the data in the cloud.
[ Jump into Microsoft’s drag-and-drop machine learning studio: Get started with Azure Machine Learning. | The InfoWorld review roundup: AWS, Microsoft, Databricks, Google, HPE, and IBM machine learning in the cloud. ]
Federated Learning provides for smarter models, less power consumption, lower latency, and ensured privacy, Google research scientists said. The model on the phone can help power experiences personalized by how users interact with the device.
With the testing now underway, when Gboard shows a suggested query, the smartphone locally stores information about the current context and whether the user clicked the suggestion. Federated Learning then processes that history on-device to suggest improvements to the next iteration of Gboard’s query suggestion model.
“[Federated Learning] works like this: your device downloads the current model, improves it by learning from data on your phone, and then summarizes the changes as a small focused update,” scientists Brendan McMahan and Daniel Ramage said. “Only this update to the model is sent to the cloud, using encrypted communication, where it is immediately averaged with other user updates to improve the shared model.”
With Federated Learning, the data is distributed across millions of devices in an uneven fashion. Bandwidth and latency restrictions motivated Google’s Federated Averaging Algorithm, which can train deep networks using from 10 to 100 times less communication compared to a naively federated version of the Stochastic Gradient Descent, which typically runs on a large data set that’s partitioned across cloud-based servers.
On-device training with Federated Learning uses a miniature version of Google’s TensorFlow library for machine intelligence. “Careful scheduling ensures training happens only when the device is idle, plugged in, and on a free wireless connection, so there’s no impact on the phone’s performance,” the scientists said.