模型层 开放阅读

位置编码

Positional Encoding

概念 ID
positional-encoding
更新时间
2026-05-29
来源数量
待补

位置编码

3 秒看懂

Transformer自注意力本身不区分词的先后顺序。位置编码正是加入这种“顺序”信号的机制,让模型明白“第一个词”和“第二个词”的位置关系。主流方案已从最早的“固定正弦波”发展到“旋转位置编码”(RoPE)和“注意偏置”(ALiBi)等相对编码,它们带来更强的长文本外推能力,是当前大语言模型能够支持10万以上token上下文的底层关键之一。

3 分钟产业解释

在大模型竞赛中,长上下文窗口已成为核心卖点(如100K、200K token)。位置编码直接影响模型对长序列的建模能力及训练/推理效率。早期的绝对位置编码(可学习或正弦)在长度超过训练上限时性能急剧下降,而旋转位置编码(RoPE)配合插值、NTK扩展等技术,能以较小代价将上下文窗口轻松扩大数倍。ALiBi则通过简单的偏置项,甚至允许零外推训练。Meta的LLaMA系列、智谱的ChatGLM系列(ChatGLM2及以后版本)采用RoPE;BLOOM等模型曾用ALiBi。位置编码的选择因此贯穿预训练、微调到推理优化全流程,对芯片级计算(如FlashAttention兼容性、KVCache复用)也有深刻影响。

15 分钟专家深入

传统Transformer在计算注意力之前,将位置信息与词嵌入相加:Embedding + Positional Encoding。绝对位置编码为每个位置赋予唯一向量,常见两类:

  • 正弦位置编码:使用不同频率的正余弦函数生成固定编码,无需学习。
  • 可学习位置编码:将位置向量视为可训练参数,如BERT、GPT-2早期版本,但受限于最大训练长度。

相对位置编码则不再依赖绝对位置向量,而是在注意力分数或注意力计算中注入相对位置偏差。典型方法:

  • Shaw et al. (2018) 的相对位置表征:在注意力计算时加入可学习的相对位置嵌入,计算量与相对位置剪裁窗口相关。
  • Transformer-XL 的递推式相对编码:将自注意力分解为基于内容的偏置和基于相对位置的偏置。
  • T5 的相对位置偏置:将相对位置离散分组,每个桶共享一个标量偏置,直接加到注意力logits上。

RoPE(旋转位置编码)通过复平面旋转变换,使向量内积天然携带位置相对信息。其公式为:对每两个维度一组进行旋转,旋转角度随位置线性增长、随维度指数递减。注意力的计算变为 text(Attention)(Q, K) = text(softmax)\left( frac( (R_m Q_m) (R_n K_n)^\top ){sqrt(d)} \right) 其中 R_m 是位置 m 的旋转矩阵,最终内积仅依赖于相对位置 m-n。RoPE 既保留了绝对位置的信息,又具备相对编码的长程衰减特性,且与线性注意力、FlashAttention等高效实现兼容。

ALiBi(Attention with Linear Biases)则最为直接:在原注意分数上减去一个与距离成正比的静态偏置 m \times |j-i|,其中 m 是头相关的斜率。不需要额外参数,无需任何训练即可外推至更长的序列,甚至能实现“长度越外推,某些指标越优”的反直觉现象。但这有赖于合适的斜率设置,通常每头取几何级数斜率。

技术原理

绝对位置编码:正弦编码细节

给定位置 pos 和维度 iPE_{(pos, 2i)} = \sin\left( frac(pos){10000^{2i/d_{text(model)}}} \right) PE_{(pos, 2i+1)} = \cos\left( frac(pos){10000^{2i/d_{text(model)}}} \right) 波长形成几何级数,从 2\pi20000\pi。这种设计鼓励模型学习相对位置关系,因为任意偏移量 k 下,PE_{pos+k} 可由 PE_{pos} 线性变换得到。但实际随着序列变长,高频分量消失,外推性能不佳。

