Nachricht

Es sind nur 3,8B-Parameter aktiviert und die Leistung ist vergleichbar mit dem gleichen 7B-Modell!Es kann die Schulungsfeinabstimmung von Microsoft verwendet werden

2024-07-18

한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina

  • Crecy stammt aus dem Aofei-Tempel
    Qubits |. Öffentliches Konto QbitAI

Es müssen nur 60 % der Parameter aktiviert werdenEs kann eine Leistung erzielen, die mit dem vollständig aktivierten dichten Modell vergleichbar ist.

Eine neue Studie von Microsoft Research Asia setzt das Modell umVöllig spärliche Aktivierung, was den Argumentationsaufwand erheblich reduziert.

Und es hat ein breites Anwendungsspektrum, egal ob es sich um ein Training von Grund auf, um eine kontinuierliche Schulung oder um eine Feinabstimmung handelt, es kann eine wirksame Unterstützung bieten.



Die Methode wird aufgerufenQ-Sparse, erreicht Modellsparsity auf Neuronenebene und ist detaillierter als andere Methoden. Unter dem gleichen Argumentationsaufwand sind sowohl die Leistung als auch die Sparsity-Rate besser.

Im Namen bezieht sich Q auf Quantisierung, was bedeutet, dass es neben gewöhnlichen Modellen auch Quantisierung bedeutetKompatibel mit Quantifizierungstechniken, geeignet für Modelle verschiedener Quantifizierungsmethoden.

Der Autor erklärte weiter, dass durch die Kombination von Q-Sparse mit der Modellquantifizierungstechnologie eine größere Kostenreduzierung und Effizienzsteigerung erreicht werden könne.

Darüber hinaus führte das Team während der Untersuchung von Q-Sparse eine eingehende Untersuchung des Zusammenhangs zwischen Parametergröße, Sparsity-Rate und Modellleistung durch und entdeckte dies„Skalierungsgesetz“ zur Modellinferenzoptimierung

Einige Internetnutzer glauben, dass diese Technologie tatsächlich gut und besser als ReLU ist.



Andere schalteten den Wunschmodus ein und sagten, es wäre großartig, wenn (AMDs) ROCm diese Technologie schneller unterstützen könnte als Nvidia.



Implementieren Sie die Sparsifizierung mithilfe der Top-K-Funktion

Die von Q-Sparse ausgeführte Kernoperation istWenden Sie die Top-K-Sparsifizierungsfunktion auf den Eingabetensor an

Insbesondere verwendet die Transformer-Architektur nn.Linear lineare Schichten (Matrixmultiplikation) für die Projektion sowohl in der Aufmerksamkeitsschicht als auch in der Feedforward-Schicht, die als Y=X·W^T ausgedrückt werden kann. (wobei X der Eingabetensor ist, W sein Gewicht darstellt und Y der Ausgabetensor ist)

In Q-Sparse wird für einen Eingabeaktivierungstensor X zunächst sein Absolutwert |X| berechnet und sortiert.Finden Sie die K-Elemente mit dem größten Absolutwert unter ihnen

K ist hier ein voreingestellter Hyperparameter, der den Grad der Sparsifizierung bestimmt.

Q-Sparse erstellt dann einen binären Maskentensor M mit der gleichen Form wie X. Für die Positionen, die den K Elementen mit den größten Absolutwerten in einer Reihe entsprechen, ist |.

Führen Sie dann eine Hadamard-Produktoperation (elementweise Multiplikation) für den Eingabetensor X und den Maskentensor M durch, um den dünn besetzten Tensor zu erhalten.X_sparse

Während des Vorwärtsausbreitungsprozesses ersetzt der spärliche Tensor X_sparse den ursprünglichen Eingabetensor X, um an nachfolgenden Berechnungen (z. B. Matrixmultiplikation) teilzunehmen.

Da die meisten Elemente in X_sparse auf Null gesetzt wurden, können der Rechenaufwand und die Anforderungen an die Speicherbandbreite erheblich reduziert werden.



Während der Backpropagation verwendet Q-SparsePass-Through-Schätzer(Straight-Through Estimator, STE) zur Berechnung des Gradienten der Top-K-Funktion.

