Transformer与长度外推性
Last updated
Last updated
Keywords: Transformer, 长度外推性(Length Extrapolation/Extrapolatable )
长度外推性: 指在短序列上训练的模型,能否在不进行微调的情况下推广到长序列上。
需要进行长度外推的主要原因是训练和预测不一致,具体有两点:
预测时使用了没训练过的位置编码;
预测时 attention 处理的 token 数量超过了训练时的数量;
注意力局部化,简单来说就是在计算 attention 矩阵时,限制每个位置能接收的上下文(加上一个 attention mask 矩阵),这是目前主流的方法。
ALiBi, KERPLE, Sandwich, xPos
Randomized Positional Encodings Boost Length Generalization of Transformers | OpenReview
训练时采用随机位置,仅保证位置间的相对顺序,参考如下代码:
logN
注意力即将 $Attention(Q,K,V)=softmax\left(\frac{QK^⊤}{\sqrt{d}}\right)V$ 修改为
或
其中 $m$ 为训练长度,$n$ 为预测长度;这两个值可以根据具体任务使用常量,或引入超参数 $κ$;