Heim  >  Artikel  >  Technologie-Peripheriegeräte  >  Das 6-seitige Papier von Microsoft explodiert: Ternäres LLM, so lecker!

Das 6-seitige Papier von Microsoft explodiert: Ternäres LLM, so lecker!

WBOY
WBOYnach vorne
2024-02-29 22:01:02481Durchsuche

Dies ist die Schlussfolgerung, die Microsoft und die Universität der Chinesischen Akademie der Wissenschaften in der neuesten Studie vorbringen:

Alle LLMs werden 1,58 Bit sein.

Das 6-seitige Papier von Microsoft explodiert: Ternäres LLM, so lecker!

Konkret heißt die in dieser Studie vorgeschlagene Methode BitNet b1.58, von der man sagen kann, dass sie von den Parametern der „Wurzel“ des großen Sprachmodells ausgeht.

Der traditionelle Speicher in Form von 16-Bit-Gleitkommazahlen (wie FP16 oder BF16) wurde in ternär geändert, was {-1, 0, 1} ist.

Das 6-seitige Papier von Microsoft explodiert: Ternäres LLM, so lecker!

Es ist zu beachten, dass „1,58 Bit“ nicht bedeutet, dass jeder Parameter 1,58 Byte Speicherplatz belegt, sondern dass jeder Parameter mit 1,58 Bit an Informationen kodiert werden kann.

Nach einer solchen Konvertierung umfasst die Berechnung in der Matrix nur die Addition ganzer Zahlen, sodass große Modelle den erforderlichen Speicherplatz und die Rechenressourcen erheblich reduzieren und gleichzeitig eine gewisse Genauigkeit beibehalten können.

Zum Beispiel wird BitNet b1.58 mit Llama verglichen, wenn die Modellgröße 3B beträgt. Während die Geschwindigkeit um das 2,71-fache erhöht wird, beträgt die GPU-Speichernutzung fast nur ein Viertel des Originals.

Und wenn das Modell größer ist (z. B. 70B) , sind die Geschwindigkeitsverbesserung und die Speichereinsparung deutlicher!

Diese subversive Idee hat die Internetnutzer wirklich beeindruckt, und das Papier erhielt auch große Aufmerksamkeit. Der alte Witz des Papiers:

Das 6-seitige Papier von Microsoft explodiert: Ternäres LLM, so lecker!1 Bit ist alles, was SIE brauchen.

Wie wird also BitNet b1.58 implementiert? Lesen wir weiter.

Konvertieren Sie alle Parameter in ternäre Das 6-seitige Papier von Microsoft explodiert: Ternäres LLM, so lecker!

Diese Forschung ist eigentlich eine Optimierung, die vom ursprünglichen Team auf der Grundlage eines zuvor veröffentlichten Artikels durchgeführt wurde, das heißt, dem ursprünglichen BitNet wird ein zusätzlicher 0-Wert hinzugefügt.

Insgesamt basiert BitNet b1.58 immer noch auf der BitNet-Architektur

(einem Transformer)

und ersetzt nn.Linear durch BitLinear. Das 6-seitige Papier von Microsoft explodiert: Ternäres LLM, so lecker!

Was die detaillierte Optimierung betrifft, ist das erste, was wir gerade erwähnt haben, das „Hinzufügen einer 0“, also die

Gewichtsquantisierung(Gewichtsquantisierung)

.

Die Gewichte des BitNet b1.58-Modells werden in ternäre Werte {-1, 0, 1} quantisiert, was der Verwendung von 1,58 Bit zur Darstellung jedes Gewichts im Binärsystem entspricht. Diese Quantifizierungsmethode reduziert den Speicherbedarf des Modells und vereinfacht den Berechnungsprozess.

Zweitens verwendeten die Forscher im Hinblick auf das

Quantisierungsfunktionsdesign

, um die Gewichtung auf -1, 0 oder +1 zu begrenzen, eine Quantisierungsfunktion namens Absmean. Das 6-seitige Papier von Microsoft explodiert: Ternäres LLM, so lecker!

Diese Funktion skaliert zunächst entsprechend dem durchschnittlichen Absolutwert der Gewichtsmatrix und rundet dann jeden Wert auf die nächste ganze Zahl (-1, 0, +1).

Der nächste Schritt ist Das 6-seitige Papier von Microsoft explodiert: Ternäres LLM, so lecker!Aktivierungsquantisierung

