AT_Logo

Switch-Transformer: Hochskalierung auf über eine Billion Parameter

von | 18. Mai 2021 | Tech Deep Dive

Transformers haben im Bereich des maschinellen Lernens, vor allem in der Nutzung von Sprachverarbeitung mit Sprachmodellen (und jetzt auch Bildverarbeitung), einen großen Erfolg erzielt. Sie sind eines der populärsten Themen derzeit und es ist nicht überraschend, dass große Technologie-Unternehmen wie Google, Microsoft, Facebook viel in diese Technologie investieren. In unserem Blogartikel GPT-3 – Die nächste Stufe der KI haben wir bereits über das 175-Parameter von OpenAI, GPT-3, berichtet welches exklusiv an Microsoft lizensiert wurde. 

Im Januar hat Google ein neues, umfangreiches Paper, „Switch Transformers: Scaling to Trillion Parameter Models with Simple And Efficient Sparsity“, veröffentlicht. Darin schlägt der Konzern eine neue Methode vor, um die Leistungsfähigkeit von Transformern signifikant zu erhöhen. Sie ermöglicht es, die Zahl der Parameter in einem Modell zu vervielfachen - während die Anzahl der mathematischen Operationen (die Standardmetrik für ML-Rechenkosten) beibehalten wird. 

Mit dem „Switch-Transformer“ werden neue Maßstäbe gesetzt. Das Modell verfügt über 1,7 Billionen Parameter und lässt GPT-3 wie ein Spielzeug aussehen. In diesem Artikel  berichten wir über die Hauptmerkmale von Switch-Transformern. 

Was wird „gewechselt“?

Als Vorlage für das Modell diente in gewisser Weise die Architektur eines Rechenzentrums. Dort sorgen sogenannte Weichen (engl.: „switches“) dafür, dass eingehende Datenpakete nur an die Geräte weiterleitet werden, für die sie bestimmt ist. Die übrigen Komponenten bleiben davon unberührt. Der Gedanke scheint banal – doch im maschinellen Lernen ist er bislang tatsächlich noch nicht angekommen. Beim Training eines neuronalen Netzes werden die Input-Daten bislang in sämtlichen Parametern sämtlicher Schichten aktiviert. 
 
Ein Switch-Transformer funktioniert ganz ähnlich. Die Eingabedaten werden durch das Modell propagiert – und sie aktivieren dabei nur bestimmte Schichten, aber eben nicht alle. Die implizite Annahme ist, dass nicht alle im Modell gespeicherten Informationen für eine bestimmte Eingabe relevant sind. „Na und?“ werden Sie jetzt vielleicht denken – „what ist the big deal?“. Die Antwort ist ganz einfach – und dennoch bahnbrechend: Die Methode entkoppelt die Rechenkosten von der Gesamtgröße des Modells. 

front of switches
© Ted Sakshaug CC BY 2.0

Die Pioniere dieser Form der Datenverarbeitung innerhalb eines neuronalen Netzes haben ihr Modell deshalb als „Mischung aus Experten“ (engl. Mixture of Experts, MoE) bezeichnet. Es bezieht sich auf eine Technik des maschinellen Lernens, bei der mehrere Experten verwendet werden, um den Problemraum in homogene Regionen aufzuteilen. Ursprünglich wurde die Technik im Paper: „Outrageously Large Neural Networks: The Sparsely-Gated Mixture-of-Experts Layer“ von 2017 entworfen, indem eine signifikante Verbesserung gegenüber Standart-Modellen aufgezeigt wurde. 

Der „Router“ der Switch-Transformers 

Um das Prinzip genauer zu verstehen hilft es, sich einen Standard Transformer vor Augen zu führen. Das Schlüsselelement dabei ist der sogenannte „attention mechanism“ – zu Deutsch etwa: „Aufmerksamkeits-Mechanismus“. Ein Attention-Layer erkennt, welche Input-Daten – beispielsweise welche Wörter in einem Satz – für die jeweilige Aufgabenstellung relevant sind. Ein herkömmlicher Transformer ist ein tiefer Stapel von parallel ausgeführten Attention Schichten, sogenannten multi-head attention layers. 
  

Am Ende jeder dieser Schichten befindet sich in der Standardarchitektur ein Feed-Forward Netz, (FFN). Dieses FFN fügt die Ausgaben der unterschiedlichen „Köpfe“ wieder zusammen. Und genau hier setzt der Switch Transformer an. Er ersetzt dieses Aggregationsmodul durch mehrere FFNs. Sie sind die “Experten“.  Werden nun Daten durch das Modell geschickt, aktiviert das Modell für jedes Element in der Eingabe genau einen Experten. Mit anderen Worten: Während eines Vorwärtsdurchlaufs verwendet ein Switch-Transformer ungefähr so viele Parameter wie ein Standard-Transformer mit der gleichen Anzahl von Schichten – obwohl er über ein Vielfaches der Parameter des Standard-Transformers verfügt. Dazu kommen die Routing-Parameter, die aber von der benötigten Rechenleistung vernachlässigbar sind. 

