Retentive Network: Un successore del Transformer per i modelli linguistici su larga scala
Retentive Network: A Successor to Transformer for Large Language Models
July 17, 2023
Autori: Yutao Sun, Li Dong, Shaohan Huang, Shuming Ma, Yuqing Xia, Jilong Xue, Jianyong Wang, Furu Wei
cs.AI
Abstract
In questo lavoro, proponiamo Retentive Network (RetNet) come architettura di base per i modelli linguistici di grandi dimensioni, raggiungendo simultaneamente parallelismo nell'addestramento, inferenza a basso costo e buone prestazioni. Teoricamente, deriviamo la connessione tra ricorrenza e attenzione. Successivamente, proponiamo il meccanismo di retention per la modellazione di sequenze, che supporta tre paradigmi computazionali, ovvero parallelo, ricorrente e ricorrente a blocchi. Nello specifico, la rappresentazione parallela consente il parallelismo nell'addestramento. La rappresentazione ricorrente permette un'inferenza a basso costo O(1), migliorando il throughput di decodifica, la latenza e la memoria GPU senza sacrificare le prestazioni. La rappresentazione ricorrente a blocchi facilita una modellazione efficiente di sequenze lunghe con complessità lineare, dove ogni blocco viene codificato in parallelo mentre i blocchi vengono riassunti in modo ricorrente. I risultati sperimentali sulla modellazione linguistica mostrano che RetNet ottiene risultati favorevoli in termini di scalabilità, addestramento parallelo, distribuzione a basso costo e inferenza efficiente. Queste proprietà intriganti rendono RetNet un forte successore del Transformer per i modelli linguistici di grandi dimensioni. Il codice sarà disponibile all'indirizzo https://aka.ms/retnet.
English
In this work, we propose Retentive Network (RetNet) as a foundation
architecture for large language models, simultaneously achieving training
parallelism, low-cost inference, and good performance. We theoretically derive
the connection between recurrence and attention. Then we propose the retention
mechanism for sequence modeling, which supports three computation paradigms,
i.e., parallel, recurrent, and chunkwise recurrent. Specifically, the parallel
representation allows for training parallelism. The recurrent representation
enables low-cost O(1) inference, which improves decoding throughput, latency,
and GPU memory without sacrificing performance. The chunkwise recurrent
representation facilitates efficient long-sequence modeling with linear
complexity, where each chunk is encoded parallelly while recurrently
summarizing the chunks. Experimental results on language modeling show that
RetNet achieves favorable scaling results, parallel training, low-cost
deployment, and efficient inference. The intriguing properties make RetNet a
strong successor to Transformer for large language models. Code will be
available at https://aka.ms/retnet.