Federated Learning ist ein sehr heißes Feld im maschinellen Lernen, das sich auf das gemeinsame Training von Modellen durch mehrere Parteien ohne Datenübertragung bezieht. Mit der Entwicklung des föderierten Lernens entstehen immer mehr föderierte Lernsysteme wie FATE, FedML, PaddleFL, TensorFlow-Federated und so weiter. Die meisten föderierten Lernsysteme unterstützen jedoch kein föderiertes Lerntraining von Baummodellen. Im Vergleich zu neuronalen Netzen zeichnen sich Baummodelle durch schnelles Training, gute Interpretierbarkeit und Eignung für Tabellendaten aus. Baummodelle haben vielfältige Anwendungsszenarien in den Bereichen Finanzen, medizinische Versorgung, Internet und anderen Bereichen, wie z. B. Werbeempfehlungen, Aktienprognosen usw.
Das repräsentative Modell des Entscheidungsbaums ist der Gradient Boosting Decision Tree (GBDT). Da die Vorhersagefähigkeit eines Baums begrenzt ist, trainiert GBDT mehrere Bäume nacheinander mithilfe der Boosting-Methode und erzielt schließlich einen guten Vorhersageeffekt, indem jeder Baum an den Rest des aktuellen Vorhersagewerts und des Etikettenwerts angepasst wird. Zu den repräsentativen GBDT-Systemen gehören XGBoost, LightGBM, CatBoost und ThunderGBM. Unter ihnen wurde XGBoost viele Male vom KDD-Cup-Meisterschaftsteam verwendet. Allerdings unterstützt keines dieser Systeme das GBDT-Training in föderierten Lernszenarien. Kürzlich haben Forscher der National University of Singapore und der Tsinghua University ein neues föderiertes Lernsystem FedTree vorgeschlagen, das sich auf das Training von Baummodellen konzentriert.
Einführung in das FedTree-System Das FedTree-Architekturdiagramm ist in Abbildung dargestellt 1 Anzeige, es gibt insgesamt 5 Module: Schnittstelle, Umgebung, Framework, Datenschutz und Modell.
Abbildung 1: FedTree-Systemarchitekturdiagramm ##🎜 🎜#
Schnittstelle: FedTree unterstützt zwei Schnittstellen: Befehlszeilenschnittstelle und Python-Schnittstelle. Benutzer müssen lediglich Parameter angeben (Anzahl der Teilnehmer, Verbundszenario usw.) und können FedTree zum Training mit einem einzeiligen Befehl ausführen. Die Python-Schnittstelle von FedTree ist mit scikit-learn kompatibel und Sie können fit() und Predict() für Training und Vorhersage aufrufen.
Environment: FedTree unterstützt die simulierte Föderationsbereitstellung auf einem einzigen maschinelles Lernen und die Bereitstellung von verteiltem föderiertem Lernen auf mehreren Maschinen. In einer eigenständigen Umgebung unterstützt FedTree die Aufteilung von Daten in mehrere Unterdatensätze, und jeder Unterdatensatz wird als Teilnehmer trainiert. In einer Umgebung mit mehreren Maschinen unterstützt FedTree jede Maschine als Teilnehmer und Maschinen kommunizieren über gRPC. Gleichzeitig unterstützt FedTree zusätzlich zur CPU die Verwendung von GPUs, um das Training zu beschleunigen.
Framework: FedTree unterstützt horizontale und vertikale föderierte Lernszenarien Ausbildung unter GBDT. Im horizontalen Szenario verfügen verschiedene Teilnehmer über unterschiedliche Trainingsbeispiele und denselben Funktionsraum. Im vertikalen Szenario verfügen verschiedene Teilnehmer über unterschiedliche Funktionsräume und dieselben Trainingsbeispiele. Um die Leistung sicherzustellen, nehmen in beiden Szenarien mehrere Parteien am Training jedes Knotens teil. Darüber hinaus unterstützt FedTree auch Ensemble-Lernen, bei dem die Teilnehmer Bäume parallel trainieren und sie dann aggregieren, um den Kommunikationsaufwand zwischen den Teilnehmern zu reduzieren.
Privatsphäre: Aufgrund des während des Trainings durchlaufenen Gefälles Im Prozess können Informationen über Trainingsdaten durchgesickert sein, und FedTree bietet verschiedene Methoden zum Schutz der Privatsphäre, um Gradienteninformationen weiter zu schützen, einschließlich homomorpher Verschlüsselung (HE) und sicherer Aggregation (SA). Gleichzeitig bietet FedTree differenzielle Privatsphäre, um das endgültig trainierte Modell zu schützen.
Model: Basierend auf dem Training eines Baumes unterstützt FedTree Training von GBDT/Random Forest durch Boosting/Bagging-Methoden. Durch die Festlegung verschiedener Verlustfunktionen unterstützt das von FedTree trainierte Modell eine Vielzahl von Aufgaben, einschließlich Klassifizierung und Regression. ExperimentTabelle 1 fasst die AUC verschiedener Systeme für a9a, Brust und Kredit sowie den RMSE für Abalone, den Modelleffekt von FedTree und das Training von GBDT (XGBoost) mit allen zusammen data , ThunderGBM) und SecureBoost (SBT) in FATE sind nahezu identisch. Darüber hinaus haben die Datenschutzrichtlinien SA und HE keinen Einfluss auf die Modellleistung. Tabelle 1: Vergleich der Modelleffekte verschiedener Systeme # 🎜🎜# Tabelle 2 fasst die Trainingszeit (Einheit: Sekunden) jedes Baums in verschiedenen Systemen zusammen. Es ist ersichtlich, dass FedTree viel schneller ist als FATE. In horizontalen föderierten Lernszenarien kann ein Beschleunigungsverhältnis von mehr als dem Hundertfachen erreicht werden. Tabelle 2: Vergleich der Trainingszeit für jeden Baum in verschiedenen Systemen# 🎜 🎜# Weitere Forschungsdetails finden Sie im Originalpapier von FedTree.
Das obige ist der detaillierte Inhalt vonDie National University of Singapore und die Tsinghua University wurden speziell für Entscheidungsbäume entwickelt und schlagen gemeinsam ein schnelles und sicheres neues föderiertes Lernsystem vor. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!