Federated Learning ist ein dezentraler Ansatz zum Trainieren von maschinellen Lern-Modellen (ML). Jeder Knoten in einem verteilten Netzwerk schult ein globales Modell, wobei ein zentraler Server Knotenaktualisierungen aggregiert, um das globale Modell zu verbessern.
Modelle der künstlichen Intelligenz (KI) benötigen riesige Datenmengen. Diese Datensätze werden in der Regel an einem einzigen Ort für das Modelltraining zentralisiert. Das bietet die Möglichkeit, dass alle in den Datensätzen enthaltenen personenbezogenen Daten während der Übertragung oder Speicherung offengelegt werden.
Föderiertes Lernen trägt dazu bei, diese Bedenken auszuräumen, da sensible Informationen auf dem Knoten verbleiben und der Datenschutz gewahrt bleibt. Es ermöglicht auch kollaboratives Lernen, wobei verschiedene Geräte oder Server zur Verfeinerung von KI-Modellen beitragen.
Föderiertes Lernen umfasst 4 Hauptphasen:
● Initialisierung
● Schulung vor Ort
● Globale Aggregation
● Iteration
Föderiertes Lernen beginnt mit der Initialisierung eines globalen maschinellen Lernmodells auf einem zentralen Server. Dieses Modell ist die Grundlage, auf der der föderierte Lernprozess beginnt.
Der zentrale Server verteilt das globale Modell an verbundene Client-Knoten, bei denen es sich um andere Server oder Edge-Geräte wie Smartphones und Internet der Dinge (IoT) handeln kann. Es leitet auch relevante Informationen weiter, einschließlich Konfigurationsvariablen wie Hyperparameter und die Anzahl der Epochen oder kompletten Durchgänge durch die Trainingsdaten.
Nach Erhalt des globalen Modells und aller notwendigen Details fährt jeder Client-Knoten mit dem Training fort. Der Trainingsprozess ähnelt jedem Neuronalen Netzwerk, wobei die Client-Knoten das Modell nur mit ihren lokalen Daten trainieren.
Wenn sie die Anzahl der Epochen abgeschlossen haben, übermitteln die Client-Knoten die aktualisierten Modellparameter oder Gradienten an den zentralen Server - es werden keine vollständig trainierten lokalen Modelle oder Rohdaten zurückgesendet.
Der zentrale Server aggregiert alle Aktualisierungen des Clientknotens. Es gibt verschiedene Formen der Aggregation, aber eine gängige Methode ist die föderierte Mittelwertbildung, bei der der gewichtete Durchschnitt aller Aktualisierungen berechnet wird. Diese kombinierten Aktualisierungen fließen dann in das globale Modell ein.
Der zentrale Server verteilt das neue globale Modell erneut an verbundene Client-Knoten, und der föderierte Lernprozess wird wiederholt, bis das Modell die vollständige Konvergenz erreicht oder vollständig trainiert ist.
Föderiertes Lernen kann je nach Struktur der Datensätze oder Art der Knoten variieren. Sie werden in der Regel in diese categories eingeteilt:
● Geräteübergreifend
● Siloübergreifend
● Horizontal
● Senkrecht
Beim geräteübergreifenden föderierten Lernen werden Geräte mit flüchtiger Konnektivität und begrenzten Rechenressourcen verwendet, wie z. B. Mobiltelefone und IoT-Geräte. Diese Art des föderierten Lernens muss unzuverlässige Netzwerkverbindungen berücksichtigen, und da Client-Knoten nur kleine Datensätze verarbeiten können, sind in der Regel viele Geräte für das lokale Training erforderlich.1
E-Commerce-Unternehmen können beispielsweise eine Empfehlungsmaschine mit Benutzerdaten über mehrere Geräte hinweg schulen, um verstärkt personalisierte Produktempfehlungen zu liefern.1
Im Gegensatz zum geräteübergreifenden Verbundlernen umfasst Cross-Silo eine begrenzte Anzahl von Servern oder Rechenzentren mit stabiler Konnektivität und Ressourcen, die leistungsstark genug sind, um riesige Datenmengen zu speichern und zu verarbeiten. Client-Knoten werden als Silos behandelt, in denen personenbezogene Daten gespeichert sind, und diese Daten dürfen das System nicht verlassen oder aus Datenschutzgründen extern geteilt werden.1
Siloübergreifendes, föderiertes Lernen kann in Branchen wie Finanz und Gesundheitswesen wertvoll sein. So kann beispielsweise ein Konsortium von Krankenhäusern ein gemeinsames Modell mit ihren eigenen Patientendaten schulen, um die Diagnose oder Vorhersage bestimmter Krankheiten zu verbessern. In ähnlicher Weise kann ein Zusammenschluss von Banken einen gemeinsamen Algorithmus für maschinelles Lernen anhand ihrer eigenen Transaktionsdatensätze trainieren, um die Betrugserkennung zu verbessern.1
Beim horizontalen föderierten Lernen teilen die Datensätze des Clientknotens die gleichen Funktionen oder die gleiche Struktur, aber unterschiedliche Stichproben. So können Kliniken beispielsweise ein gemeinsames Analysemodell schulen, da jedes Modell die gleichen Variablen für ihre klinischen Studiendaten, aber unterschiedliche Werte für die an den Studien beteiligten Patienten hat.
Im Gegensatz dazu umfasst vertikales föderiertes Lernen Client-Knoten-Datensätze, die dieselben Stichproben teilen, aber eine andere Struktur oder andere Funktionen aufweisen. Beispielsweise könnten ein Einzelhändler und eine Bank eine Partnerschaft eingehen, um ihren Kunden stärker personalisierte Angebote zu unterbreiten. Außerdem könnten sie eine gemeinsame Empfehlungsmaschine schulen, da sie möglicherweise über dieselben Kundendaten, aber unterschiedliche Kauf- und Finanzinformationen verfügen.
Der dezentrale Aufbau des föderierten Lernens bietet diese entscheidenden Vorteile:
● Effizienz
● Verbesserter Datenschutz
● Verbesserte Compliance
Durch föderiertes Lernen entfällt die Notwendigkeit, auf große Datensätze zuzugreifen oder diese zu übertragen. Dies führt zu einer geringeren Latenz und einer Reduzierung der erforderlichen Bandbreite für das Training von maschinellen Lernmodellen.
Die datenschutzfreundliche Architektur von föderierten Lernsystemen bedeutet, dass sensible Daten nie ein Gerät verlassen. Dies trägt dazu bei, das Risiko von Cyberangriffen oder Datenschutzverletzungen zu minimieren.
Die meisten föderierten Lernsysteme implementieren auch kryptografische Techniken wie differentiellen Datenschutz und Secure Multiparty Computation (SMPC), um den Datenschutz zu verbessern.
Der differenzielle Datenschutz fügt den Modellaktualisierungen vor der Übermittlung an den zentralen Server Rauschen hinzu, während SMPC es dem zentralen Server ermöglicht, sichere Aggregationsberechnungen an verschlüsselten Modellaktualisierungen durchzuführen. Diese Methoden erschweren das Reverse Engineering oder unterscheiden, welcher Client-Knoten ein Update beigetragen hat, und erhöhen so die Datensicherheit.
Da die Daten lokal gespeichert und verarbeitet werden, kann Federated Learning Unternehmen dabei helfen, die Datenschutzbestimmungen einzuhalten. Compliance ist für Sektoren wie das Finanz- und Gesundheitswesen, die mit privaten Daten umgehen, von entscheidender Bedeutung.
Föderiertes Lernen bedeutet einen Wandel beim Training von KI-Modellen, bringt aber auch Einschränkungen mit sich. Hier sind einige Herausforderungen im Zusammenhang mit föderierten Lernverfahren (Federated Learning):
● Böswillige Angriffe
● Übergreifende Kommunikation
● Heterogenität
Föderiertes Lernen ist anfällig für Datenvergiftungs-Angriffe, bei denen Bedrohungsakteure während des lokalen Trainings bösartige Daten einschleusen oder Modellaktualisierungen für die Übertragung verändern, um das zentrale Modell zu kompromittieren oder zu beschädigen.
Anomalieerkennung, gegnerische Schulungen, strenge Zugriffskontrollen und andere Sicherheitsmaßnahmen können zum Schutz vor diesen Angriffen beitragen.
Regelmäßiger Austausch zwischen Client-Knoten und dem zentralen Server kann zu erheblichen Engpässen führen. Um die Kommunikationseffizienz zu verbessern, sollten Sie Strategien wie die Komprimierung von Modellaktualisierungen vor der Übertragung, Quantisierung und Sparsifizierung in Betracht ziehen, um eine Teilmenge der Aktualisierungen oder nur die wichtigsten Aktualisierungen weiterzuleiten. Diese Strategien müssen gegen die damit einhergehenden Einbußen bei der Genauigkeit abgewogen werden.
Das dezentrale Design des föderierten Lernens kann die Datenvielfalt erhöhen, die dazu beitragen kann, Verzerrungen abzuschwächen. Das bedeutet aber auch, dass Daten nicht identisch verteilt sind und unausgewogen sein können. Einige Geräte verfügen möglicherweise über mehr Daten als andere, wodurch das globale Modell hin zu diesen datenintensiven Knoten verlagert wird.
Einige Möglichkeiten, diese statistische Heterogenität zu beseitigen, sind Stichprobenmethoden oder -techniken, die Variationen in der Verteilung berücksichtigen, das Clustern von Knoten mit ähnlichen Datenverteilungen während des Modelltrainings und Optimierungsalgorithmen wie FedProx, das auf heterogene Netzwerke ausgerichtet ist.
Systemheterogenität ist ebenfalls ein Problem, da die Geräte über unterschiedliche Funktionen verfügen. Adaptives lokales Training kann angewendet werden, um das Modelltraining an die Anforderungen eines Knotens anzupassen.
Föderiertes Lernen verspricht, zur Lösung realer Probleme beizutragen, wobei Unternehmen ihre Kräfte sogar über Grenzen und geografische Regionen hinweg bündeln. Hier sind einige Branchen, die von föderiertem Lernen profitieren können:
● Finanzen
● Gesundheitswesen
● Einzelhandel und Fertigung
● Stadtmanagement
Finanzinstitute können zusammenarbeiten, um die Daten für Kreditrisiko-Bewertungsmodelle zu diversifizieren und so den Zugang zu Krediten für unterversorgte Gruppen zu verbessern. Sie können föderiertes Lernen auch nutzen, um eine persönlichere Bank- und Anlageberatung anzubieten und so die Benutzererfahrung zu verbessern.
Krankenhäuser und Forschungseinrichtungen können gemeinsame Deep Learning-Modelle schulen, die bei der Wirkstoffforschung für seltene Krankheiten helfen. Föderierte Lernsysteme können auch dabei helfen, bessere Strategien zu finden und die Patientenergebnisse in unterrepräsentierten Gemeinschaften zu verbessern.
Einzelhändler können föderiertes Lernen nutzen, um Verkäufe und Bestände an mehreren Standorten zu verfolgen, ohne Kundendaten preiszugeben, sodass sie die Bestände maximieren und die Verschwendung verringern können. Gleichzeitig können Hersteller Daten aus verschiedenen Teilen der Lieferkette zusammenfassen, um die Logistik zu optimieren.
Smarte Städte können das föderierte Lernen nutzen, um Erkenntnisse von den unzähligen Geräten und Sensoren zu gewinnen, die in den Stadtgebieten verstreut sind, und gleichzeitig die Daten der Bewohner geheim zu halten. Diese Erkenntnisse können beispielsweise genutzt werden, um den Verkehr besser zu steuern oder um Umweltbedingungen wie Luft- und Wasserverschmutzung zu überwachen.
Die Implementierung von föderiertem Lernen für reale Anwendungen kann komplex sein, aber es gibt mehrere Frameworks, um Modelle auf dezentralen Daten zu schulen und Server- und Client-Workflows zu rationalisieren. Hier sind einige beliebte Frameworks für föderiertes Lernen:
● Flower
● IBM Federated Learning
● NVIDIA FLARE
● OpenFL
● TensorFlow Federated
Flower ist ein Open-Source-Framework für kollaborative KI und Data Science. Es kann verwendet werden, um verbundene KI-Systeme mit zahlreichen verbundenen Clients zu erstellen. Es ist mit den meisten Frameworks für maschinelles Lernen kompatibel und mit verschiedenen Hardwareplattformen und Betriebssystemen interoperabel.
IBM Federated Learning ist ein Framework für föderiertes Lernen in Unternehmensumgebungen. Es arbeitet mit verschiedenen Algorithmen für maschinelles Lernen, darunter Entscheidungsbäume, Naive Bayes-Klassifikatoren, neuronale Netze und Verstärkungslernen.
IBM Federated Learning verfügt außerdem über eine umfangreiche Bibliothek von Fusionsmethoden für die Kombination von Modellaktualisierungen und unterstützt verschiedene Fairness-Techniken zur Bekämpfung von KI-Bias.
NVIDIA FLARE (Federated Learning Application Runtime Environment) ist ein auf Open Source basierendes, domänenunabhängiges Software-Development-Kit für föderiertes Lernen.
Es verfügt über integrierte Trainings- und Bewertungs-Workflow, Algorithmen zur Wahrung der Privatsphäre sowie Lernalgorithmen für die föderierte Mittelwertbildung und FedProx. NVIDIA FLARE verfügt außerdem über Verwaltungstools zur Orchestrierung und Überwachung.
OpenFL ist ein Python-basiertes Open-Source-Framework für Federated Learning, das ursprünglich von Intel entwickelt wurde und jetzt der Linux Foundation untersteht. OpenFL funktioniert mit Deep Learning-Frameworks wie PyTorch und Bibliotheken für maschinelles Lernen wie TensorFlow. Zu seinen Sicherheitsfunktionen gehören differenzieller Datenschutz und die Unterstützung hardwarebasierter vertrauenswürdiger Ausführungsumgebungen.
TensorFlow Federated (TFF) ist ein von Google entwickeltes Open-Source-Framework für maschinelles Lernen auf dezentralen Daten. Die Anwendungsprogrammierschnittstellen (APIs) von TFF sind in zwei Ebenen unterteilt:
● Die API für föderiertes Lernen ist die übergeordnete Ebene, die Implementierung von föderierten Lernaufgaben wie Training oder Evaluierung unter Verwendung vorhandener Modelle für maschinelles Lernen erleichtert.
● Die Federated Core API ist die niedrige Ebene für das Erstellen neuer föderierter Lernalgorithmen.
Alle Links befinden sich außerhalb von ibm.com
1 Silos- und geräteübergreifendes föderiertes Lernen in Google Cloud, Google Cloud, 3. Juni 2024.
Trainieren, validieren, optimieren und implementieren Sie generative KI, Foundation Models und maschinelle Lernfunktionen mit IBM watsonx.ai, einem Studio der nächsten Generation für AI Builder in Unternehmen. Erstellen Sie KI-Anwendungen mit einem Bruchteil der Zeit und Daten.
Setzen Sie KI in Ihrem Unternehmen ein – mit branchenführendem Fachwissen im Bereich KI und dem Lösungsportfolio von IBM an Ihrer Seite.
Erfinden Sie kritische Workflows und Abläufe neu, indem Sie KI einsetzen, um Erfahrungen, Entscheidungsfindung in Echtzeit und den geschäftlichen Nutzen zu maximieren.