可学习位置编码的局限

矩阵 P \in mathbb(R)^{L \times d} 尺寸固定,训练时 L 即为最大长度。推理时无法输入超过 L 的序列,尽管可以通过位置插值(如将位置索引线性缩放)缓解,但会带来精度损失。

RoPE 的旋转机理

d 维向量拆成 d/2 个子空间,每个子空间视为一个复数,位置 m 对两个分量施加旋转角度 m\theta_i,其中 \theta_i = 10000^{-2i/d}。注意力点积展开:

(R_m q)^\top (R_n k) = q^\top R_{n-m} k

即查询与键的内积仅由相对位置 n-m 决定,完美嵌入相对性。实际实现时,旋转矩阵对 QK 逐元素运算,不增加额外参数,计算开销极低。

ASCII 示意(RoPE 对一个二维子空间旋转):

  k_{2i+1}
      ▲
      |     * R_n k
      |    /
      |   /  angle = n·θ_i
      |  /
      | /___________ ▶ k_{2i}
      O
 同样 R_m q 旋转后,两者点积与 (n-m)·θ_i 相关

ALiBi 的偏置注入

对注意力分数矩阵的第 i 个元素施加偏置:

text(softmax) \left( frac(QK^\top){sqrt(d)} - m \cdot |j-i| \right)

不同注意力头使用不同斜率,某些头捕捉近程依赖(大斜率),某些捕捉远程依赖(小斜率渐近平坦)。典型的斜率设置为几何级数,例如对 n 个头,可令斜率 m = 2^{-(i+1)}i=0,\dots,n-1)。这种方法在训练时甚至不需要对位置建模,极大简化了外推。

关键参数汇总(基于公开方法):

方法参数类型外推能力计算增量兼容性
正弦绝对无参数弱,超过预训练长度下降无额外计算完全兼容
可学习绝对L×d 矩阵弱,受限于矩阵大小加性无额外计算完全兼容
RoPE无额外参数好,配合插值可达数倍对QK施加旋转,成本低需旋转QK,与FlashAttention兼容
ALiBi无额外参数极强,零额外训练外推一个标量偏置偏置静态,不影响注意力核心

技术演进史

  • 2017 原始Transformer提出固定正弦位置编码,直觉来自“距离可线性表达”。
  • 2018 BERT及GPT采用可学习位置嵌入,适配MLM和自回归任务,但限制了文本长度。
  • 2018 Shaw等提出相对位置表征,首次将相对位置信息引入注意力。
  • 2019 Transformer-XL用递推相对编码突破固定上下文长度,首次实现段级别的长度继承。
  • 2019 T5简化相对位置偏置为离散桶标量,计算高效,引领后续研究。
  • 2021 RoPE提出(Su et al.),通过复数旋转在绝对编码中蕴含相对性,迅速被中文大模型社区采用,后成主流。
  • 2021 ALiBi提出,证明只需线性偏置即可完成超强外推,训练极简。
  • 2022-2024 社区在RoPE基础上发展出线性位置插值、NTK-aware缩放、YaRN、Dynamic NTK等方法,使Llama等模型从2K/4K轻松扩展至32K-128K。
  • 2024-2025 围绕KV Cache压缩、SkipClip、ln缩放等技术,让RoPE上下文窗口推至百万token级别。

技术路线对比

维度正弦绝对PE可学习绝对PERoPE (旋转)ALiBi (线性偏置)
核心机制固定三角函数可训练嵌入层Query/Key旋转注意力分数减去距离相关偏置
相对位置建模隐含,需模型学习无,完全绝对显式,内积由相对位置决定显式,偏置直接惩罚远距离
外推能力弱(频率失配)极弱(维度不匹配)中等,配合插值提升至强极强,零额外训练外推
长度上限依赖无硬限,但效果下降刚性上限等于训练矩阵L理论上无限,配合缩放技术实用理论上无限
适配高效Attention极佳,仅加法极佳,仅加法良好,需旋转Q/K,部分融合优化极佳,仅标量减法
代表模型/论文Vaswani et al., 2017BERT, GPT-2Llama, ChatGLM, Qwen, MistralBLOOM, MPNet变体, 部分小模型
多样性头均匀频率网格无特殊设计频率固定但可调每头不同斜率,天然多尺度
社区生态基础实现简单易用长上下文主流方案轻量级强外推

