Retentive Network: A Successor to Transformer for Large Language Models

  • 代码:代码
  • 论文:https://github.com/microsoft/unilm/tree/master/retnet#

让“不可能三角”变得可能。
在这里插入图片描述

2 Retentive Networks

保留网络(RetNet)有L个相同的块,其遵循与Transformer中类似的布局(即Resnet和LayerNorm),每个RetNet块包含两个模块:一个多尺度保留(MSR)模块和一个前馈网络(FFN)模块。

Retention

两个特性:(1)并行表示 (2)循环表示
在这里插入图片描述
参照图中框架的公式。
并行表示
在这里插入图片描述
循环表示
在这里插入图片描述
并行和循环的混合 chunk-wise recurrent
在这里插入图片描述

Multi-scale retention(MSR):

类似于 Multi-head Attention(后面也就是替换成了MSR)
在这里插入图片描述

一个Block的整体框架

(类似于Transformer):
在这里插入图片描述
其中:FFN(X) = gelu(XW1)W2,

Transformer整体架构如下:
在这里插入图片描述

不同之处

在这里插入图片描述
Transformer:思想和Transformer的一个变体Lex Transformer非常类似。保留的推导与xPos一致。与注意力相比,保留消除了softmax,并使循环公式,这显著有利于推理。

Linear Attention:这些变体通常使用各种 Kernel函数 来替换softmax函数。

Attention Free Transformer (AFT): (AFT)简化了点积Attention对元素级操作,并将softmax移动到关键向量。RWKV用指数衰减取代了AFT的位置嵌入,并周期性地运行模型进行训练和推理。相比之下,retention保留了高维状态来编码序列信息,这有助于表达能力和更好的性能。

xPos/RoPE:位置编码相关。与Transformer的相对位置嵌入方法相比,式(3)给出了与xPos [SDP+22]和RoPE [SLP+21]相似的公式。【式3着实没懂】

Sub-LayerNorm:Retention层使用Sub-LayerNorm对输出进行规范化。由于Multi-scale建模会导致Head的不同差异,所以我们用GroupNorm替换了原来的LayerNorm。

4 conclusion

支持:parallel, recurrent, and chunkwise recurrent.【并行,循环,分块循环】

相比于Transformer的优点:
(1)更好的推理效率(在内存、速度和延迟方面)
O(1)的 inference复杂度.;O(N)的长序列内存复杂度
(2)良好的训练并行化
(3)具有竞争力的性能

它可以通过压缩长期记忆来有效地处理structure Prompting

未来方向:

  • 在未来,我们希望在模型大小和训练步骤方面扩大RetNet。
  • 我们还将使用RetNet作为主干架构来训练多模型态大型语言模型
  • 此外,我们对在各种边缘设备上部署RetNet模型也很感兴趣,如移动电话。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值