Das Sparse-Expertenmodell ist ein 30 Jahre altes Konzept, das auch heute noch weit verbreitet ist und eine beliebte Architektur im Deep Learning darstellt. Zu diesen Architekturen gehören Hybrid-Expertensysteme (MoE), Switch-Transformatoren, Routing-Netzwerke, BASE-Schichten usw. Sparse-Expertenmodelle haben in vielen Bereichen wie der Verarbeitung natürlicher Sprache, Computer Vision und Spracherkennung eine gute Leistung gezeigt.
Kürzlich haben der Google-KI-Leiter Jeff Dean und andere einen Überblick über Sparse-Expert-Modelle geschrieben, das Konzept von Sparse-Expert-Modellen überprüft, eine grundlegende Beschreibung allgemeiner Algorithmen bereitgestellt und schließlich einen Ausblick auf zukünftige Forschungsrichtungen gegeben.
Papieradresse: https://arxiv.org/pdf/2209.01667.pdf
Durch Erhöhung des Rechenbudgets, der Trainingsdaten und der Modellgröße, maschinelles Lernen (insbesondere natürliche Sprache) hat erhebliche Fortschritte gemacht. Zu den bekannten Meilenstein-Sprachmodellen gehören GPT-2 (Radford et al., 2018), BERT (Devlin et al., 2018), T5 (Raffel et al., 2019), GPT-3 (Brown et al., 2020). , Gopher (Rae et al., 2021), Chinchilla (Hoffmann et al., 2022) und PaLM (Chowdhery et al., 2022).
Allerdings erfordern hochmoderne Modelle mittlerweile Tausende von dedizierten miteinander verbundenen Beschleunigern und das Training dauert Wochen oder Monate, was die Herstellung dieser Modelle teuer macht (Patterson et al., 2021). Mit der Skalierung maschineller Lernsysteme sucht das Fachgebiet nach effizienteren Schulungs- und Serviceparadigmen. Als vielversprechende Lösung haben sich Sparse-Expertenmodelle herausgestellt.
Ein Sparse-Expert-Modell (von dem Mixed Expert Systems (MoE) die beliebteste Variante ist) ist ein spezieller Typ eines neuronalen Netzwerks, bei dem ein Satz von Parametern in „Experten“ unterteilt ist und jeder „Experte“ Hat ein einzigartiges Gewicht.
Während des Trainings und der Inferenz gibt das Modell Eingabeproben an bestimmte Expertengewichte weiter, sodass jede Probe nur mit einer Teilmenge der Netzwerkparameter interagieren kann, im Gegensatz zu herkömmlichen Methoden, die das gesamte Netzwerk für jede Eingabe verwenden. Da für jede Stichprobe nur eine geringe Anzahl an Experten eingesetzt wird, reduziert sich der Rechenaufwand im Vergleich zum Gesamtmodell deutlich.
Viele moderne Sparse-Expertenmodelle lassen sich von Shazeer et al. (2017) inspirieren. Die Forschung trainierte das damals größte Modell und erzielte hochmoderne Sprachmodellierungs- und Übersetzungsergebnisse. Die Popularität von Sparse-Expert-Modellen ist weiter gestiegen, wenn sie in Verbindung mit Transformer-Sprachmodellen verwendet werden (Lepikhin et al., 2020; Fedus et al., 2021). Während sich die meisten Arbeiten mit der Verarbeitung natürlicher Sprache befassen, wurden Sparse-Expert-Modelle auch in einer Vielzahl von Bereichen erfolgreich eingesetzt, darunter Computer Vision (Puigcerver et al., 2020), Spracherkennung (You et al., 2021) und multimodales Lernen (Mustafa et al., 2022). Clark et al. (2022) untersuchten die Skalierungseigenschaften von spärlichen Expertenmodellen bei unterschiedlichen Modellgrößen und Expertenzahlen. Darüber hinaus werden aktuelle Ergebnisse zu vielen Benchmarks derzeit von spärlichen Expertenmodellen wie ST-MoE (Zoph et al., 2022) gehalten. Dieser Bereich entwickelt sich aufgrund der Fortschritte in Forschung und Technik rasant weiter.
Dieses Übersichtspapier schränkt den Untersuchungsumfang auf spärliche Expertenmodelle in der engen Deep-Learning-Ära (ab 2012) ein, gibt einen Überblick über die jüngsten Fortschritte und erörtert vielversprechende zukünftige Wege.
Das Konzept von MoE im maschinellen Lernen lässt sich bis vor mindestens 30 Jahren zurückverfolgen. In den frühen Konzepten definierten Experten ein vollständiges neuronales Netzwerk, und MoE ähnelte einer Ensemble-Methode.
Eigen et al. (2013) schlugen die Verwendung einer gestapelten Experten-Hybridarchitektur auf jittertem MNIST vor. Diese Arbeit legte den Grundstein für die effiziente Implementierung nachfolgender Modelle.
Shazeer et al. (2017) schlugen vor, eine MoE-Schicht zwischen zwei LSTM-Schichten einzufügen, und das resultierende spärliche Modell erreichte SOTA-Leistung bei der maschinellen Übersetzung. Doch obwohl diese Methode erfolgreich war, glich die nachfolgende Forschung einem Winterschlaf und stagnierte, und die meisten Forschungen wandten sich Transformer zu.
Zwischen 2020 und 2021 wurden GShard und Switch Transformer veröffentlicht, die beide die Feed-Forward-Schicht in Transformer durch eine Expertenschicht ersetzten.
Obwohl der Ansatz, eine Expertenschicht einzusetzen, zum vorherrschenden Paradigma geworden ist, hat die Forschung in den letzten zwei Jahren das Konzept von Expertenmodellen als völlig unabhängige Modelle überarbeitet, um Modularität und Zusammensetzbarkeit zu erreichen.
Abbildung 2 unten ist der ursprüngliche Top-K-Routing-Mechanismus, der von Shazeer et al. (2017) vorgeschlagen wurde und die Grundlage für viele nachfolgende Arbeiten bildet. In diesem Übersichtsartikel werden neue Entwicklungen bei Routing-Algorithmen in Kapitel 4 ausführlich erläutert.
Hardware
Moderne Sparse-Expertenmodelle wurden gemeinsam mit verteilten Systemen entwickelt, um die größten neuronalen Netze zu trainieren.
Untersuchungen zu großen neuronalen Netzen (Brown et al., 2020; Rae et al., 2021; Chowdhery et al., 2022) zeigen, dass neuronale Netze die Speicherkapazität eines einzelnen Beschleunigers, also Gewichte und Aktivierung, bei weitem überschritten haben Funktionen, Tensoren wie Optimierervariablen erfordern Sharding mit verschiedenen parallelen Strategien.
Drei gängige parallele Methoden umfassen: Datenparallelität (Kopieren von Modellgewichtungen, Sharding von Daten), Tensormodellparallelität (Daten- und Gewichtungstensoren werden auf mehrere Geräte aufgeteilt) und Pipeline-Parallelität (ganze Ebenen oder Ebenengruppen werden auf verschiedene Geräte aufgeteilt). Hybride Expertenmodelle sind häufig in der Lage, sich an diese parallelen Szenarien anzupassen.
In Bezug auf Training und Einsatz des MoE-Modells haben Jaszczur et al. (2021) alle Schichten des Transformer-Modells sparsifiziert und dadurch eine 37-fache Inferenzbeschleunigung erreicht; Bibliothek Das Einschränkungsproblem der statischen Experten-Stapelgröße ist gelöst.
Zusätzlich zu Datenparallelität, Modellparallelität und Expertenparallelität schlugen Rajbhandari et al. (2022) die DeepSpeed-MoE-Bibliothek vor, um ZeRO-Partitionierung und ZeRO-Offload zu unterstützen und so eine 10-fache Inferenzverbesserung und SOTA-Übersetzungsleistung zu erreichen, wodurch die Die Praxistauglichkeit des Modells in Produktionsdienstleistungen wird demonstriert.
Der Kreuzentropieverlust dichter neuronaler Sprachmodelle verhält sich wie ein Potenzgesetz in Bezug auf die Anzahl der Modellparameter, das Datenvolumen und das Rechenbudget (Kaplan et al., 2020). Die Potenzgesetzkoeffizienten wurden später in Hoffmann et al. (2022) korrigiert, was darauf hindeutet, dass die Berechnung des optimalen Modells eine ausgewogenere Daten- und Parametererweiterung erfordert. Im Gegensatz dazu erzielten frühe Studien zu spärlichen Expertenmodellen, die heuristisch expandierten, starke empirische Ergebnisse, beschrieben die Expansionsgesetze jedoch nicht sorgfältig. Darüber hinaus haben einige Arbeiten die Unterschiede zwischen vorgelagerten (z. B. Vortraining) und nachgelagerten (z. B. Feinabstimmung) Aktionen hervorgehoben (Fedus et al., 2021; Artetxe et al., 2021), was das Verständnis spärlicher Expertenmodelle weiter erschwert.
Upstream-Erweiterungen
Spärliche Expertenmodelle funktionieren gut, wenn sie auf großen Datensätzen trainiert werden. Ein gängiges Muster bei der Verarbeitung natürlicher Sprache besteht darin, ein vorgelagertes Training (z. B. Vortraining) durchzuführen, gefolgt von einem nachgelagerten Training (z. B. Feinabstimmung) für eine bestimmte interessierende Datenverteilung. In der Upstream-Phase erzielen spärliche Expertenmodelle durchweg höhere Gewinne als dichte Gegenmodelle. Shazeer et al. (2017) schlugen Skalierungskurven in Bezug auf Modellparameter und Rechenbudget für den 1-Milliarden-Wörter-Sprachmodellierungs-Benchmark vor (Chelba et al., 2013) und erzielten damit erhebliche Fortschritte im Vergleich zur dichten Version. Lepikhin et al. (2020) schlugen eine verbesserte Version der Modellerweiterungsfunktion vor und erzielten einen BLEU-Score-Gewinn von 13,5 für ihr größtes 600B-Parameter-sparse-Modell. Switch Transformer (Fedus et al., 2021) hat beim T5-Modell unter Verwendung derselben Rechenressourcen eine 4- bis 7-fache Wandzeitbeschleunigung gemessen. Die Arbeit untersuchte auch die Skalierung des Kreuzentropieverlusts als Funktion der Parameteranzahl, stellte jedoch fest, dass die Gewinne bei über 256 Experten abnahmen.
Downstream-Erweiterung
Eine zuverlässige Upstream-Skalierung führte jedoch nicht sofort zu konsistenten Gewinnen bei Downstream-Aufgaben. In einer Arbeit, die die Herausforderungen der Übertragung hervorhebt, beobachteten Fedus et al. (2021) eine vierfache Verbesserung vor dem Training mit einem Encoder-Decoder-Transformer mit geringem Rechenaufwand und hohen Parametern (1,6 T-Parameter, 2048 Experten pro dünn besetzter Schicht). Bei intensiven Inferenzaufgaben wie SuperGLUE ist die Feinabstimmung nicht gut. Dieses Ergebnis weist auf weitere notwendige Forschung und das möglicherweise erforderliche Gleichgewicht zwischen Berechnungen und Parametern hin.
Du et al. (2021) demonstrierten eine Erweiterung des spärlichen GLaM-Modells im Bereich von 1B-64B FLOPs unter Verwendung von 64 Experten pro spärlicher Schicht. GLaM erzielte SOTA-Ergebnisse und übertraf das 175B-Parameter-GPT-3-Modell (Brown et al., 2020) in Bezug auf die Zero-Shot- und One-Shot-Leistung. Gleichzeitig wurde der von jedem Token während der Inferenz verwendete FLOP um 49 reduziert Der Verbrauch wurde um 65 % reduziert (siehe Abbildung 4 (links) unten). Abbildung 4 unten (rechts) ist ein weiteres Beispiel für ein spärliches Modell, das bei der Inferenz mit wenigen Schüssen eine gute Leistung erbringt.
Srivastava et al. (2022) untersuchten die Kalibrierung dünn besetzter Modelle anhand der Multiple-Choice-BIG-Bench-Aufgabe, die misst, wie gut die vorhergesagte Wahrscheinlichkeit mit der richtigen Wahrscheinlichkeit übereinstimmt. Die Ergebnisse der Studie sind in Abbildung 5 unten dargestellt. Während sich die Kalibrierung sowohl für das größere dichte als auch für das spärliche Modell verbesserte, war die Kalibrierung des spärlichen Modells mit der des dichten Modells mit 10x mehr FLOPs vergleichbar.
Erweitern Sie die Anzahl, Größe und Häufigkeit von Expertenschichten.
Es gibt mehrere wichtige Hyperparameter, die die Erweiterung spärlicher Expertenmodelle steuern, darunter: 1) die Anzahl der Experten, 2) die Anzahl Anzahl der Experten pro Expertengröße und 3) Häufigkeit der Expertenstufen. Diese Entscheidungen können erhebliche Auswirkungen auf den Upstream- und Downstream-Ausbau haben.
Viele frühe Arbeiten wurden auf Tausende relativ kleiner Experten pro Schicht skaliert, was zu einer hervorragenden Vorschulungs- und Übersetzungsqualität führte (Shazeer et al., 2017; Lepikhin et al., 2020; Fedus et al., 2021). Allerdings verschlechtert sich die Qualität spärlicher Modelle überproportional, wenn eine Domänenverschiebung (Artetxe et al., 2021) oder eine Feinabstimmung für unterschiedliche Aufgabenverteilungen erfolgt (Fedus et al., 2021). Um ein besseres Gleichgewicht zwischen Berechnung und Parametern zu erreichen, können nur SOTA-Sparse-Modelle für Fow-Shot-Inferenz (GLaM (Du et al., 2021)) und Feinabstimmung (ST-MoE (Zoph et al., 2022)) verwendet werden bestenfalls 64 größere Experten. Aufgrund der erhöhten Expertendimension erfordern diese Modelle spezifische Sharding-Strategien auf Systemebene, damit Beschleuniger effektiv laufen (Du et al., 2021; Rajbhandari et al., 2022).
Der Routing-Algorithmus ist ein Schlüsselmerkmal aller Sparse-Expert-Architekturen und bestimmt, wohin Proben gesendet werden sollen. Dieser Bereich wurde ausführlich untersucht, einschließlich kontraintuitiver Ansätze, die feste, nicht erlernte Routingmuster verwenden (Roller et al., 2021). Da diskrete Entscheidungen darüber getroffen werden, welche Experten ausgewählt werden sollen, sind Routing-Entscheidungen oft nicht differenzierbar.
Das Problem der Expertenauswahl wurde später als Bandit-Problem neu definiert, und es gab einige Arbeiten, die verstärktes Lernen zum Erlernen der Expertenauswahl verwendeten (Bengio et al., 2016; Rosenbaum et al., 2017; 2019; Clark et al. , 2022 ). Shazeer et al. (2017) schlugen einen differenzierbaren heuristischen Algorithmus vor, um die Schwierigkeiten des verstärkenden Lernens zu umgehen.
Dieses Papier geht näher auf die Klassifizierung von Routing-Algorithmen ein und erläutert weiter das zentrale Thema in diesem Bereich – den Lastausgleich.
Der Einfluss von Sparse-Expert-Modellen breitet sich schnell auf andere Bereiche über NLP hinaus aus, einschließlich Computer Vision, Spracherkennung und multimodale Anwendungen. Obwohl die Domänen unterschiedlich sind, sind die Architektur und der Algorithmus des Modells ungefähr gleich, und Tabelle 1 unten zeigt die Eingabedarstellung der dünn besetzten Schicht für verschiedene Domänen.
Spärliche Expertenmodelle haben sich in den letzten Jahren sehr schnell entwickelt. Am Beispiel des NLP führten Shazeer et al. (2017) hybride Expertenschichten für die LSTM-Sprachmodellierung und maschinelle Übersetzung ein, die zwischen den Standardschichten des LSTM-Modells eingefügt werden.
Im Jahr 2020 führten Lepikhin et al. (2020) die MoE-Schicht zum ersten Mal in Transformer ein. Als die Forscher jede Expertenschicht auf 2048 Experten erweiterten, wurde das Modell auf 100 verschiedene SOTA-Sprachen implementiert Ergebnisse.
Fedus et al. (2021) haben ein spärliches 1,6T-Parameter-Sprachmodell erstellt, das SOTA-Pre-Training-Qualität erreicht.
Neue Forschungsergebnisse treiben die Entwicklung von Wenig-Schuss-Lerninferenzen und Feinabstimmungs-Benchmarks voran. Du et al. (2021) trainierten ein reines MoE-Decoder-Sprachmodell, erzielten SOTA-Ergebnisse bei kleinen Stichproben und erforderten nur 1/3 der für das Training von GPT-3 erforderlichen Berechnungen. Zoph et al. (2022) schlugen ST-MoE vor, ein spärliches Encoder-Decoder-Modell, das SOTA für ein breites Spektrum von Inferenz- und Generierungsaufgaben erreicht. Bei Feinabstimmung auf SuperGLUE übertrifft ST-MoE PaLM-540B und nutzt dabei nur etwa 1/20 der Vortrainings-FLOPs und 1/40 der Inferenz-FLOPs.
Eine häufig gestellte Frage ist, ob Ihnen ein festes Rechen- oder FLOP-Budget zugewiesen wird (z. B. 100 GPUs 20 Stunden). Welche Art von Modell sollten Sie trainieren, um die beste Leistung zu erzielen?
Grundsätzlich ermöglichen Sparse-Modelle, die Anzahl der Parameter im Modell drastisch zu erhöhen, indem die Anzahl der Experten erhöht wird, während der FLOP pro Probe ungefähr konstant bleibt. Dieser Ansatz kann je nach Zweck des Modells gut oder schlecht sein.
Sparsity ist von Vorteil, wenn Sie über viele Beschleuniger (z. B. GPU/TPU) verfügen, um alle zusätzlichen Parameter zu übertragen, die mit der Verwendung von Sparsity einhergehen.
Die Verwendung von Sparsity erfordert auch eine sorgfältige Berücksichtigung nachgelagerter Aufgaben. Wenn Sie über viele Maschinen für das Vortraining, aber nur wenige für die Feinabstimmung oder Bereitstellung verfügen, sollte die Sparsity (z. B. die Anzahl der Experten) basierend auf der in nachgelagerten Anwendungsfällen verfügbaren Speichermenge angepasst werden.
In manchen Fällen sehen spärliche Modelle immer schlechter aus als dichte Modelle. Wenn beispielsweise alle Parameter im Beschleunigerspeicher gespeichert sind, ist ein spärliches Modell einem dichten Modell unterlegen. Sparse-Modelle sind ideal, wenn Sie die Möglichkeit haben, auf mehreren Maschinen parallel zu trainieren oder zu bedienen, um zusätzliche Modellparameter von Experten zu hosten.
Darüber hinaus stellt dieses Übersichtspapier auch die Verbesserung des spärlichen Modelltrainings, der Interpretierbarkeit und zukünftiger Forschungsrichtungen vor, um mehr darüber zu erfahren Forschung.
Das obige ist der detaillierte Inhalt vonEin 30-jähriger historischer Rückblick, Jeff Dean: Wir haben einen Forschungsbericht über „spärliche Expertenmodelle' zusammengestellt.. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!