Diskussion zum Artikel "Neuronale Netze leicht gemacht (Teil 95): Reduzierung des Speicherverbrauchs in Transformermodellen"

 

Neuer Artikel Neuronale Netze leicht gemacht (Teil 95): Reduzierung des Speicherverbrauchs in Transformermodellen :

Auf der Transformerarchitektur basierende Modelle weisen eine hohe Effizienz auf, aber ihre Verwendung wird durch hohe Ressourcenkosten sowohl in der Trainingsphase als auch während des Betriebs erschwert. In diesem Artikel schlage ich vor, sich mit Algorithmen vertraut zu machen, die es ermöglichen, den Speicherverbrauch solcher Modelle zu reduzieren.

Die Methode MLKV ist eine logische Fortführung der Algorithmen MQA und GQA. Bei den genannten Methoden wird die Größe des KV-Cache durch die Verringerung der KV-Köpfe reduziert, die von einer Gruppe von Aufmerksamkeitsköpfen innerhalb einer einzigen Selbstaufmerksamkeits-Schicht gemeinsam genutzt werden. Ein völlig erwarteter Schritt ist die gemeinsame Nutzung der Entitäten von Schlüssel und Wert zwischen den Schichten der Selbstaufmerksamkeit. Dieser Schritt kann durch die jüngsten Forschungen über die Rolle des Blocks des Vorwärtsdurchgangs im Algorithmus des Transformers gerechtfertigt sein. Es wird davon ausgegangen, dass der angegebene Block den „Key-Value“-Speicher simuliert, der verschiedene Ebenen von Informationen verarbeitet. Am interessantesten ist für uns jedoch die Beobachtung, dass Gruppen von aufeinanderfolgenden Schichten ähnliche Dinge berechnen. Genauer gesagt befassen sich die unteren Ebenen mit oberflächlichen Mustern und die oberen Ebenen mit mehr semantischen Details. Daraus lässt sich schließen, dass die Aufmerksamkeit an Gruppen von Schichten delegiert werden kann, während die notwendigen Berechnungen im Block des Vorwärtsdurchgangs verbleiben. Intuitiv können KV-Köpfe von Schichten mit ähnlichen Zielen gemeinsam genutzt werden.

Die Autoren des Verfahrens MLKV haben diese Ideen weiterentwickelt und bieten einen mehrstufigen Schlüsselaustausch an. MLKV teilt die KV-Köpfe nicht nur unter den Abfrage-Aufmerksamkeitsköpfen in derselben Schicht der Selbstaufmerksamkeit, sondern auch unter den Aufmerksamkeitsköpfen in anderen Schichten. Dadurch kann die Gesamtzahl der KV-Köpfe im Transformer reduziert werden, wodurch ein noch kleinerer KV-Cache möglich wird.

Autor: Dmitriy Gizlyk

 
Und woher weiß man, dass das Netz etwas gelernt hat und nicht nur zufällige Signale erzeugt?
 
Maxim Dmitrievsky #:
Und wie erkennt man, dass das Netz etwas gelernt hat und nicht nur zufällige Signale erzeugt?

Die stochastische Politik des Akteurs geht von einer gewissen Zufälligkeit der Handlungen aus. Im Laufe des Lernprozesses wird der Streubereich der Zufallswerte jedoch stark eingeengt. Der Punkt ist, dass bei der Organisation einer stochastischen Politik 2 Parameter für jede Aktion trainiert werden: der Mittelwert und die Varianz der Streuung der Werte. Beim Training der Politik tendiert der Mittelwert zum Optimum und die Varianz zu 0.

Um zu verstehen, wie zufällig die Aktionen des Agenten sind, führe ich mehrere Testläufe für dieselbe Strategie durch. Wenn der Agent zufällige Aktionen generiert, werden die Ergebnisse aller Durchläufe sehr unterschiedlich ausfallen. Bei einer trainierten Strategie ist der Unterschied in den Ergebnissen unbedeutend.

 
Dmitriy Gizlyk #:

Die stochastische Politik des Akteurs geht von einer gewissen Zufälligkeit der Handlungen aus. Im Laufe des Trainings wird der Bereich der Streuung der Zufallswerte jedoch stark eingeengt. Der Punkt ist, dass bei der Organisation einer stochastischen Politik 2 Parameter für jede Aktion trainiert werden: der Mittelwert und die Varianz der Streuung der Werte. Beim Training der Politik tendiert der Mittelwert zum Optimum und die Varianz zu 0.

Um zu verstehen, wie zufällig die Aktionen des Agenten sind, führe ich mehrere Testläufe für dieselbe Strategie durch. Wenn der Agent zufällige Aktionen generiert, werden die Ergebnisse aller Durchläufe sehr unterschiedlich ausfallen. Bei einer trainierten Strategie wird der Unterschied in den Ergebnissen unbedeutend sein.

Verstanden, danke.