Onderzoekers van Google ontwikkelden een techniek met de naam Infini-attention, waarmee LLM's oneindig lange tekst kunnen verwerken zonder dat er meer rekenkracht en geheugen nodig is.
De Transformer-architectuur van een LLM zorgt ervoor dat alle tokens in een prompt aandacht krijgen. De complexe punt-product- en matrix-vermenigvuldigingen die het uitvoert zijn kwadratisch in complexiteit.
Dit betekent dat als je het aantal tokens in je prompt verdubbelt, je vier keer zoveel geheugen en verwerkingskracht nodig hebt. Daarom is het zo uitdagend om LLM's te maken met grote contextvensters zonder dat het geheugen en de rekenkracht enorm toenemen.
In een "standaard" LLM gaat informatie aan het begin van de promptinhoud verloren zodra de prompt groter wordt dan het contextvenster. Google's onderzoeksdocument wordt uitgelegd hoe Infini-attention gegevens kan bewaren buiten het contextvenster.
Google presenteert Laat geen context achter: Efficiënte oneindige contexttransformatoren met oneindige aandacht
1B-model dat werd verfijnd op maximaal 5K sequentielengte-passkeyinstanties lost het 1M-lengteprobleem ophttps://t.co/zyHMt3inhi pic.twitter.com/ySYEMET9Ef
- Aran Komatsuzaki (@arankomatsuzaki) 11 april 2024
Hoe werkt Infini-attention?
Infini-attentie combineert technieken voor het comprimeren van geheugen met aangepaste aandachtsmechanismen zodat relevante oudere informatie niet verloren gaat.
Zodra de invoerprompt langer wordt dan de contextlengte van het model, slaat het compressieve geheugen de informatie op in een gecomprimeerd formaat in plaats van het weg te gooien.
Hierdoor kan oudere, minder direct relevante informatie worden opgeslagen zonder dat het geheugen en de rekenkracht oneindig toenemen naarmate de invoer groeit.
In plaats van te proberen alle oudere invoerinformatie te behouden, weegt en vat het compressieve geheugen van Infini-attention de informatie samen die relevant en het bewaren waard wordt geacht.
Infini-attention neemt dan een "vanilla" aandachtsmechanisme maar hergebruikt de sleutelwaarde (KV) toestanden van elk volgend segment in het model in plaats van ze weg te gooien.
Hier is een diagram dat het verschil laat zien tussen Infini-attention en een ander uitgebreid contextmodel Transformer XL.
Het resultaat is een LLM die lokale aandacht geeft aan recente invoergegevens, maar ook continu gecomprimeerde historische gegevens bij zich draagt waarop het langetermijnaandacht kan toepassen.
In het artikel wordt opgemerkt dat "deze subtiele maar kritische aanpassing van de aandachtslaag LLM's in staat stelt om oneindig lange contexten te verwerken met begrensde geheugen- en rekenbronnen."
Hoe goed is het?
Google voerde benchmarktests uit met kleinere Infini-attentiemodellen met 1B- en 8B-parameters. Deze werden vergeleken met andere uitgebreide contextmodellen zoals Transformer-XL en Memorizing Transformers.
De Infini-Transformer behaalde significant lagere perplexiteitsscores dan de andere modellen bij het verwerken van inhoud met een lange context. Een lagere perplexiteitsscore betekent dat het model zekerder is van zijn uitvoervoorspellingen.
In de "passkey retrieval" tests vonden de Infini-attention modellen consequent het willekeurige getal dat verborgen zat in tekst tot 1M tokens.
Andere modellen slagen er vaak wel in om de passkey aan het einde van de invoer te vinden, maar hebben moeite om deze te vinden in het midden of aan het begin van een lange inhoud. Infini-attention had geen moeite met deze test.
De benchmarktests zijn erg technisch, maar het korte verhaal is dat Infini-attention beter presteerde dan de basismodellen in het samenvatten en verwerken van lange reeksen met behoud van context over langere perioden.
Het is veelzeggend dat het deze superieure retentiecapaciteit behield terwijl het 114x minder geheugen nodig had.
De benchmarkresultaten overtuigen de onderzoekers ervan dat Infini-attention geschaald kan worden om extreem lange invoerreeksen te verwerken, waarbij het geheugen en de rekenkracht beperkt blijven.
De plug-and-play aard van Infini-attention betekent dat het gebruikt kan worden voor voortdurende pre-training en fine-tuning van bestaande Transformer-modellen. Dit zou hun contextvensters effectief kunnen uitbreiden zonder dat het model volledig opnieuw getraind hoeft te worden.
Contextvensters zullen blijven groeien, maar deze aanpak laat zien dat een efficiënt geheugen een betere oplossing kan zijn dan een grote bibliotheek.