论文地址:
整体思路以及计算方式
将相对位置编码引入Linear Attention:
zi=ϕ(qi)⊤∑j=1nebj−iϕ(kj)ϕ(qi)⊤∑j=1nebj−iϕ(kj)vj 引入符号:
vec(M)msb+tMm=m=Mst∈Ra×b∈Rab 引入记号:
D1D2CciB1B2=vec(∑j=1nebj−1ϕ(kj)vj)⋮vec(∑j=1nebj−nϕ(kj)vj)∈Rn×d2=vec(∑j=1nebj−1ϕ(kj))⋮vec(∑j=1nebj−nϕ(kj))∈Rn×d=c0c−1⋮c−(n−1)c1c0⋮c−(n−2)c2c1⋮c−(n−3)⋯⋯⋱⋯cn−1cn−2⋮c0=ebi=vec(∑j=1nϕ(kj)vj)⋮vec(∑j=1nϕ(kj)vj)∈Rn×d2=vec(∑j=1nϕ(kj))⋮vec(∑j=1nϕ(kj))∈Rn×d 那么:
输出:
时间复杂度
训练以及loss
不变。
代码
暂无,但实现起来不困难。
实验以及适用场景
适用于所有linear场景,从性能上来说,提升挺明显。
细节
暂无。
简评
思路挺巧妙,不过时间空间复杂度可能较大,但是总体来说是值得复现的工作。