Künstliche Intelligenz
GLM-130B: Ein offenes zweisprachiges vorab trainiertes Modell

Das GLM-130B-Framework ist ein zweisprachiges, vorab trainiertes großes Sprachmodell mit über 130 Milliarden Parametern, mit dem Textausgaben sowohl auf Englisch als auch auf Chinesisch generiert werden können. Das GLM-130B-Framework ist ein Versuch, ein Sprachmodell in einer Größenordnung von über 100 Milliarden Parametern als Open-Source-Lösung bereitzustellen und zu erörtern, wie Frameworks in solch einem großen Maßstab vorab trainiert werden können, da das Training eines so großen Modells derzeit oft unsicher ist mit Problemen wie Divergenz und Verlustspitzen.
In diesem Artikel werden wir über das GLM-130B-Framework sprechen, das versucht, eine Methode zu entwickeln, um große Sprachmodelle mit Hunderten von Milliarden Parametern effektiv vorab zu trainieren. Wir werden uns eingehender mit der Funktionsweise und Architektur des GLM-130B-Frameworks sowie dem Trainingsprozess und den Designoptionen befassen, die nicht nur zur Steigerung der Effizienz, sondern auch der Stabilität beitragen. Erste Experimente, die durchgeführt wurden, um die Funktionsweise des GLM-130B-Frameworks anhand einer Vielzahl englischer Benchmarks zu testen, führten dazu, dass das GLM-130B-Modell den aktuellen Stand der Technik übertraf GPT-3-Framework mit deutlichem Abstand. Beginnen wir also damit, zu erkunden, wie das GLM-130B-Framework solch konsistente, genaue und stabile Ergebnisse liefert.
Eine Einführung in das GLM-130B-Framework
Große Sprachmodelle, die in der Lage sind, in Wenig-Schuss- und Null-Schuss-Einstellungen zu arbeiten, insbesondere solche mit über 100 Milliarden Parametern, weisen attraktive Skalierungsgesetze auf, von denen das GPT-3-Framework eines der leistungsstärksten Frameworks ist, das erhebliche Leistungssteigerungen bietet sein Vorgänger, das BERT-Framework. Trotz der Beliebtheit des GPT-3-Frameworks und seiner weit verbreiteten Anwendungen waren der Trainingsprozess und in gewisser Weise auch das GPT-3-Framework selbst für die Öffentlichkeit intransparent. Darüber hinaus ist die empirische Aufzählung aller möglichen Designs für das Training von LLMs mit mehr als 100 Milliarden Parametern rechnerisch unerschwinglich, was es umso wichtiger macht, eine Vortrainingsmethode für große LLM-Frameworks zu entwickeln.
Der oben genannte Punkt macht die gemeinsame Nutzung der Arbeits- und Schulungsprozesse hochwertiger, groß angelegter LLM-Frameworks wie GPT-3 von entscheidender Bedeutung, und unter Berücksichtigung der ethischen Bedenken ist die Das GLM-130B-Framework ist ein Versuch, ein genaues und quelloffenes LLM mit über 100B Parametern vorab zu trainieren. Im Laufe seines Versuchs stellte das GLM-130B-Entwicklungsteam fest, dass das Vortraining eines groß angelegten LLM-Frameworks häufig mit einer Vielzahl technischer und technischer Herausforderungen in Bezug auf Stabilität, Effizienz und Konvergenz vor dem Training einhergeht.
Genauer gesagt ist der GLM-130B ein bidirektionales und zweisprachiges dichtes Framework, das über 130 Milliarden Parameter umfasst und über einen Zeitraum von fast zwei Monaten über 400 Milliarden Token auf einem Cluster von 96 NVIDIA DGX-A100-GPU-Knoten vortrainiert hat. Anstatt sich für die Architektur im GPT-Stil zu entscheiden, verwendet das GLM-130B-Framework außerdem den GLM- oder General Language Model-Algorithmus, um seine autoregressiven Lückenfüllziele und den Vorteil der bidirektionalen Aufmerksamkeit zu nutzen. In der folgenden Tabelle wird das GLM-130B-Framework mit anderen Modellen mit über 100B-Parametern verglichen GPT, BLOOM-176B und OPT-175B.
Die im GLM-130B-Framework enthaltenen Engineering- und Entwicklungskonzepte übertreffen mit über 3B-Parametern in vielen Fällen und in einer Vielzahl von Benchmarks fast jedes große LLM-Framework, einschließlich GPT-540 und PaLM 500B. Die folgende Abbildung vergleicht die Leistung des GLM-130B-Frameworks mit Modellen mit über 100B+ Parametern. Wie man sieht, weist das GLM-130B-Framework deutlich weniger Generationstoxizität und Bias auf als seine Gegenstücke.
Schließlich wurde der GLM-130B so konzipiert, dass möglichst viele Entwickler Studien zu Frameworks mit über 100B-Parametern durchführen können, und es gibt zwei Möglichkeiten, wie das GLM-130B-Framework dies erreicht. Erstens verwendet das GLM-175B-Framework statt über 130 B Parametern wie BLOOM und OPT 130 B Parameter, da die Größe des Modells Interferenzen sogar auf einem einzelnen A100-Server unterstützt. Zweitens sind die GPU-Anforderungen zum Ausführen des GLM-130B-Frameworks im Vergleich zu anderen LLM-Frameworks geringer, und das GLM-130B-Framework erreicht dies durch Quantisierung des ursprünglichen Frameworks in INT4-Genauigkeit. Die vom GLM-4B-Framework verwendete INT130-Quantisierung verbessert die Leistung und sorgt gleichzeitig für vernachlässigbare Leistungseinbußen.
GLM-130B: Architektur
Die induktive Tendenz eines Modells für maschinelles Lernen wird durch seine Architektur beschrieben, und es ist keine Überraschung, wenn Entwickler nicht verschiedene Architekturentwürfe dafür untersuchen können große Sprachmodelle angesichts der rechnerischen Erschwinglichkeit und Realisierbarkeit. Nachdem dies gesagt ist, werfen wir einen Blick auf die Architektur des GLM-130B.
Große LLM-Frameworks wie PaLM, GPT und andere verfügen über mehr als 100 Milliarden Parameter und basieren auf der herkömmlichen Architektur im GPT-Stil, die nur aus Decodern besteht, für die autoregressive Sprachmodellierung. Andererseits untersucht das GLM-130B-Framework die Möglichkeit der Verwendung von a bidirektionales allgemeines Sprachmodell oder GLM, ein transformatorbasiertes Sprachmodell, das darauf abzielt, die autoregressive Leerstellenfüllung als Trainingsziel und als Grundlage zu nutzen. Kurz gesagt: Für eine bestimmte Textsequenz tastet das GLM-Framework die Textbereiche ab, die dann durch ein einzelnes Masken-Token ersetzt werden.
Die bidirektionale Aufmerksamkeit des Allgemeinen Sprachmodells gegenüber unverfälschten oder nicht maskierten Kontexten unterscheidet das GLM-130B-Framework vom GPT-Ansatz, der einen unidirektionalen Ansatz verwendet. Um sowohl die Generierung als auch das Verständnis von Daten zu unterstützen, vereint das GLM-Framework außerdem zwei Korruptionsstrategien, die jeweils mit einem speziellen und eindeutigen Maskentoken gekennzeichnet sind.
- [MASKE]: [MASK] ist eine Korruptionsstrategie, die kurze Leerzeichen in Sätzen verwendet, deren Längen sich zu einem bestimmten Prozentsatz der Eingabe summieren.
- [gMASK]: [gMASK] ist eine Korruptionsstrategie, die Leerzeichen zufälliger Länge am Ende des Satzes mit den Präfixkontexten verwendet.
Der vom GLM-Framework verfolgte Ansatz ermöglicht es dem Framework, eine Genauigkeitsbewertung von über 80 % bei der Zero-Shot-LAMBADA-Sprachmodellierung zu erzielen, und übertrifft sowohl das PaLM 540B- als auch das GPT-3-Framework.
Layer-Normalisierung
Eine der größten Herausforderungen für Entwickler beim Training eines LLM-Frameworks ist die Trainingsinstabilität, und die Verwendung einer geeigneten LN (Layer Normalization) könnte beim Training von LLMs hilfreich sein. Das GLM-130B-Framework verwendet aufgrund seiner Leistung bei nachgelagerten Aufgaben einen Post-LN-Ansatz.
FFNs und Positionskodierung
Feedforward Neural Networks oder FFNs und Positionskodierung sind zwei Ansätze, die vom GLM-130B-Framework übernommen wurden, um High-End-Downstream-Leistung und Trainingsstabilität zu erreichen.
Setup vor dem Training
Zu den Vortrainingszielen des GLM-130B-Frameworks gehört nicht nur Multitasking-Lernen für eine kleine Anzahl von Token, sondern auch das selbstüberwachte GLM zum autoregressiven Füllen der Lücken, mit der Erwartung, dass dieser Ansatz dem GLM helfen wird -130B-Framework in nachgelagerten Aufgaben. Vor diesem Hintergrund sieht der Aufbau des GLM-130B-Frameworks vor dem Training wie folgt aus.
Selbstüberwachtes Lückenfüllen
Wie bereits erwähnt, verwendet das GLM-130B-Framework zwei Korruptionsstrategien, nämlich [MASK] und [gMASK], und eine dieser Strategien wird unabhängig voneinander auf jede einzelne Trainingssequenz angewendet, eine nach der anderen. Zum Auffüllen der Lücken maskiert die [MASK]-Strategie aufeinanderfolgende Spannen in 30 % der Trainingssequenz, wobei die Längen der Spannen bis zu 15 % der Eingabe ausmachen, und folgt einer Poisson-Verteilung. Für die verbleibenden 70 % der Sequenz wird das Präfix jeder Sequenz als Kontext beibehalten, und die [gMASK]-Strategie hilft beim Maskieren des Rests, und die maskierte Länge wird dann mithilfe der Gleichverteilung abgetastet.
Multitasking-Anweisungen vor dem Training
Es wurde darauf hingewiesen, dass die Befolgung eines Multitasking-Lernansatzes für das Vortraining der Modelle bessere Ergebnisse liefern kann als eine Feinabstimmung, um die Aufgabenübertragung in einer Zero-Shot-Umgebung zu verbessern. Anschließend schlägt das GLM-130B-Framework die Verwendung einer Reihe anweisungsgesteuerter Datensätze vor, einschließlich Sprachgenerierung, Verständnis und Informationsextraktion während des Vortrainings.
Im Vergleich zu anderen Ansätzen für die Zero-Shot-Aufgabenübertragung, die eine durch mehrere Aufgaben gesteuerte Feinabstimmung nutzen, macht der Multi-Task-Instructions-Pre-Training-Ansatz, gefolgt vom GLM-130B-Framework, nur 5 % der gesamten Token aus Es wird während der Vortrainingsphase festgelegt, um zu verhindern, dass andere Fähigkeiten des LLM-Frameworks beeinträchtigt werden. Mit anderen Worten: bedingungslose freie Generation.
3D-Parallelstrategie
Es gibt zwei De-facto-Praktiken zum Trainieren großer Modelle mit Milliarden von Parametern: die Tensormodellparallelität und die Datenparallelität. Um die GPU-Auslastung zu minimieren und immense GPU-Anforderungen zu bewältigen, implementiert das GLM-130B-Framework eine 3D-Parallelstrategie, die die Pipeline-Modell-Parallelitätsstrategie mit der Tensormodell-Parallelität und den Datenparallelitätsstrategien kombiniert.
GLM-130B: Trainingsstabilität
Die Trainingsstabilität ist ein wichtiger Faktor bei der Bestimmung der Qualität eines LLM, und die Trainingsstabilität wird stark von der Anzahl der durchlaufenen Token beeinflusst. Darüber hinaus ist es angesichts der Rechenbeschränkungen von entscheidender Bedeutung, einen Kompromiss zwischen Stabilität und Effizienz in Bezug auf Gleitkommaformate zu finden. Gleitkommaformate mit geringer Genauigkeit steigern beispielsweise die Recheneffizienz, führen jedoch häufig zu Trainingszusammenbrüchen, da sie anfällig für Unterlauf- und Überlauffehler sind.
Gemischte Präzision
Um die Trainingsgenauigkeit zu erhöhen und den Speicherverbrauch zu reduzieren, folgt das GLM-130B-Framework der gängigen Praxis der Verwendung gemischter Präzisionen, d. h. FP16 für Vorwärts- und Rückwärtsbewegungen und FP32 für Mastergewichtungen und Optimiererzustände. Genau wie bei anderen beliebten LLM-Frameworks, einschließlich BLOOM-176B und OPT-175B, ist die Trainingsphase des GLM-130B-Frameworks, das die Mixed-Precision-Strategie verwendet, mit häufigen Verlustspitzen konfrontiert, und die Häufigkeit dieser Spitzenverluste nimmt tendenziell zu, während das Modell weiter trainiert . Darüber hinaus stehen Entwickler bei der Skalierung der Transformatoren vor großen Problemen.
Erstens kann die Werteskala des Hauptzweigs des Transformators bei Verwendung von Pre-LN in den tieferen Schichten sehr groß sein, und im GLM-130B-Framework wird dies durch die Verwendung eines DeepNorm-basierten Pre-LN angegangen, das sicherstellt, dass der Wert gewährleistet ist Der Maßstab bleibt jederzeit begrenzt. Zweitens steigen die Aufmerksamkeitswerte mit zunehmender Skalierung des Modells bis zu einem Punkt an, an dem sie den Bereich von FP16 überschreiten.
Einbettungsschicht-Gradientenschrumpfung oder EGS
Entwickler, die am GLM-130B-Framework arbeiten, haben festgestellt, dass die Gradientennorm als informativer Indikator für Trainingseinbrüche dienen kann und ein Trainingseinbruch normalerweise hinter einem Anstieg der Gradientennorm zurückbleibt. Die Ursache für diese Spitzen sind die abnormalen Gradienten der Einbettungsschicht. Die Entwickler haben beobachtet, dass die Gradientennorm der Einbettungsschichten im Vergleich zur Gradientennorm anderer Schichten um mehrere Größenordnungen größer ist und außerdem dazu neigt, während der Messung dramatisch zu schwanken frühes Training des Frameworks. Vision-Modelle Dieses Problem tritt ebenfalls auf und wird durch das Einfrieren der Patch-Projektionsebene gelöst. Allerdings kann auf LLMs nicht derselbe Ansatz wie bei Sprachmodellen angewendet werden, man kann die Projektionsebenen nicht einfrieren.
GLM-130B: Ergebnisse und Leistung
Um die Leistung des GLM-130B für englischsprachige Aufgaben zu bewerten, werden dieselben Einstellungen implementiert, gefolgt von gängigen LLM-Frameworks, einschließlich PaLM und GPT-3. Da es sich beim GLM-130B um ein zweisprachiges Framework handelt, wird es auch anhand mehrerer chinesischer Benchmarks bewertet. Die Leistung des GLM-130B-Frameworks wird in mehreren Benchmarks gemessen, darunter Sprachmodellierung, MMLU oder Massive Multitask Language Understanding, BIG-Bench oder Beyond the Imitation Game Benchmark und CLUE oder Chinese Language Understanding Evaluation. Also lasst uns anfangen.
Sprachmodellierung
Der Benchmark-Test zur Sprachmodellierung für das GLM-130B-Framework wird für zwei Datensätze durchgeführt: LAMBADA und Pile.
Der LAMBADA-Datensatz wird verwendet, um die Last-Word-Modellierungsfähigkeiten von LLMs zu testen, und das GLM-130B-Framework erreicht einen Zero-Shot-Genauigkeitswert von 80.2 in einer zweisprachigen Umgebung und stellt unterwegs einen neuen Benchmark-Rekord für den LAMBADA-Datensatz auf.
Andererseits ist Pile ein Testsatz, der eine Reihe von Benchmarks für Sprachmodelle umfasst. Im Vergleich zu GPT-3 und Jurassic-1 liefert das GLM-130B-Framework bei 18 gemeinsam genutzten Testsätzen im Hinblick auf die gewichteten BPBs im Durchschnitt seine beste Leistung. Die Ergebnisse zeigen die starken Sprachfähigkeiten des GLM-130B-Frameworks und sind in der folgenden Tabelle enthalten.
MMLU oder Massive Multitask Language Understanding
MMLU oder Massive Multitask Language Understanding ist ein vielfältiger Benchmark, der über 50 Multiple-Choice-Fragen zur Beantwortung von Aufgaben zu menschlicher Intelligenz und Wissen umfasst, die von der Oberstufe bis zum Expertenniveau reichen. Er wird nach dem Crawlen des Pile-Testsatzes veröffentlicht und dient daher als Ideal test-best, um die Few-Shot-Lernfähigkeiten eines LLM zu bewerten.
Wie man sehen kann, nähert sich die Leistung des GLM-5B-Frameworks in einigen Aufnahmeeinstellungen (130-Aufnahmen) der Leistung des GPT-3-Modells an, nachdem fast 300B-Tokens angezeigt wurden. Mit fortschreitendem Training nimmt die Leistung weiter zu, und am Ende des Trainings erreicht das Framework einen Genauigkeitswert von 44.8, nachdem insgesamt 400 Milliarden Token angezeigt wurden.
BIG-Bench oder jenseits des Imitation-Game-Benchmarks
BIG-Bank oder Über die Imitation Game Benchmarks hinaus testen herausfordernde Aufgaben die Fähigkeiten eines Modells in Bezug auf Wissen, Argumentation und gesunden Menschenverstand. Wie in den folgenden Abbildungen gezeigt, übertrifft das GLM-130B-Framework in der Zero-Shot-Einstellung sowohl die PaLM 540B- als auch die GPT-3 175B-Frameworks, was möglicherweise auf MIP und die bidirektionale Kontextaufmerksamkeit zurückzuführen ist, die die Leistung des GLM-130B bei unsichtbaren Aufgaben steigert Nullschusseinstellung. Darüber hinaus verbessert sich mit zunehmender Anzahl der Aufnahmen auch die Leistung des GLM-130B-Frameworks und übertrifft das GPT-3-Framework durchweg.
CLUE oder Bewertung des chinesischen Sprachverständnisses
Die chinesische Zero-Shot-Leistung des GLM-130B wird anhand etablierter NLP-Benchmark-Aufgaben wie CLUE und FewCLUE bewertet und mit 260B ERNIE Titan 3.0, dem größten existierenden chinesischen Sprachmodell, verglichen. Wie zu beobachten ist, übertrifft das GLM-130B-Framework das 260B ERNIE Titan 3.0-Framework bei 12 verschiedenen Aufgaben konstant und schneidet bei zwei abstrakten MRC-Datensätzen fast 260 % besser ab als das ERNIE-Framework.
Fazit
In diesem Artikel haben wir darüber gesprochen GLM-130B, ein zweisprachiges, vorab trainiertes großes Sprachmodell, das darauf abzielt, inklusive LLM-Forschung zu fördern. Ziel der Architektur-, Ingenieurs- und technischen Unternehmungen ist es, der KI-Community einen besseren Einblick in die Architektur von LLM-Frameworks, die Trainingseffizienz und -stabilität, die Ziele vor dem Training und erschwingliche Eingriffe zu bieten.