Simple Science

Hochmoderne Wissenschaft einfach erklärt

# Computerwissenschaften# Maschinelles Lernen

Einheitsskalierung in Deep Learning-Modellen

Die Rolle der Einheitenskala für Gleitkommaformate im Deep Learning erkunden.

― 10 min Lesedauer


Skalierung von DeepSkalierung von DeepLearning Modellenim Deep Learning.Strategien für effektives Unit-Scaling
Inhaltsverzeichnis

Beim Thema Deep Learning sind Fliesskommaformate mega wichtig. Diese Formate bestimmen, wie Zahlen in Computern gespeichert und verarbeitet werden. Jedes Format hat ein spezifisches Layout, das Teile wie Exponentenbits und Mantissabits enthält. Der Exponent hilft uns, den Massstab der Zahl zu verstehen, während die Mantisse die Präzision anzeigt.

Hier ein schneller Überblick über gängige Fliesskommaformate, die im Deep Learning verwendet werden:

FormatExponentenbitsMantissabitsMax ExponentMin Exponent
FP32823127-126
TF32810127-126
BFLOAT1687127-126
FP1651015-14
FP8 E5 (a)5215-15
FP8 E5 (b)5215-14
FP8 E4 (a)437-7
FP8 E4 (b)438-6

Vorgeschlagene FP8-Formate

Kürzlich wurden neue 8-Bit-Fliesskommaformate für das Deep Learning vorgeschlagen. Diese Formate beinhalten zwei Varianten: eine mit 4 Exponentenbits, genannt E4, und eine andere mit 5 Exponentenbits, E5. Diese Designs passen die Anzahl der Spezialwerte an, indem sie im Vergleich zum traditionellen IEEE 754-Standard verringert werden. Dieser Wechsel bietet leicht unterschiedliche Maximal- und Minimalwerte zur Darstellung.

Ein wichtiger Begriff bei der Analyse dieser Formate ist der Bias-Wert. Der Bias wird vom Exponenten subtrahiert, ähnlich wie im IEEE 754-Format. Das bedeutet, dass das Skalieren der Zahlen den Bereich der darstellbaren Werte steuern kann. Man könnte eher zu einem Skalierungsansatz tendieren, da er besser mit den Softwarepraktiken übereinstimmt, während der Exponenten-Bias-Ansatz relevanter für die Hardware ist.

Insgesamt sind die neuen FP8-Formate ziemlich ähnlich zu den etablierten 8-Bit-Formaten.

Ist die Einheitliche Standardabweichung das richtige Kriterium?

Wir meinen, dass es logisch ist, normalverteilte Tensoren mit einer einheitlichen Standardabweichung zu initialisieren. Ziel ist es, die Absolutwerte der Fliesskomma-Tensoren innerhalb spezifischer Grenzen zu halten, die durch das verwendete Format definiert sind.

Wenn wir betrachten, wie sich Absolutwerte aus einer Normalverteilung verhalten, berücksichtigen wir eine Variante, die als gefaltete Normalverteilung bezeichnet wird. Der Grossteil der Wahrscheinlichkeit in dieser Verteilung konzentriert sich um einen bestimmten Punkt.

Bei traditionellen Fliesskommaformaten können Werte typischerweise innerhalb eines definierten Intervalls liegen, mit einem Mittelpunkt, der ungefähr mit dem Zentrum des Zahlenbereichs übereinstimmt. Um Fehler zu vermeiden, ist es wichtig, die Werte auf diesen Mittelpunkt zu skalieren.

Letztendlich kommen wir zu dem Schluss, dass das Streben nach einer einheitlichen Standardabweichung die meisten Werte nah am Zentrum des Zahlenbereichs halten wird. Ob diese Zentralität jedoch der beste Massstab für normalverteilte Tensoren während des Trainings von Deep-Learning-Modellen ist, wird diskutiert.

Die Idee, unter dem Zentrum zu skalieren, wird durch die Auffassung unterstützt, dass diese subnormalen Werte zusätzlichen Spielraum bieten, auch wenn die Präzision geringer ist. Ausserdem tritt Underflow im Deep-Learning-Training seltener auf als Overflow.

