DeepMind Perceiver ist eines von immer mehr Programmen, die autoregressive Aufmerksamkeitsmechanismen nutzen, um verschiedene Modalitäten der Eingabe und verschiedene Aufgabenbereiche zu mischen. Andere Beispiele sind Pathways von Google, Gato von DeepMind und data2vec von Meta.
Im März stellte das Team um Andrew Jaegle und Kollegen, das Perceiver entwickelt hat, die „IO“-Version vor. Damit wurde die Ausgabe von Perceiver so erweitert, dass sie mehr als nur Klassifizierung ermöglicht, nämlich eine Vielzahl von Ausgaben mit allen möglichen Strukturen, von der Ausgabe von Textsprache über optische Flussfelder bis hin zu audiovisuellen Sequenzen und symbolischen ungeordneten Mengen. Es kann sogar Bewegungen in dem Spiel StarCraft II erzeugen.
Daten aus der realen Welt sind hochdimensional: ein Buch, ein Bild oder eine musikalische Darbietung kann selbst nach der Komprimierung leicht Hunderttausende von Elementen enthalten. Die am häufigsten verwendeten autoregressiven Modelle, Transformers, sind jedoch unerschwinglich teuer, wenn sie auf die Anzahl der Eingänge und Schichten skaliert werden sollen, die zur Erfassung dieser weitreichenden Struktur erforderlich sind.
In dem Artikel „General-purpose, long-context autoregressive modeling with Perceiver AR“ stellen Jaegle und sein Team die Frage, wie die Modelle skalieren sollten, wenn sie bei diesen multimodalen Eingabe- und Ausgabeaufgaben immer anspruchsvoller werden.
„Wir entwickeln Perceiver AR, eine autoregressive, modalitätsagnostische Architektur, die Cross-Attention verwendet, um weitreichende Eingaben auf eine kleine Anzahl von Latenzen abzubilden und gleichzeitig die kausale Maskierung von Ende zu Ende aufrechtzuerhalten. Perceiver AR kann direkt auf über hunderttausend Token reagieren und ermöglicht so eine praktische Schätzung der Dichte von langen Kontexten, ohne dass dafür manuell erstellte Sparsamkeitsmuster oder Speichermechanismen erforderlich sind. Wenn Perceiver AR auf Bilder oder Musik trainiert wird, erzeugt es Ergebnisse mit klarer langfristiger Kohärenz und Struktur.“
Das Problem ist, dass die autoregressive Qualität des Transformers und jedes anderen Programms, das eine Aufmerksamkeitskarte vom Input zum Output aufbaut, eine enorme Skalierung in Bezug auf die Verteilung über Hunderttausende von Elementen erfordert.
Das ist die Achillesferse der Aufmerksamkeit, nämlich die Notwendigkeit, auf alles und jedes zu achten, um die Wahrscheinlichkeitsverteilung zu erstellen, die die Aufmerksamkeitskarte bildet.
Wie Jaegle und sein Team es ausdrücken, wird dies zu einem rechnerischen Alptraum, wenn die Anzahl der Dinge, die im Input miteinander verglichen werden müssen, steigt:
2Es besteht ein Spannungsverhältnis zwischen dieser Art von langer, kontextbezogener Struktur und den rechnerischen Eigenschaften von Transformers. Transformatoren wenden wiederholt eine Selbstbeobachtungsoperation auf ihre Eingaben an: Dies führt zu Rechenanforderungen, die gleichzeitig quadratisch mit der Eingabelänge und linear mit der Modelltiefe wachsen. Je länger die Eingabedaten werden, desto mehr Eingabetoken werden zu ihrer Beobachtung benötigt, und je subtiler und komplizierter die Muster in den Eingabedaten werden, desto mehr Tiefe wird für die Modellierung der daraus resultierenden Muster benötigt. Berechnungsbeschränkungen zwingen die Benutzer von Transformers dazu, entweder die Eingaben in das Modell zu kürzen (was verhindert, dass viele Arten von weitreichenden Mustern beobachtet werden können) oder die Tiefe des Modells einzuschränken (was ihm die für die Modellierung komplexer Muster erforderliche Ausdruckskraft nimmt).“
Der ursprüngliche Perceiver brachte tatsächlich eine verbesserte Effizienz gegenüber Transformers, indem er die Aufmerksamkeit auf eine latente Repräsentation des Inputs statt direkt ausübte. Dies hatte den Effekt, dass die Rechenanforderungen für die Verarbeitung eines großen Eingabefeldes von den Anforderungen für ein sehr tiefes Netzwerk entkoppelt wurden.
Der latente Teil, in dem die Repräsentationen der Eingaben komprimiert werden, wird zu einer Art effizienterem Motor für die Aufmerksamkeit, so dass „bei tiefen Netzen der Selbstaufmerksamkeitsstapel den größten Teil der Berechnungen ausmacht“, anstatt auf unzählige Eingaben zu reagieren.
Die Herausforderung bestand jedoch darin, dass ein Perceiver keine Outputs erzeugen kann, wie es der Transformer tut, weil diese latente Repräsentation keinen Sinn für Ordnung hat, und Ordnung ist bei der Autoregression wesentlich. Jede Ausgabe soll ein Produkt dessen sein, was vor ihr kam, nicht danach.
„Da jedoch jedes latente Modell alle Eingaben unabhängig von ihrer Position berücksichtigt, können Perceiver nicht direkt für die autoregressive Generierung verwendet werden, die erfordert, dass jede Modellausgabe nur von den Eingaben abhängt, die ihr in der Reihenfolge vorausgehen“, schreiben sie.
Mit Perceiver AR geht das Team noch einen Schritt weiter und fügt Ordnung in den Perceiver ein, um ihn zu dieser autoregressiven Funktion zu befähigen. Der Schlüssel dazu ist die so genannte „kausale Maskierung“ sowohl der Eingabe, bei der eine „Kreuzaufmerksamkeit stattfindet, als auch der latenten Repräsentation, um das Programm zu zwingen, nur auf Dinge zu achten, die einem bestimmten Symbol vorausgehen. Dieser Ansatz stellt die Richtungsqualität des Transformers wieder her, allerdings mit weitaus weniger Rechenaufwand.
Das Ergebnis ist die Fähigkeit, das zu tun, was beim Transformer bei viel mehr Eingaben erfordert, aber mit deutlich verbesserter Leistung.
„Perceiver AR kann lernen, Muster mit langem Kontext über Entfernungen von mindestens 100k Token bei einer synthetischen Kopieraufgabe perfekt zu erkennen“, schreiben sie, im Gegensatz zu einer harten Grenze von 2.048 Token für den Transformer, bei der mehr Token gleichbedeutend mit längerem Kontext sind, was zu mehr Raffinesse in der Ausgabe des Programms führen sollte.
Und Perceiver AR tut dies mit „verbesserter Effizienz im Vergleich zu den weit verbreiteten Decoder-only Transformer- und Transformer-XL-Architekturen und der Möglichkeit, die zur Testzeit verwendete Rechenleistung zu variieren, um ein Zielbudget zu erreichen“.
Konkret wird die Wanduhrzeit für die Berechnung von Perceiver AR bei gleichem Aufmerksamkeitsaufwand drastisch reduziert, und es besteht die Möglichkeit, bei gleichem Rechenbudget einen viel größeren Kontext – mehr Eingangssymbole – zu erhalten:
Der Transformer ist auf eine Kontextlänge von 2.048 Token begrenzt, selbst mit nur 6 Schichten – größere Modelle und eine größere Kontextlänge erfordern zu viel Speicher. Mit der gleichen 6-Schichten-Konfiguration können wir den Transformer-XL-Speicher auf eine Gesamtkontextlänge von 8.192 skalieren. Perceiver AR lässt sich auf 65k Kontextlänge skalieren und kann mit weiteren Optimierungen auf über 100k Kontext skaliert werden.
All das bedeutet Flexibilität bei der Datenverarbeitung: „Dadurch haben wir mehr Kontrolle darüber, wie viel Rechenleistung für ein bestimmtes Modell zum Testzeitpunkt verwendet wird, und wir können einen reibungslosen Ausgleich zwischen Geschwindigkeit und Leistung schaffen.
Der Ansatz, so schreiben Jaegle und seine Kollegen, kann auf jeden Eingabetyp angewendet werden, nicht nur auf Wortsymbole, z. B. auf Pixel eines Bildes. Dasselbe Verfahren lässt sich auf jede Eingabe anwenden, die geordnet werden kann, solange eine Maskierung vorgenommen wird. Zum Beispiel können die RGB-Kanäle eines Bildes in Raster-Scan-Reihenfolge geordnet werden, indem die R-, G- und B-Farbkanäle für jedes Pixel in der Sequenz oder sogar unter verschiedenen Permutationen dekodiert werden.
Die Autoren sehen ein großes Potenzial für Perceiver und schreiben, dass „Perceiver AR ein guter Kandidat für ein universelles, autoregressives Modell mit langem Kontext ist“.
Der Faktor Computereffizienz hat jedoch noch einen weiteren Nachteil. Die Autoren weisen darauf hin, dass in jüngster Zeit versucht wurde, das Rechenbudget für die autoregressive Aufmerksamkeit durch den Einsatz von „Sparsamkeit“ zu verringern, d. h. durch die Begrenzung der Eingabeelemente, die eine Bedeutung erhalten.
Bei gleicher Wanduhrzeit kann der Perceiver AR mehr Eingabesymbole durch die gleiche Anzahl von Schichten laufen lassen oder die gleiche Anzahl von Eingabesymbolen laufen lassen, während weniger Rechenzeit benötigt wird – eine Flexibilität, von der die Autoren glauben, dass sie ein allgemeiner Ansatz für mehr Effizienz in großen Netzwerken sein kann.
Das hat einige Nachteile, vor allem, dass es zu starr ist. „Der Nachteil von Methoden, die Sparsamkeit verwenden, ist, dass diese Sparsamkeit von Hand abgestimmt oder mit Heuristiken erstellt werden muss, die oft domänenspezifisch sind und schwer abzustimmen sein können“, schreiben sie. Dazu gehören Bemühungen wie OpenAI und Nvidias „Sparse Transformer“ von 2019.
„Im Gegensatz dazu zwingt unsere Arbeit den Aufmerksamkeitsschichten kein von Hand erstelltes Sparsamkeitsmuster auf, sondern erlaubt dem Netzwerk zu lernen, welche Eingaben mit langem Kontext zu beachten und durch das Netzwerk zu propagieren sind“, schreiben sie.
„Die anfängliche Cross-Attend-Operation, die die Anzahl der Positionen in der Sequenz reduziert, kann als eine Form von erlernter Sparsamkeit angesehen werden“, fügen sie hinzu.
Es ist möglich, dass die auf diese Weise erlernte Sparsamkeit in den kommenden Jahren ein leistungsfähiges Werkzeug im Werkzeugkasten von Deep-Learning-Modellen sein könnte.
Die digitale Welt verlangt immer mehr nach Lösungen, die nicht nur effizient und schnell sind,…
Es erlaubt das Einschleusen und Ausführen von beliebigem Code. Dem Entdecker der Chrome-Lücke zahlt Google…
Schwachstellen betreffen Linux-Umgebungen und können zur Ausführung von schädlichem Code führen.
Während der US-Markt um 5,6 Prozent wächst, bricht der Absatz in China um 10 Prozent…
Mit der wachsenden Verbreitung digitaler Technologien haben auch die Bedrohungen im Internet in den letzten…
Von fünf Zero-Day-Lücken werden zwei bereits von Hackern eingesetzt. Insgesamt bringt der Oktober-Patchday Fixes für…