Retentive Network: Преемник Transformer для крупных языковых моделей
Retentive Network: A Successor to Transformer for Large Language Models
July 17, 2023
Авторы: Yutao Sun, Li Dong, Shaohan Huang, Shuming Ma, Yuqing Xia, Jilong Xue, Jianyong Wang, Furu Wei
cs.AI
Аннотация
В данной работе мы предлагаем Retentive Network (RetNet) в качестве базовой архитектуры для крупных языковых моделей, одновременно достигая параллелизма при обучении, низкозатратного вывода и высокой производительности. Мы теоретически выводим связь между рекуррентностью и механизмом внимания. Затем предлагаем механизм удержания (retention) для моделирования последовательностей, который поддерживает три вычислительные парадигмы: параллельную, рекуррентную и блочно-рекуррентную. В частности, параллельное представление обеспечивает параллелизм при обучении. Рекуррентное представление позволяет реализовать низкозатратный вывод со сложностью O(1), что улучшает пропускную способность декодирования, задержку и использование памяти GPU без ущерба для производительности. Блочно-рекуррентное представление способствует эффективному моделированию длинных последовательностей с линейной сложностью, где каждый блок кодируется параллельно, а блоки суммируются рекуррентно. Результаты экспериментов по языковому моделированию показывают, что RetNet демонстрирует благоприятные результаты масштабирования, параллельное обучение, низкозатратное развертывание и эффективный вывод. Эти интригующие свойства делают RetNet сильным преемником Transformer для крупных языковых моделей. Код будет доступен по адресу 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.