Andererseits basiert der Fokus auf Skalierung über dem Zentrum auf dem Glauben, dass die Werte, insbesondere die Gradienten, während des Trainings abnehmen können. Daher könnte Skalierung helfen, diesen erwarteten Rückgang auszugleichen.

Angesichts dieser Perspektiven scheint das Streben nach einer einheitlichen Skalierung ein vernünftiger Mittelweg zu sein. Wenn das Ziel ist, die Verteilung perfekt mit dem Mittelpunkt abzugleichen, könnte eine etwas grössere Skalierung nötig sein. Diese Differenz ist jedoch minimal, was eine einheitliche Skalierung zu einer starken Option und konsistent mit verschiedenen etablierten Techniken macht.

Einheitliche Skalierung und aufkommende Ausreisser

Kürzliche Studien zur Quantisierung für grosse Sprachmodelle haben Techniken zur Handhabung von Ausreissern gezeigt. Diese Ausreisser sind grosse Werte, die in bestimmten Teilen der Daten auftreten, insbesondere wenn die Modellgrössen wachsen.

Eine Herausforderung mit Ausreissern ist, dass ein einzelner Ausreisser die gesamte Quantisierungsgenauigkeit anderer Werte negativ beeinflussen kann. Ausreisser haben sich als reduzierend für die INT8-Quantisierungsgenauigkeit grosser Modelle erwiesen, was zu Forschungen über den Einfluss von Ausreissern auf die einheitliche Skalierung geführt hat.

Wir erwarten nicht, dass die einheitliche Skalierung die Grösse der Ausreisser signifikant verändert. Das liegt daran, dass Ausreisserwerte häufig in Aktivierungstensoren zu finden sind, die aufgrund vorhandener Normalisierungsschichten, die die Skalierung steuern, tendenziell konsistente Skalen über einheitliche und nicht-einheitliche Modelle hinweg beibehalten.

Dennoch wird erwartet, dass die einheitliche Skalierung stabiler im Angesicht von Ausreissern ist im Vergleich zu Methoden, die in der bestehenden Literatur dokumentiert sind. Das liegt hauptsächlich daran, dass die einheitliche Skalierung mit Fliesskommaformaten arbeitet, während die vorhandene Forschung sich auf die Integer-Quantisierung konzentriert hat, die nicht über einen angemessenen dynamischen Bereich verfügt.

Daher glauben wir, dass die Nutzung von FP8-Formaten anstelle von INT8 die Komplikationen im Zusammenhang mit Ausreissern verringern wird. Ein Vergleich der Signal-Rausch-Verhältnisse über die Formate hinweg unterstützt diese Erwartung weiter.

Um das zu veranschaulichen, betrachten wir ein Szenario, in dem das Vorhandensein von Ausreissern die Quantisierungsverteilung verzerrt, was dazu führt, dass die meisten Quantisierungsbins leer sind. Im Gegensatz dazu bieten Fliesskommaformate eine bessere Verteilung, die eine kleine Anzahl grösserer Werte, geeignet für Ausreisser, beherbergt, während viele kleinere Werte für Nicht-Ausreisser vorhanden sind.

Wenn wir diese Ergebnisse analysieren, wird deutlich, dass die einheitliche Skalierung vielversprechend sein kann, wenn es darum geht, mit Ausreissern umzugehen, obwohl weiterhin Herausforderungen auftreten können.

Theoretische Ergebnisse

Beispiel - Skalierungsanalyse

Nehmen wir ein Beispiel mit einem multilayer Perzeptron (MLP). Das kann man sich so vorstellen, dass Eingaben in Ausgaben transformiert werden, wobei eine spezifische Operation durchgeführt wird, bei der eine elementweise Aktivierungsfunktion angewendet wird.

In dieser Analyse konzentrieren wir uns darauf, die Untersuchung einer einzelnen Schicht in zwei verschiedene Teile zu teilen. Das Verfahren folgt einem bestimmten Algorithmus, um zu beschreiben, wie Ausgaben eine Varianz basierend auf unabhängigen Eingaben erzeugen.

