High Performance Federated Learning Using Serverless Computing
Translated title:
Hochperformantes Föderiertes Lernen mit Serverless Computing
Abstract:
Smartphone ownership and internet usage are growing at an extraordinary rate nowadays.
In fact, more than 3 billion mobile and more than 12 billion Internet of Things (IoT) devices
such as autonomous vehicles and smart homes are used as primary computing devices for
the accomplishment of many different daily business tasks. These devices have access to
a wealth of data and, thus, provide promising opportunities for crafting machine learning
(ML) models, due to their rich data nature. Much of the data generated, and collected by the
devices, however, is private in nature, requiring special attention. Dealing with heterogeneous
and, more importantly, sensitive data, necessities careful handling as any improper usage
and data mishandling might have severe consequences, affecting millions of users worldwide.
This, however, contradicts traditional distributed ML training approaches, which require the
training data to be collected at a central place, making these inappropriate choices for privacy-sensitive domains. This gives a rise to decentralized learning techniques such as Federated
Learning (FL), a novel paradigm, which is gaining a lot of popularity in both industry and
academia recently. FL enables training on a large corpus of decentralized data, overcoming
many of the privacy-related issues by allowing devices participating in the training process
to update the parameters of a shared model locally, and send only the model updates to a
central server. Thus, the actual training data is never sent to a central server, which means
that no local record leaves the device at any point in time. As a new approach on the horizon,
FL is an active area of research and experiments. Scientists are heavily studying the FL
domain by examining and applying different techniques in the domain. Recent research
works propose the application of serverless computing for ML/DL training in the FL context,
arguing that components involved in FL can benefit from this new computing paradigm.
This work sets on top of the foundations of a framework for serverless FL. We improve and
evaluate the performance of an existing serverless system for FL training by replacing the
technology used for the parameter server. With the use of Redis and the redisAI module, we
achieve a significant performance speedup and outperform the existing parameter server
solution by orders of magnitude. We evaluate the performance of the system in a large-scale
scenario considering up to 300 clients. Moreover, in order to examine the system’s capability
of handling larger models, we increase the model size 8 times and successfully perform FL
training. In addition to that, we simplify the client as well as the FL server-side workflows
by eliminating the need for serialization of the model parameters. Lastly, we evaluate the
running times of the system with multiple replicated parameter servers and compare the
results with the existing measurements. The introduced improvements allow us achieve more
than 3 times better client-side performance, and up to 4 times better performance on the
FL server-side, once the aggregator combines the client updates. As a result of that, we are
furthermore able to reduce the costs for the use of FedLess up to 50%.
Translated abstract:
Die Zahl der Smartphone-Besitzer und der Internetnutzer wächst heutzutage rasant. Tatsächlich werden mehr als 3 Milliarden Mobilgeräte und mehr als 12 Milliarden Geräte des Internets der Dinge (IoT), wie autonome Fahrzeuge und Smart Homes, als primäre Datenverarbeitungsgeräte für die Erledigung vieler verschiedener täglicher Geschäftsaufgaben heutzutage verwendet. Diese Geräte haben Zugang zu einer Fülle von Daten und bieten daher vielversprechende Möglichkeiten für die Entwicklung von Modellen des Maschinellen Lernens (ML), da sie reich an Daten sind. Viele der von den Geräten erzeugten und gesammelten Daten sind jedoch privater Natur und bedürfen besonderer Aufmerksamkeit. Der Umgang mit heterogenen und, vor allem sensiblen Daten erfordert eine sorgfältige Handhabung, da eine unsachgemäße Nutzung und ein falscher Umgang mit den Daten schwerwiegende Folgen haben kann, von denen Millionen von Nutzern weltweit betroffen werden. Dies steht jedoch im Widerspruch zu den traditionellen verteilten ML-Trainingsansätzen, bei denen die Trainingsdaten an einem zentralen Ort gesammelt werden müssen, was für datenschutzsensible Bereiche ungeeignet ist. Dies führt zu dezentralen Lerntechniken wie dem Föderiertes Lernen (FL), ein neuartiges Paradigma, das sowohl in der Industrie als auch in der der akademischen Bereich populärer wird. FL ermöglicht das Training auf einem großen Korpus dezentraler Daten und überwindet Datenschutzproblemen, indem es den am Trainingsprozess beteiligten Geräten erlaubt, die Parameter eines gemeinsamen Modells lokal zu aktualisieren und nur die Modellaktualisierungen an einen zentralen Server zu senden. Die eigentlichen Trainingsdaten werden also nie an einen zentralen Server gesendet, was bedeutet dass kein lokaler Datensatz das Gerät zu irgendeinem Zeitpunkt verlässt. Als neuer Ansatz, der sich am Horizont abzeichnet, FL ist ein aktiver Bereich für Forschung und Experimente. Wissenschaftler befassen sich intensiv mit FL, indem sie verschiedene Techniken in diesem Bereich untersuchen und anwenden. Jüngste Forschungsarbeiten schlagen die Anwendung von serverlosem Computing für ML/DL-Training im FL-Kontext vor und argumentieren, dass die an FL beteiligten Komponenten von diesem neuen Computing-Paradigma profitieren können. Diese Arbeit baut auf den Grundlagen eines Frameworks für serverloses FL auf. Wir verbessern und bewerten die Leistung eines bestehenden serverlosen Systems für FL-Training, indem wir die für den Parameterserver verwendete Technologie ersetzen. Durch den Einsatz von Redis und dem redisAI-Modul erreichen wir eine signifikante Leistungssteigerung und übertreffen die bestehende Parameter-Server Lösung um Größenordnungen. Wir evaluieren die Leistung des Systems in einem groß angelegten Szenario mit bis zu 300 Clients. Um die Fähigkeit des Systems zur Handhabung größerer Modelle zu untersuchen, erhöhen wir die Modellgröße um das 8-fache und führen erfolgreich FL Training durch. Darüber hinaus vereinfachen wir die client- und serverseitigen FL-Workflows indem wir die Notwendigkeit der Serialisierung der Modellparameter eliminieren. Abschließend evaluieren wir die Laufzeiten des Systems mit mehreren replizierten Parameterservern und vergleichen die Ergebnisse mit den bestehenden Messungen. Die eingeführten Verbesserungen ermöglichen uns eine mehr als 3-mal bessere Leistung auf der Client-Seite und eine bis zu 4-mal bessere Leistung auf der
FL-Serverseite, sobald der Aggregator die Client-Updates kombiniert. Infolgedessen sind wir
in der Lage die Kosten für die Nutzung von FedLess um bis zu 50% senken.