这篇AI论文提出了保留网络(RetNet)作为大型语言模型的基础架构:实现训练并行性、低成本推理和良好的性能
This AI paper proposes RetNet as the foundation infrastructure for large-scale language models achieving training parallelism, low-cost inference, and good performance.
Transformer(变压器)最初是为了解决循环模型中的顺序训练问题而开发的,后来被公认为大型语言模型的事实标准架构。变压器的每一步的O(N)复杂度和内存限制的键值缓存使其不适合部署,牺牲训练并行性以换取较差的推理能力。序列长度的增加会降低推理速度,增加延迟,并消耗更多的GPU内存。下一代架构在保持训练并行性和竞争性性能的基础上,继续广泛发展,同时具有有效的O(1)推理。
图1中的“不可能的三角形”说明了要同时实现上述目标是多么困难。目前存在三个关键的研究方向。为了以循环形式重写自回归推理,线性化注意力首先用核函数ϕ(q)·ϕ(k)近似传统的注意力分数exp(q . k)。该方法的普及度可以提高,因为它的性能和模型效果都比变压器差。第二个方向放弃并行训练,而采用循环模型进行有效的推理。采用逐元素操作来进行加速修复,但这会损害表示能力和性能。对于注意力,第三个研究方向研究了替代机制,例如S4及其变体。
与变压器相比,目前还没有明显的赢家,因为之前的工作都无法摆脱僵局。来自微软研究和清华大学的研究人员提出了保持网络(RetNet),它同时提供了低成本推理、有效的长序列建模、与变压器可比较的性能和并行模型训练。他们特意提供了一个多尺度保持机制,具有相似的、循环的和块循环的表示形式,以替代多头注意力。首先,由于并行表示,训练并行性可以充分利用GPU设备。其次,循环表示使得在内存和计算方面可以进行高效的O(1)推理。部署成本和延迟都可以大大降低。
没有键值缓存技术,该方法也更加简单。第三,可以使用块循环表示进行有效的长序列建模。他们重复对全局块进行编码以节省GPU内存,同时对每个局部块进行编码以加快处理速度。为了与变压器及其派生物进行比较,他们进行了全面的试验。根据语言建模的实验结果,RetNet在扩展曲线和上下文学习方面一直保持竞争力。此外,RetNet的推理成本与序列长度无关。
对于7B模型和8k序列长度,RetNet的解码速度比具有键值缓存的变压器快8.4倍,使用的内存少70%。与普通的变压器相比,RetNet在训练加速时节省了25-50%的内存,并优于高度优化的FlashAttention。RetNet的推理延迟不受批量大小的影响,实现了极高的吞吐量。由于其迷人的特点,RetNet是大型语言模型的强力替代品。