首页/问答百科/位置编码(Positional Encoding)
🔧 技术与方法

位置编码(Positional Encoding)

位置编码位置嵌入Positional Encoding旋转位置编码RoPE

位置编码是 Transformer 架构中的关键组件,通过向输入序列注入位置信息来弥补自注意力机制不具备序列顺序感知的先天缺陷。


位置编码是什么

位置编码(Positional Encoding,简称 PE)是 Transformer 模型中不可或缺的组件。由于自注意力机制本身是排列不变的,即它不会区分"我打你"和"你打我"中词语顺序的差异,因此必须显式地将位置信息注入模型。

绝对位置编码

原始 Transformer 使用固定频率的正余弦函数编码位置,使位置编码具有确定性、无需训练,且能外推到训练时未见过的序列长度。BERT 则使用可学习的绝对位置嵌入。

旋转位置编码(RoPE)

RoPE(Rotary Position Embedding)是目前大语言模型中最主流的位置编码方式,被 LLaMA、Qwen、Mistral 等模型采用。RoPE 的核心是将位置信息通过旋转矩阵作用于 query 和 key 向量,使内积结果天然包含相对位置信息。

ALiBi

ALiBi(Attention with Linear Biases)是另一种高效的相对位置编码方案,直接在注意力分数上加上与相对距离成正比的负偏置,越远的 token 被衰减越多。


相关术语

分享: