一句话定义:相对位置编码(Relative Position Encoding)不是给每个 token 配“第几位”的绝对坐标,而是让注意力根据两个 token 之间的相对距离与方向,学一个偏置加到注意力分数上。T5 的 Relative Bias 是典型实现。
原理:标准注意力用 query 和 key 的点积决定“看谁”。T5 在点积后加一个标量:bias(bucket(i-j))。i-j 是相对距离,近的、远的、左边、右边各有桶。近距离桶细,远距离桶粗;超过最大距离后,通常都落到最后一个桶。每个注意力头可以学自己的偏置,所以有的头偏好左邻,有的头偏好远距离。生活比方:开会不给固定座位号,而是规定“坐你旁边的人多听,隔三排的人少听,某个方向的人多听”,具体权重从数据里学。
和绝对位置编码的区别:绝对位置编码像给每个座位贴编号,模型知道“这是第 5 个 token”;相对偏置只知道“你比我靠前 3 个 token”。前者依赖绝对下标,换长度常要处理编号;后者直接建模关系,通常更稳。
和 RoPE 的区别:RoPE(Rotary Position AI 词典:Embedding">Embedding)不是加可学偏置,而是把 query/key 向量按位置旋转角度,点积自然带上相对距离;它是乘性、无额外偏置参数。T5 Bias 是加性、每个头每个距离桶一个可训练标量。两者都能表达相对位置,但一个像角度编码,一个像查表加偏置。
外推性:相对位置编码不等于无限外推。T5 的桶有最大距离,超出训练范围后更远距离常共享同一个桶,模型没学过新距离的差异,长文本外推可能变差。RoPE 也并非天然无限外推,常要配合插值、缩放等手段。具体以模型官方说明为准。
实际意义:从业者调 T5 类模型时,要关注最大相对距离、桶设置和训练长度;扩上下文不是改个参数就完事。普通人可理解为:翻译、摘要、搜索排序里,词序和“谁靠近谁”很关键;相对偏置让模型更关注局部搭配和方向关系,而不是死记“第几个词”,但仍受训练长度限制。