上下游

  • 上游:数据准备阶段需确定最大序列长度,进而决定位置编码的配置(如RoPE的基频、ALiBi斜率)。预训练框架需高效实现自定义位置编码模块,尤其与FlashAttention、张量并行结合(如Megatron中处理RoPE的旋转分散)。
  • 下游:长上下文微调(SFT)依赖位置编码的扩展方案(如位置插值、NTK),推理框架则需支持动态位置编码计算,KV Cache管理也受编码方式影响(例如ALiBi偏置可直接嵌入注意力掩码,不影响缓存)。应用层,超长文档问答、代码库理解和“大海捞针”测试均直接检验编码外推能力。

关键指标

  • 最大有效长度:模型在保持上下文一致性时的最长token数(如通过“大海捞针”测试的阈值)。RoPE系列经过优化可达到256K+。
  • 外推衰减系数:在超出训练长度的序列上,困惑度(PPL)的上升斜率。ALiBi可保持PPL平坦甚至下降。
  • 位置编码计算耗时占比:在长序列推理中,RoPE旋转操作占总注意力的比例<1%(通常可融合),ALiBi的偏置计算几乎可忽略。
  • 内存/存储开销:可学习绝对编码为 L \times d 参数;RoPE和ALiBi无额外参数存储,但对KVCache无影响。以上指标均为定性估计,具体值随模型规模与框架优化变化。
  • 扩展灵活性:支持即插即用的策略数量(如RoPE有线性插值、动态缩放、YaRN等多种扩展,生态丰富)。

供需与市场数据

位置编码本身是技术组件,不单独形成市场。但其对长文本模型的支撑能力间接驱动了应用需求。例如,企业级知识库对百万级token上下文的需求极高,模型厂商(如Anthropic、OpenAI、国内千问、DeepSeek等)纷纷推出128K-1M token上下文模型,直接拉动了对RoPE插值优化和ALiBi等方案的研究投入。开源社区中,RoPE或其变种被众多新发布大规模预训练模型默认采用,表明该方向“供给”已经形成事实标准。然而,从投资角度看,长上下文算力需求(注意力计算为平方级)将成倍增长,间接推高推理芯片与云服务的需求。

代表公司与资本映射

  • Meta:LLaMA系列采用RoPE,是开源长上下文领头羊,间接带动RoPE生态建设。
  • 智谱AI:ChatGLM系列全面使用RoPE,并探索中英文长上下文理解。
  • Anthropic:Claude模型支持长上下文,但具体位置编码方案未公开,早期社区推测可能涉及ALiBi等技巧,尚无官方确认。
  • 微软/DeepSpeed/NF4:在生产优化中深度整合RoPE和FlashAttention,降低长文本训练门槛。
  • 阿里千问(Qwen):使用RoPE并通过动态NTK实现32K~128K窗口,是云服务的核心卖点。
  • 投资视角:那些能够掌握位置编码外推技术并高效落地的团队,能以更低成本跃进长上下文赛道,形成产品差异化。对算力硬件而言,支持高效位置编码的运算单元(如张量核处理旋转操作)成为AI芯片设计的竞争维度之一。