In diesem Gedankengang, während wir die Gradienten berechnen, erkennen wir bestimmte Annahmen über die Korrelation zwischen Eingaben und Aktivierungen an. Obwohl einige dieser Annahmen problematisch sein können, tragen sie zu einer einfacheren Analyse für unsere Zwecke bei.

Beweise zur Unterstützung der Proposition

Wir tauchen in die Trainingsdynamik von zwei gängigen Optimierern ein: Stochastic Gradient Descent (SGD) und Adam. Die Trainingsdynamik eines nicht skalierten Modells spiegelt die eines einheitlich skalierten Modells wider.

Ein Trainingsverlauf zeigt, wie sich Parameter in einem Modell während des Trainings entwickeln. Bei der Verwendung von SGD können wir diese Verläufe basierend auf spezifischen Konstanten und Gradienten skizzieren.

Wenn die Verläufe eines skalierten Modells eine konsistente Beziehung zu denen des nicht skalierten Modells aufrechterhalten, können wir schliessen, dass sie effektiv ähnliche Trainingsdynamiken teilen.

Für Adam ist das Verhalten gegenüber diagonaler Skalierung etwas invariant. Diese Eigenschaft versichert, dass skalierte und nicht skalierte Modelle mit gleichen Trainingsverläufen übereinstimmen können.

Beispiel - Ein skaliertes Berechnungsdiagramm

Lass uns eine nicht skalierte Operation mit Werten in einem bestimmten Vektorraums betrachten. Wenn wir ein skaliertes Berechnungsdiagramm definieren, muss es dieselbe Operation widerspiegeln. Indem wir eine konsistente Methode für sowohl Vorwärts- als auch Rückwärtswerte etablieren, können wir validieren, dass ein nicht skaliertes Diagramm korrekt einen Op darstellt.

Letztendlich zeigen wir, dass das skalierte Diagramm auch eine skalierte Operation korrekt darstellen kann, um sicherzustellen, dass die Darstellung genau ist.

Einschränkungs-scalierte Berechnungsdiagramme für andere Strategien

Wenn wir andere Skalierungsstrategien vergleichen, können wir sehen, wie sie in das Framework der einschränkungs-skalierten Berechnungsdiagramme passen.

Zum Beispiel, wenn wir die Glorot-Initialisierung anwenden, berücksichtigen wir spezifische Skalen und verwenden sie, um Werte zu kombinieren, um sicherzustellen, dass während der Laufzeit keine übermässige Multiplikation erforderlich ist.

Bei der Verlustskalierung führen wir eine skalierte Identitätsoperation ein, die es ermöglicht, die Gradienten synchron zu halten, während wir eine einzelne Skalierung über diese Gradienten hinweg teilen. Solche Strategien müssen sorgfältig ausgewählt werden.

Kompendium der einheitlich skalierten Operationen

Einheitliche Skalierung erfordert eine sorgfältige Auswahl der Skalierungsfaktoren für jede Operation. Diese Faktoren stammen von einer Analyse des Verhaltens verschiedener Operationen und Gradoperationen.

Um Praktikern zu helfen, haben wir eine Referenztabelle zusammengestellt, die skalierte Versionen gängiger Operationen und deren jeweilige Skalierungsfaktoren zeigt.

Softmax und andere Operationen

Wenn wir Operationen wie Softmax untersuchen, sehen wir, wie sie sich unterscheiden, wenn sie von einer Matrixmultiplikation gefolgt werden. Ein sorgfältiger Ansatz ist erforderlich, um Softmax richtig zu skalieren, damit konsistente Werte durch nachfolgende Prozesse propagiert werden.

Ähnlich verfahren wir bei der Betrachtung von Softmax in Kombination mit Kreuzentropie, indem wir es als eine einzige Operation behandeln. Indem wir uns auf Rückwärtsoperationen konzentrieren, können wir notwendige Skalierungsfaktoren ableiten, die die Bewegungen im Blick halten, während das Training stabil bleibt.

Einheitliche Skalierung mit bestehenden Modellen in Einklang bringen

Ein Modell zu entwerfen, das mit einheitlicher Skalierung im Hinterkopf arbeitet, kann sich von der Anpassung eines bestehenden Modells unterscheiden. In solchen Fällen gibt es zusätzliche Überlegungen, um sicherzustellen, dass das einheitlich skalierte Modell vergleichbare Leistungen wie das Basismodell erbringt.

