  Federated Learning (FL) has recently emerged as a popular solution to
distributedly train a model on user devices improving user privacy and system
scalability. Major Internet companies have deployed FL in their applications
for specific use cases (e.g., keyboard prediction or acoustic keyword trigger),
and the research community has devoted significant attention to improving
different aspects of FL (e.g., accuracy, privacy, efficiency). However, there
is still a lack of a practical system to enable easy collaborative cross-silo
FL training, in the context of mobile environments. In this work, we bridge
this gap and propose FLaME, an end-to-end system (i.e., client-side framework
and libraries, and central server) to enable intra- and inter-app training on
mobile devices with different types of IID and NonIID data distributions, in a
secure and easy to deploy fashion. Our design solves major technical challenges
such as on-device training, secure and private single and cross-app model
training, while being offered in an "as a service" model. We implement FLaME
for Android devices and experimentally evaluate its performance in-lab and
in-wild, on more than 140 users for over a month. Our results show the
feasibility and benefits of the design in a realistic mobile context and
provide several insights to the FL community on the practicality and usage of
FL in the wild.

Cryptography and Security;Distributed, Parallel, and Cluster Computing