投资逻辑

  • 技术护城河:不同的位置编码方案直接影响模型上限与推理成本。顶尖团队会在此方向上积累大量微调经验(如NTK参数调试、KVCache优化),形成不易复制的工程优势。
  • 成本敏感性:ALiBi几乎不增加推理成本,但训练收敛可能略慢;RoPE需额外的旋转计算,但融合良好。部署经济性决定了在边缘/手机等场景的选择倾向,可能影响端侧AI芯片的设计取舍。
  • 生态锁定风险:一旦模型生态大规模绑定RoPE,硬件厂商必须加法实现其高效计算,否则可能失去竞争力。而新出现的状态空间模型(如Mamba)无需位置编码,可能对现有范式产生冲击,投资需关注该变量。

常见误读纠偏

  • 误读1:“位置编码只是加在词向量上的小把戏,不重要” 纠偏:对长序列而言,位置编码方式直接决定了模型注意力是否能够合理聚焦,错误编码导致远距离词元被“淹没”。许多长上下文能力的突破正是源于位置编码的改进(如RoPE插值),而非模型架构本身。
  • 误读2:“ALiBi完全不需要训练,随便用就行” 纠偏:虽然零额外训练外推表现惊艳,但在大规模预训练下,带有ALiBi从头训练的模型有时收敛速度比RoPE慢,且对特定短文本任务可能略逊。没有任何一种编码在所有任务上都绝对统治,需结合具体场景验证。
  • 误读3:“正弦位置编码天然可任意外推” 纠偏:理论上任意位置都有正余弦值,但频率网格未适配原训练长度分布时,超长序列的高频分量极弱或发生混叠,导致注意力模糊,实际外推受限。

学习路径

  1. 基础篇:阅读《Attention Is All You Need》中位置编码章节,用numpy实现正弦编码并可视化波长变化。
  2. 进阶篇:详读RoPE论文(Su et al., 2021),推导旋转前后内积的等价性;实现一个Mini RoPE层并与绝对编码对比序列分类任务。
  3. 实践篇:动手将HuggingFace GPT-2模型的位置编码从可学习改为相对偏置(T5风格),观察长度外推表现。
  4. 前沿篇:研究YaRN(Yet another RoPE extensioN)和NTK-aware缩放,理解波长分布调整如何影响高频信息捕获,调优Llama模型的上下文窗口。
  5. 拓宽篇:阅读ALiBi论文,尝试在对数长度外推中调试斜率,同时关注Mamba等无注意力模型对位置编码的依赖消解趋势。

一句话总结

位置编码赋予Transformer阅读顺序的灵魂,从绝对正弦到旋转、线性偏置,技术演化直接解锁了大模型“读万卷书”的长文本能力,成为当代LLM的隐形支柱。

延伸阅读与来源

  • Vaswani et al., “Attention Is All You Need”, NeurIPS 2017.(原始正弦位置编码)
  • Shaw et al., “Self-Attention with Relative Position Representations”, NAACL 2018.
  • Dai et al., “Transformer-XL: Attentive Language Models Beyond a Fixed-Length Context”, ACL 2019.
  • Su et al., “RoFormer: Enhanced Transformer with Rotary Position Embedding”, arXiv 2021.(RoPE)
  • Press et al., “Train Short, Test Long: Attention with Linear Biases Enables Input Length Extrapolation”, ICLR 2022.(ALiBi)
  • Peng et al., “YaRN: Efficient Context Window Extension of Large Language Models”, arXiv 2023.(YaRN扩展)
  • Meta AI, “LLaMA: Open and Efficient Foundation Language Models”, arXiv 2023.(RoPE工业应用)
  • 各开源实现:HuggingFace Transformers 中RoPE、ALiBi的具体代码注释。 (以上为公开学术与工业资料,无额外检索数据,具体性能数字请以原始论文量化结果为准。)
source: 公开披露与公开资料整理 本页仅用于产业链学习、信息检索和研究辅助;不构成投资建议,不预测涨跌,不提供买卖、仓位或目标价建议。
完整概念页 复盘 13 节结构 公司投研页 沿产业链找到受益公司 投资课 把概念转成可跟踪模型