Bei herkömmlichen Trainingsmethoden ist es normalerweise erforderlich, den Gradienten der Verlustfunktion anhand der Netzwerkparameter zu berechnen und die Parameter mithilfe der Gradientenabstiegsmethode zu aktualisieren, um den Verlust zu minimieren.

Wenn jedoch einige nicht differenzierbare Operationen wie Quantisierung und Top-K im Netzwerk vorhanden sind, tritt bei der Berechnung des Gradienten ein Problem auf, da der Ausgabegradient dieser Operationen an der Eingabe an den meisten Punkten 0 ist, was zur Unfähigkeit führt um den Gradienten effektiv zu verbreiten.

STE vermeidet das Problem des verschwindenden Gradienten, indem der Gradient vor der Sparsifizierung direkt an den Tensor übergeben wird.

Bei der allgemeinen Rückausbreitung beträgt der Gradient der Verlustfunktion L zu x ∂L/∂x=∂L/∂y⋅∂y/∂x, kann jedoch nicht direkt berechnet werden, da er nicht differenzierbar ist.

Die Lösung von STE besteht darin, nur den Gradienten der Verlustfunktion für den spärlichen Tensor y zu berechnen und ihn dann direkt auf den ursprünglichen Tensor x zu kopieren, dh ∂L/∂y direkt als Schätzung von ∂L/∂x zu verwenden.


△Gradientenvergleich mit/ohne STE

Für die Feedforward-Schicht verwendet Q-SparseQuadratische ReLU-FunktionAnstelle der herkömmlichen ReLU-Aktivierungsfunktion kann die Quadratoperation die Sparsität der Aktivierung weiter verbessern (⊙ stellt das Hadamard-Produkt dar).



Um sich an das Quantisierungsmodell anzupassen, quantisiert Q-Sparse außerdem zunächst den Eingabetensor, bevor die Top-K-Sparseness angewendet wird, um sicherzustellen, dass die Sparseness-Operation mit der Quantisierungsdarstellung kompatibel ist. Seine Funktion wird wie folgt ausgedrückt:



Unter diesen ist ε eine kleine Konstante, die verwendet wird, um zu vermeiden, dass der Nenner Null ist.

Insbesondere für 1-Bit-quantisierte Gewichte verwendet Q-Sparse die folgende Quantisierungsfunktion, wobei α der durchschnittliche Absolutwert des Gewichtungstensors W ist.



60 % Aktivierungsparameter erzielen den gleichen Effekt

Vergleichsexperimente zeigen, dass Q-Sparse hinsichtlich der Sparsity-Rate und der Modellleistung deutlich besser ist als die vorherige ReLU-Methode.



In Bezug auf die spezifischen Auswirkungen von Q-Sparse bewertete der Autor seine Leistung bei drei Aufgaben: Scratch-Training, kontinuierliches Training und Feinabstimmung.

Trainiere von Grund aufDas im Experiment verwendete Modell ist Llama. Die Ergebnisse zeigen, dass Q-Sparse mit 70 % Top-K (d. h. 40 % der gesamten Sparsity-Rate) einen mit dem dichten Modell vergleichbaren Trainingsverlust erzielen kann Grundlinie.



weiter trainierenDer Zweck besteht darin, das dichte Modell auszusparen, und das experimentelle Objekt ist hier Mistral-7B.

Wenn die Aktivierungsparameter 2,9B und 3,8B betrugen, sanken die Ergebnisse des Modells in ARC, MMLU und anderen Datensätzen daher nicht wesentlich.



existierenFeinabstimmungIm Experiment zeigte Q-Sparse sowohl für das Qwen-7B- als auch für das Mistral-7B-Modell ähnliche Ergebnisse wie ein fortgesetztes Training, wobei etwa 60 % der Aktivierungsparameter verwendet wurden, um eine Leistung zu erzielen, die dem dichten Modell sehr nahe kommt.



Diese Ergebnisse bedeuten, dass bei gleicher Leistung im Vergleich zu dichten ModellenSparse-Aktivierungsmodelle können die Aktivierungsparameter während der Inferenz erheblich reduzieren, wodurch die Anzahl der verbrauchten FLOPS reduziert wird.

Für das quantitative Modell wandte das Team Q-Sparse auf das selbst entwickelte BitNet b1.58-Modell an und führte Schulungen und Auswertungen an mehreren Datensätzen durch.

Es ist ersichtlich, dass auf beiden Skalen von 700M und 7B die Konvergenzgeschwindigkeit und der endgültige Verlustfunktionswert des quantisierten Modells mit Q-Sparse mit dem quantisierten Modell ohne Q-Sparse (BitNet b1.58) vergleichbar sind.

Dies zeigt, dass Q-SparseLässt sich nahtlos in quantitative Modelle integrieren, ohne das Training und die Konvergenz des Modells wesentlich zu beeinträchtigen.

Demnach glaubt der Autor, dass die Kombination von Q-Sparse mit Quantisierungstechnologie die Effizienz großer Sprachmodelle in der Inferenzphase weiter verbessern kann.



Entdecken Sie das neue „Skalierungsgesetz“ zur Inferenzoptimierung

Neben der Bewertung der Leistung dieser Modelle bei Verwendung einer Sparse-Aktivierung untersuchte der Autor auch die Beziehung zwischen Modellleistung, Skalierung und Sparsity-Rate und machte einige neue Entdeckungen.

Leistungsskalierungsgesetz von Modellen mit geringer Aktivierung: Der Autor stellte fest, dass die Leistung von Modellen mit geringer Aktivierung, ähnlich wie bei dichten Modellen, auch einer Potenzgesetz-Skalierungsbeziehung folgt.

Insbesondere kann bei gegebener Sparsity-Rate S der Verlustfunktionswert L(N,S) des Modells bei Konvergenz durch die folgende Formel angenähert werden:



Unter diesen ist N die Anzahl der Modellparameter; E ist eine Konstante, die den Verlust des Modells im Unendlichen darstellt; A(S) ist ein Skalierungsfaktor, der sich auf die Sparsity-Rate S bezieht.

Dieses Skalierungsgesetz zeigt, dassverdünnenspärlichDie Leistung von Aktivierungsmodellen verbessert sich mit zunehmender Größe des Modells, die Verbesserungsrate verlangsamt sich jedoch allmählich



Gleichzeitig stellte der Autor fest, dass die Leistung des Modells auch von der Sparsity-Rate beeinflusst wird.

Wie im Abschnitt über die Beziehung zwischen Parameterskala und Leistung erwähnt, ist A(S) ein Skalierungsfaktor im Zusammenhang mit der Sparsity-Rate S, der durch die folgende Formel angenähert werden kann:



Dabei sind B und C Konstanten und β ein Parameter, der die exponentielle Abfallrate steuert.

Diese Formel zeigt, dass es bedeutet, wenn die Sparsity-Rate S zunimmt (das Modell wird spärlicher).Höhere Sparsity-Raten führen zu Leistungseinbußen, die Abnahmerate ist exponentiell.



Basierend auf den obigen Erkenntnissen hat der Autor eine optimale Sparsity-Rate S* für die Inferenz abgeleitet, die den Wert der Modellverlustfunktion minimieren kann, wenn das Budget (Gleitkommaoperationen während der Inferenz) konstant ist.

Für das Modell mit voller Genauigkeit (FP32) liegt die optimale Sparsity-Rate bei etwa 45,58 %, während die optimale Sparsity-Rate für das Modell mit niedriger Genauigkeit (z. B. 1,58 Bit) höher ist und etwa 61,25 % beträgt.



Die Autoren stellten fest, dass mit zunehmender Modellgröße die Leistungslücke zwischen Modellen mit geringer Aktivierung und Modellen mit hoher Dichte allmählich kleiner wird.

Dies lässt sich anhand des Skalierungsgesetzes erklären: Wenn die Modellgröße N gegen Unendlich tendiert, tendiert der Verlustfunktionswert des spärlichen Aktivierungsmodells zu L(∞,S)=E, während der Verlustfunktionswert des dichten Modells zu L tendiert (∞,0 )=E.

Dies bedeutet, dass es in extrem großen Maßstäben möglich ist, dass Modelle mit geringer Aktivierung eine mit dichten Modellen vergleichbare Leistung erzielen, was eine nützliche Referenz für das Entwerfen und Trainieren von Modellen mit geringer Aktivierung in großem Maßstab darstellt.

Papieradresse: https://arxiv.org/abs/2407.10969