Der Router von Switch-Transformer
© arXiv:2101.03961 | Der Router von Switch-Transformer

Bleibt zu erklärten, wie die Experten ausgewählt werden. Der Prozess stützt sich auf eine einfache Abfolge von Operationen:  

  1. Die numerische Darstellung der einzelnen Worte, x, wird mit einer Routing-Matrix W (ein lernbarer Parameter, der zusammen mit dem Rest des Modells trainiert wird) multipliziert, um einen Score für jeden Experten zu erhalten: scores = x * W. Das W bezeichnet dabei eine Matrix aus lernbaren Parametern, die zusammen mit dem Rest des Modells trainiert werden.    
  1. Die Scores werden zu einer Wahrscheinlichkeitsverteilung normalisiert, so dass sie sich über alle Experten hinweg auf 1 summieren: p = softmax(scores)
  1. x wird durch den Experten i mit der höchsten Wahrscheinlichkeit geleitet. Schließlich ist die Ausgabe (d. h. die aktualisierte Token-Darstellung) die vom Experten erzeugte Aktivierung, gewichtet mit seiner Wahrscheinlichkeitsbewertung: x‘ = p * E (x)

Was sind die Vorteile? 

Die Google-Forscher machen einen Vergleich zu einem anderen Modell, Text-To-Text-Transfer-Transformer (T5), um die Vorteile von Switch-Transformers zu zeigen. Ein Switch-Transformer mit lediglich einem Experten ist dabei das gleiche wie T5. 

Erstens zeigen sie, wie mit jeden zusätzlichen Experten das Modell besser wird. Also sind zwei Köpfe (oder Experten) doch besser als einer. Sie haben mit Mischungen bis zu 256 Experten experimentiert und dadurch eine Verbesserung gezeigt. Es zeigt sich aber, dass der Effekt zusätzlicher Experten mit steigender Zahl abflacht und schließlich stagniert. Ist diese Sättigung erreicht, wirken sich zusätzliche Experten nicht weiter positiv aus.

 

Verbesserung der Performanz mit jedem zusätzlichen Experten.
© arXiv:2101.03961 | Verbesserung der Performanz mit jedem zusätzlichen Experten.

In einem weiteren Schritt wurde die Lern-Geschwindigkeit vom Switch-Transformer mit der vom T5 verglichen. Die Forscher zeigen, dass das Modell mit MoE zwei bis sieben Mal so schnell lernen kann wie seinen Vorgänger, d.h. es kann mit zwei bis sieben Mal weniger Daten die gleichen Ergebnisse erreichen.

Lern-Geschwindigkeit vom Switch-Transformers und T5
© arXiv:2101.03961 | Lern-Geschwindigkeit vom Switch-Transformers und T5

Nicht zuletzt erzielt der Switch-Transformer auch Verbesserungen in vielen NLP-Benchmarks, wie z.B. Text-Klassifizierung und Beantworten von Fragen. Vor allem gibt es eine sehr große Verbesserung bei dem Winogrande-Benchmark, welcher die Vernunftbegabung-Fähigkeiten misst.

 

Benchmark-Vergleich zwischen Switch-Transformers und T5
© arXiv:2101.03961 | Benchmark-Vergleich zwischen Switch-Transformers und T5

Fazit 

Die Mischung aus Experten erweist sich als eine zuverlässige Methode, um enormes Hochskalieren von Transformers zu ermöglichen. Switch-Transformers können mit deutlich kleinerem Aufwand trainiert werden. Dadurch setzen sie neue Maßstäbe nicht nur für die Größe von neuronalen Netzen, aber auch für herausfordernde NLP-Benchmarks. Die deutliche Reduktion der Rechenkosten erlaubt eine größere Zahl von Parameter und bietet somit Potenzial für Verbesserungen.  

<a href="https://www.alexanderthamm.com/de/blog/author/rosko/" target="_self">Rostislav Nedelchev</a>

Rostislav Nedelchev

Rostislav Nedelchev ist Data Engineer bei [at]. Über die Jahre hat Rostislav eine große Begeisterung für Daten und deren Verarbeitung entwickelt. Seit 2019 promoviert er gleichzeitig im Bereich NLP, wo er mit Dialog-Systemen und Chatbots in seiner Freizeit forscht.