Aktivierungsfunktionen und ihre Bedeutung

Aktivierungsfunktionen spielen eine bedeutende Rolle für die Leistung des Modells, da ihr Verhalten je nach Eingabeskala variiert. Bei der Umstellung auf eine einheitliche Skalierung müssen wir Skalierungsfaktoren vor und nach den Aktivierungsfunktionen einführen, um sicherzustellen, dass die Eingaben konsistent bleiben.

Geteilte Parameter und Gewicht-Gradienten

Geteilte Parameter, die häufig über Operationen hinweg verwendet werden, müssen den Skalierungsverhältnissen der Einheiten im Modell entsprechen. Anpassungen müssen entsprechend vorgenommen werden, um sicherzustellen, dass das einheitlich skalierte Modell mit der Leistung des Basismodells übereinstimmt.

Beispiel: BERT angleichen

In unseren Experimenten, die sich auf die Angleichung der einheitlichen Skalierung mit BERT-Modellen konzentrierten, haben wir sorgfältige Schritte unternommen, um sicherzustellen, dass die Leistungsniveaus mit denen traditioneller Modelle übereinstimmten.

Embedding-Schichten

BERT arbeitet mit mehreren Embeddings, einschliesslich Wort-, Segment- und Positions-Embeddings, die zusammengeführt werden. Für die einheitliche Skalierung setzen wir dies mit konsistenten Gewichtseinstellungen über die Embeddings hinweg um.

Multi-Head Self-Attention

Im Prozess der Multi-Head Self-Attention wenden wir notwendige Anpassungen für Softmax-Operationen an, um sicherzustellen, dass wir die Integrität der Leistung des Modells durch die richtigen Skalierungsanpassungen aufrechterhalten.

Überlegungen zur Sequenzlänge

Beim Skalieren von Modellen, die auf Sequenzen basieren, ist es wichtig, die Auswirkungen der Sequenzlänge zu berücksichtigen. Daher passen wir Berechnungen basierend auf der durchschnittlichen Anzahl von Non-Padding-Tokens während des Trainings an.

Rechenaufwand

Die Implementierung von einheitlicher Skalierung bringt typischerweise minimalen Rechenaufwand mit sich, hauptsächlich manifestiert sich das als zusätzliche Funktionsaufrufe während des Modells. Bei der Analyse von Fliesskommaoperationen bleibt der Aufwand im Vergleich zu anderen Prozessen gering.

Fusing von Skalierungsfaktoren

Die Integration von festen Skalierungsfaktoren in vorhergehende Operationen kann die Effizienz steigern. Diese Methode reduziert die Kommunikationszeiten, indem sie zusätzliche Speicherzugriffe verringert und möglicherweise niedrigere Präzisionsausgaben zulässt.

Zusätzliche experimentelle Details und Ergebnisse

Zeichen-Sprachmodellierung

Wir haben Experimente mit einem Rohdatensatz von Wikipedia durchgeführt, ohne Vorverarbeitung. Die Ergebnisse wurden durch systematische Anpassungen der Lernrate gesammelt und die Leistung maximiert.

Gemischtes Präzistraining

In unserem FP16-Training wurden alle Komponenten konsistent in ihren jeweiligen Formaten gespeichert, um Stabilität bei maximaler Leistungseffizienz zu gewährleisten.

Zusätzliche Ergebnisse

Die Ergebnisse zeigen, dass einheitlich skalierte Modelle die Leistung im Verhältnis zu ihren nicht skalierten Gegenstücken aufrechterhalten, was die Wirksamkeit der in Trainingsszenarien untersuchten Techniken bestätigt.

Fazit

Die einheitliche Skalierung bietet einen praktischen Ansatz innerhalb von Deep-Learning-Modellen, insbesondere im Kontext grosser Sprachmodelle. Die Erkenntnisse aus der Analyse verschiedener Fliesskommaformate, ihrer Darstellung und Leistung heben die fortlaufende Entwicklung von Trainingsstrategien in diesem schnelllebigen Bereich hervor.

Mehr von den Autoren

Ähnliche Artikel