📍

位置编码(Positional Encoding)

Positional Encoding
技术原理
Transformer架构

位置编码(Positional Encoding)是Transformer架构的关键组件,负责把「词语顺序」信息注入模型。由于Transformer并行处理序列、不像RNN那样天然按顺序读取,模型本身「看不到」词的先后,必须靠额外的位置信号来补充顺序信息。它随2017年Transformer论文一同提出。

为什么需要它

  • 同一句话里「我打你」和「你打我」用词相同、意思相反,全靠顺序区分
  • 注意力机制本身不含顺序概念,如果不注入位置信息,模型会把所有输入当成「同时出现」的词袋
常见方案
  • 正弦余弦编码:早期Transformer用不同频率的正弦、余弦函数为每个位置生成唯一向量,无需训练即可用
  • 可学习位置编码:把位置当作可训练参数,让模型在训练中自行学习(BERT即采用此类思路)
  • 相对位置编码:记录词与词之间的相对距离而非绝对位置,对长序列泛化更好
当前主流:RoPE
  • RoPE(旋转位置编码)把位置信息通过旋转矩阵作用到词向量上,同时保留绝对位置与相对位置信息,支持更长的上下文外推
  • 2023年后,RoPE几乎成为大语言模型的事实标准,主流开源与闭源模型普遍采用
趋势
  • 随着上下文窗口从几千扩展到百万级,位置编码在超长序列下的稳定性与效率仍是研究热点,是扩展上下文的关键一环。

🔗 探索更多 AI 工具板块

除了本板块,AI工具宝箱还有这些独家内容板块,帮你从不同角度发现好工具。

0