跳到主内容
快讯直播
AI智模界
AI 词典

ALiBi:不学位置,只按距离扣分

一句话定义:ALiBi(Attention with Linear Biases,线性偏置注意力)是一种位置处理方案——模型完全不往词向量里加位置编码,而是在算注意力分数时,按"这两个词隔多远"扣分。

它到底做了什么

Transformer 的注意力本质是集合运算:谁跟谁相关就打高分,跟顺序无关。所以必须额外告诉它"谁在前、谁在后"。主流有两条路:一是绝对位置编码(absolute positional embedding),把位置信息揉进词向量;二是相对位置偏置(relative position bias),按两个词的相对距离给注意力加分或减分。

ALiBi 走第二条路,但做得极简。词向量里什么都不加,注意力原始打分(query 和 key 的点积)出来之后,如果第 i 个词在看前面的第 j 个词,就减掉 m × (i − j)。这里的 m 是每个注意力头(head)固定好的斜率,不学习、不训练,不同的头给不同的 m——斜率大的头衰减快,只管近处;斜率小的头衰减慢,能看很远。

打个比方:公司开会,每个人发言的分量先由内容决定,再按座位距离打折——隔一排扣 1 分,隔两排扣 2 分,隔十排扣 10 分。近处的人天然更容易被听见,远处的人除非内容特别硬,否则压不过来。

为什么它反而更擅长外推

关键在"公式"和"查表"的区别。

可学习的绝对位置编码本质是查表:位置 0 到 1023 各有一个训练出来的向量,位置 1024 没学过,模型只能瞎猜。ALiBi 不需要表,它只做一次减法乘法——训练时最长见过 1024 个词,推理时喂 4096 个词,"隔 3000 个位置扣 3000m 分"照样算得出来。而且模型在训练中已经学会了"越远越不可信"这个模式,序列变长只是把同一模式继续延伸。距离越远扣得越多,也保证注意力不会被长序列摊薄到失控。

方案位置信息怎么进入有可学参数长度外推
可学习绝对位置编码加到词向量有,每个位置一个差,超长位置没学过
正弦位置编码加到词向量无一般
相对位置偏置(T5 式)加到注意力分数有,按距离分桶中等,靠分桶截断
RoPE旋转 Q/K无一般,通常要配插值等技巧
ALiBi加到注意力分数无较好,任意距离都能算

注意:不加位置编码 ≠ 不知道位置。位置信息以"扣分规则"的形式进了注意力权重,只是走的不是向量加法。

对从业者的意义

实现几乎零成本:几十行代码,不增加参数和显存,训练推理都便宜。想"短上下文训练、长上下文推理"时,它是最省事的选项之一,适合长文档、长对话、代码仓库这类输入远超训练长度的场景。

但它不是万能药:外推不是无限有效,拉到特别长时质量仍会下降;固定线性衰减也是一种比较强的先验,未必适合所有任务。今天更主流的是 RoPE 加各种插值方案,ALiBi 更多见于一批早期长上下文开源模型(如 BLOOM、MPT 一系)。具体某个模型用没用、怎么配,以官方页面为准。

AI 生成本文由 AI 基于公开信息自动生成,仅供参考。