AI 101
Was ist föderiertes Lernen?
Was ist föderiertes Lernen?
Die traditionelle Methode zum Trainieren von KI-Modellen umfasst die Einrichtung von Servern, auf denen Modelle anhand von Daten trainiert werden, hĂ€ufig mithilfe einer Cloud-basierten Computerplattform. In den letzten Jahren ist jedoch eine alternative Form der Modellerstellung entstanden, das so genannte föderierte Lernen. Föderiertes Lernen Bringt Modelle fĂŒr maschinelles Lernen zur Datenquelle, anstatt die Daten zum Modell zu bringen. Föderiertes Lernen verbindet mehrere RechengerĂ€te zu einem dezentralen System, das es den einzelnen GerĂ€ten, die Daten sammeln, ermöglicht, beim Training des Modells zu helfen.
In einem föderierten Lernsystem verfĂŒgen die verschiedenen GerĂ€te des Lernnetzwerks jeweils ĂŒber eine Kopie des Modells auf ihrem GerĂ€t. Die verschiedenen GerĂ€te/Clients trainieren ihre eigene Kopie des Modells mit den lokalen Daten des Clients. AnschlieĂend werden die Parameter/Gewichte der einzelnen Modelle an ein MastergerĂ€t oder einen Server gesendet, der die Parameter aggregiert und das globale Modell aktualisiert. Dieser Trainingsprozess kann so lange wiederholt werden, bis die gewĂŒnschte Genauigkeit erreicht ist. Kurz gesagt: Die Idee hinter föderiertem Lernen besteht darin, dass keine Trainingsdaten zwischen GerĂ€ten oder zwischen Parteien ĂŒbertragen werden, sondern nur die modellbezogenen Aktualisierungen.
Föderiertes Lernen kann in drei verschiedene Schritte oder Phasen unterteilt werden. Föderiertes Lernen beginnt typischerweise mit einem generischen Modell, das als Basis dient und auf einem zentralen Server trainiert wird. Im ersten Schritt wird dieses generische Modell an die Clients der Anwendung versendet. Diese lokalen Kopien werden dann anhand der von den Client-Systemen generierten Daten trainiert, lernen und verbessern ihre Leistung.
Im zweiten Schritt senden alle Clients ihre gelernten Modellparameter an den zentralen Server. Dies geschieht regelmĂ€Ăig nach einem festgelegten Zeitplan.
Im dritten Schritt aggregiert der Server die gelernten Parameter beim Empfang. Nachdem die Parameter aggregiert wurden, wird das zentrale Modell aktualisiert und erneut mit den Kunden geteilt. Der gesamte Vorgang wiederholt sich dann.
Der Vorteil, eine Kopie zu haben Der Vorteil des Modells auf den verschiedenen GerĂ€ten besteht darin, dass Netzwerklatenzen reduziert oder eliminiert werden. Auch die Kosten fĂŒr den Datenaustausch mit dem Server entfallen. Zu den weiteren Vorteilen föderierter Lernmethoden gehört die Tatsache, dass bei föderierten Lernmodellen die PrivatsphĂ€re gewahrt bleibt und die Modellantworten fĂŒr den Benutzer des GerĂ€ts personalisiert sind.
Beispiele fĂŒr föderierte Lernmodelle sind Empfehlungs-Engines, Betrugserkennungsmodelle und medizinische Modelle. Medienempfehlungs-Engines, wie sie von Netflix oder Amazon verwendet werden, könnten auf Daten von Tausenden von Benutzern trainiert werden. Die Client-GerĂ€te wĂŒrden ihre eigenen separaten Modelle trainieren und das zentrale Modell wĂŒrde lernen, bessere Vorhersagen zu treffen, obwohl die einzelnen Datenpunkte fĂŒr die verschiedenen Benutzer einzigartig wĂ€ren. Ebenso können von Banken verwendete Betrugserkennungsmodelle anhand von AktivitĂ€tsmustern vieler verschiedener GerĂ€te trainiert werden, und eine Handvoll verschiedener Banken könnten zusammenarbeiten, um ein gemeinsames Modell zu trainieren. Im Rahmen eines medizinischen Verbundlernmodells könnten mehrere KrankenhĂ€user zusammenarbeiten, um ein gemeinsames Modell zu trainieren, das potenzielle Tumore durch medizinische Scans erkennen könnte.
Arten des föderierten Lernens
Föderierte Lernschemata fallen typischerweise in eine von zwei verschiedenen Klassen: Mehrparteiensysteme und Einparteiensysteme. Verbundlernsysteme mit einer Partei werden als âEinzelparteiâ bezeichnet, da nur eine einzige EntitĂ€t fĂŒr die Ăberwachung der Erfassung und des Datenflusses auf allen ClientgerĂ€ten im Lernnetzwerk verantwortlich ist. Die auf den ClientgerĂ€ten vorhandenen Modelle werden auf Daten mit derselben Struktur trainiert, obwohl die Datenpunkte normalerweise fĂŒr die verschiedenen Benutzer und GerĂ€te eindeutig sind.
Im Gegensatz zu Einparteiensystemen werden Mehrparteiensysteme von zwei oder mehr Einheiten verwaltet. Diese Einheiten arbeiten zusammen, um ein gemeinsames Modell zu trainieren, indem sie die verschiedenen GerĂ€te und DatensĂ€tze nutzen, auf die sie Zugriff haben. Die Parameter und Datenstrukturen sind in der Regel auf den GerĂ€ten der verschiedenen EntitĂ€ten Ă€hnlich, mĂŒssen jedoch nicht exakt gleich sein. Stattdessen erfolgt eine Vorverarbeitung, um die Eingaben des Modells zu standardisieren. Eine neutrale Einheit könnte eingesetzt werden, um die Gewichtungen zu aggregieren, die von den GerĂ€ten ermittelt werden, die fĂŒr die verschiedenen Einheiten einzigartig sind.
Frameworks fĂŒr föderiertes Lernen
Zu den beliebten Frameworks fĂŒr föderiertes Lernen gehören: Tensorflow Federated, Federated AI Technology Enabler (FATE)und PySyft. PySyft ist eine Open-Source-Bibliothek fĂŒr föderiertes Lernen, die auf der Deep-Learning-Bibliothek PyTorch basiert. PySyft soll mithilfe verschlĂŒsselter Berechnungen privates, sicheres Deep Learning ĂŒber Server und Agenten hinweg gewĂ€hrleisten. Mittlerweile ist Tensorflow Federated ein weiteres Open-Source-Framework, das auf der Tensorflow-Plattform von Google basiert. Tensorflow Federated ermöglicht Benutzern nicht nur die Erstellung eigener Algorithmen, sondern ermöglicht es Benutzern auch, eine Reihe integrierter föderierter Lernalgorithmen anhand ihrer eigenen Modelle und Daten zu simulieren. SchlieĂlich ist FATE auch ein Open-Source-Framework, das von Webank AI entwickelt wurde und dem Federated AI-Ăkosystem ein sicheres Computer-Framework bieten soll.
Föderierte Lernherausforderungen
Da das föderierte Lernen noch in den Kinderschuhen steckt, eine Reihe von Herausforderungen Es muss noch verhandelt werden, damit es sein volles Potenzial entfalten kann. Die TrainingsfĂ€higkeiten von Edge-GerĂ€ten, die Datenkennzeichnung und -standardisierung sowie die Modellkonvergenz sind potenzielle Hindernisse fĂŒr föderierte LernansĂ€tze.
Bei der Gestaltung föderierter LernansĂ€tze mĂŒssen die RechenfĂ€higkeiten der Edge-GerĂ€te berĂŒcksichtigt werden, wenn es um lokales Training geht. WĂ€hrend die meisten Smartphones, Tablets und andere IoT-kompatible GerĂ€te in der Lage sind, Modelle fĂŒr maschinelles Lernen zu trainieren, beeintrĂ€chtigt dies in der Regel die Leistung des GerĂ€ts. Es mĂŒssen Kompromisse zwischen Modellgenauigkeit und GerĂ€teleistung eingegangen werden.
Die Kennzeichnung und Standardisierung von Daten ist eine weitere Herausforderung, die föderierte Lernsysteme bewĂ€ltigen mĂŒssen. FĂŒr ĂŒberwachte Lernmodelle sind klar und einheitlich gekennzeichnete Trainingsdaten erforderlich, was auf den vielen Client-GerĂ€ten, die Teil des Systems sind, schwierig sein kann. Aus diesem Grund ist es wichtig, Modelldatenpipelines zu entwickeln, die automatisch und auf standardisierte Weise Beschriftungen basierend auf Ereignissen und Benutzeraktionen anwenden.
Die Modellkonvergenzzeit ist eine weitere Herausforderung fĂŒr föderiertes Lernen, da föderierte Lernmodelle in der Regel lĂ€nger zur Konvergenz benötigen als lokal trainierte Modelle. Die Anzahl der am Training beteiligten GerĂ€te fĂŒgt dem Modelltraining ein Element der Unvorhersehbarkeit hinzu, da Verbindungsprobleme, unregelmĂ€Ăige Aktualisierungen und sogar unterschiedliche Anwendungsnutzungszeiten zu einer lĂ€ngeren Konvergenzzeit und einer verringerten ZuverlĂ€ssigkeit beitragen können. Aus diesem Grund sind föderierte Lernlösungen in der Regel dann am nĂŒtzlichsten, wenn sie bedeutende Vorteile gegenĂŒber dem zentralen Training eines Modells bieten, beispielsweise in FĂ€llen, in denen DatensĂ€tze extrem groĂ und verteilt sind.

Foto: Jeromemetronome ĂŒber Wikimedia Commons, CC von SA 4.0 (https://en.wikipedia.org/wiki/File:Federated_learning_process_central_case.png)