(Aktivierungsquantisierung)

.

Die Quantisierung der Aktivierungswerte ist dieselbe wie bei der Implementierung in BitNet, die Aktivierungswerte werden jedoch nicht auf den Bereich [0, Qb] vor der nichtlinearen Funktion skaliert. Stattdessen werden die Aktivierungen auf den Bereich [−Qb, Qb] skaliert, um eine Nullpunktquantisierung zu vermeiden.

Es ist erwähnenswert, dass das Forschungsteam Komponenten des LLaMA-Modells wie RMSNorm, SwiGLU usw. übernommen hat, um BitNet b1.58 mit der Open-Source-Community kompatibel zu machen, sodass es problemlos in Mainstream-Open integriert werden kann Quellsoftware.

Abschließend verglich das Team im Rahmen eines experimentellen Leistungsvergleichs BitNet b1.58 und FP16 LLaMA LLM auf Modellen unterschiedlicher Größe.

Das 6-seitige Papier von Microsoft explodiert: Ternäres LLM, so lecker!

Die Ergebnisse zeigen, dass BitNet b1.58 bei der Modellgröße 3B beginnt, mit dem vollpräzisen LLaMA LLM mithalten zu können, und gleichzeitig erhebliche Verbesserungen bei Latenz, Speichernutzung und Durchsatz erzielt.

Und wenn die Modellgröße größer wird, wird diese Leistungsverbesserung noch bedeutender.

Netizen: Es ist möglich, 120 Milliarden große Modelle auf GPUs der Verbraucherklasse auszuführen.

Wie oben erwähnt, hat die einzigartige Methode dieser Studie im Internet für viele hitzige Diskussionen gesorgt.

DeepLearning.scala-Autor Yang Bo sagte:

Im Vergleich zum ursprünglichen BitNet besteht das größte Merkmal von BitNet b1.58 darin, dass es 0 Parameter zulässt. Ich denke, dass wir durch eine leichte Änderung der Quantisierungsfunktion möglicherweise den Anteil der 0-Parameter steuern können. Wenn der Anteil von 0 Parametern groß ist, können die Gewichte in einem spärlichen Format gespeichert werden, sodass der durchschnittliche von jedem Parameter belegte Videospeicher sogar weniger als 1 Bit beträgt. Dies entspricht einem MoE auf Gewichtsebene. Ich denke, es ist eleganter als normales MoE.

Gleichzeitig wies er auch auf die Mängel von BitNet hin:

Der größte Nachteil von BitNet besteht darin, dass es zwar den Speicheraufwand während der Inferenz reduzieren kann, der Zustand und der Gradient des Optimierers jedoch immer noch Gleitkommazahlen verwenden und das Training immer noch sehr schwierig ist speicherintensiv. Ich denke, wenn BitNet mit einer Technologie kombiniert werden kann, die beim Training Videospeicher spart, dann kann es im Vergleich zu herkömmlichen Netzwerken mit halber Präzision mehr Parameter bei gleicher Rechenleistung und gleichem Videospeicher unterstützen, was große Vorteile haben wird.

Die aktuelle Möglichkeit, den Grafikspeicher-Overhead des Optimierungsstatus zu sparen, ist das Auslagern. Eine Möglichkeit, den Speicherverbrauch von Farbverläufen zu sparen, könnte ReLoRA sein. Allerdings wurde im ReLoRA-Papierexperiment nur ein Modell mit einer Milliarde Parametern verwendet, und es gibt keinen Beweis dafür, dass es auf Modelle mit Dutzenden oder Hunderten Milliarden Parametern verallgemeinert werden kann.

Das 6-seitige Papier von Microsoft explodiert: Ternäres LLM, so lecker!

△Bildquelle: Zhihu, zitiert mit Genehmigung

Einige Internetnutzer haben jedoch Folgendes analysiert:

Wenn das Papier etabliert ist, können wir ein 120-B-Großmodell auf einer 24-GB-GPU der Verbraucherklasse ausführen.

Das 6-seitige Papier von Microsoft explodiert: Ternäres LLM, so lecker!
Das 6-seitige Papier von Microsoft explodiert: Ternäres LLM, so lecker!

Was haltet ihr von dieser neuen Methode?

Das obige ist der detaillierte Inhalt vonDas 6-seitige Papier von Microsoft explodiert: Ternäres LLM, so lecker!. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:51cto.com. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen