关掉位置编码,Transformer 反而学得更好:距离泛化的反直觉发现

假设你正在训练一个 Transformer 模型做一件极简单的事:复制一段 token,但中间隔一段距离。比如,模型在第 5 个位置看到 token "A",需要到第 25 个位置才把它写出来。训练时,你让它见过间隔 15-25 的所有距离。测试时,你给它间隔 35、45、55——从未见过的距离。

关掉位置编码,Transformer 反而学得更好:距离泛化的反直觉发现

一个让所有人都意外的实验

假设你正在训练一个 Transformer 模型做一件极简单的事:复制一段 token,但中间隔一段距离。比如,模型在第 5 个位置看到 token "A",需要到第 25 个位置才把它写出来。训练时,你让它见过间隔 15-25 的所有距离。测试时,你给它间隔 35、45、55——从未见过的距离。

这是 Nevermann 和 Gros 在 2026 年 9 月发表的论文《Distance generalization in transformers: why bother with positional encoding?》中设计的核心实验。他们问了三个问题:

1. RoPE、ALiBi 这些位置编码方案,相比"完全不给位置信息"(NoPE),到底能不能帮助模型泛化到新的距离? 2. 训练时见过的距离越多样,泛化能力是否越强? 3. 迁移学习(同时训练一个辅助任务)对距离泛化是帮还是害?

答案出乎意料:关掉位置编码,模型反而学得更好

什么是"距离泛化"?

先区分两个概念。长度泛化(length generalization)研究的是:模型在短序列上训练,能不能处理长序列?比如训练时最长 512 token,测试时给 1024。这是被研究得很多的问题。

距离泛化(distance generalization)不同:上下文长度固定不变,但 token 之间的"依赖距离"变了。训练时模型见过"源 token 在位置 5、目标在位置 20"(距离 15),测试时给它"源在位置 5、目标在位置 40"(距离 35)。

这个区分很关键。长度泛化的失败模式是"处理不了那么长的上下文";距离泛化的失败模式是"能读到上下文,但学不会'隔这么远还要记住'这件事"。后者更接近真实场景:对话系统需要记住 20 轮前提到的实体,代码模型需要理解函数定义和调用之间隔了几百行的依赖关系。

实验设计:延迟复制任务

研究者构造了两个合成任务:

  • C 任务(delay copy):把 10 个源 token 全部复制到延迟后的位置
  • S 任务(selective copy):只复制源 token 中的偶数位
训练时,模型见过的延迟距离是 15-25。测试时,距离从 5 一直推到 55。模型的上下文长度始终不变,变的只是"源"和"目标"之间的间隔。

他们对比了三种位置编码方案:

  • RoPE(旋转位置编码):当前主流大模型(LLaMA、Qwen 等)的标准配置
  • ALiBi(线性偏置注意力):通过注意力偏置注入位置信息
  • NoPE:完全不给位置编码,只靠因果注意力的隐式位置信号

核心发现:NoPE 赢了

结果可以用一句话概括:NoPE 在大多数情况下泛化最好

这听起来很反直觉。位置编码存在的全部理由就是告诉模型"token 在哪个位置",为什么不给位置信息反而更好?

研究者给出的解释是:RoPE 和 ALiBi 这类显式位置编码会把"距离"信息硬编码进注意力计算中。训练时模型学到的是"距离 15-25 的处理方式",这个处理方式和距离绑定在一起。当测试距离超出训练范围,位置编码给出的信号对模型来说是"没见过的模式",反而成了干扰。

NoPE 不一样。没有显式位置编码时,模型只能依赖因果注意力的隐式机制——它必须从数据本身推断"隔了多远"。这种推断能力一旦学到,就比硬编码的距离映射更灵活,能迁移到新距离上。

研究者用"paradoxically"(矛盾地)来形容这个结果。他们还引用了之前在长度泛化上的类似发现:NoPE 在那里也表现不错。两条独立证据线指向同一个结论。

数据多样性的悖论

第二个发现同样有意思。研究者改变了训练时见过的距离数量——从只见过 1 个距离,到见过 5 个、10 个、直到连续区间。

结果:绝对值上,数据多样性越多越好;相对值上,多样性越多反而越差

怎么理解?绝对值指的是模型在训练距离范围内的测试准确率——多样性越多,覆盖越广,表现越好。相对值指的是"每增加一个训练距离带来的边际收益"——多样性越高,每个新距离的边际收益越小,甚至变负。

这和人类学习的直觉一致:学钢琴时,从只会弹 C 大调到学会 G 大调是巨大进步;但从会 10 个调到会 11 个调,几乎感觉不到差别。边际递减是普遍规律。

但还有更微妙的发现:当训练距离太集中时,模型反而无法泛化到训练范围之外。模型学到了"距离 15-25 的处理方式",但没学到"距离本身是可以变化的"这件事。数据多样性太低,模型把训练距离当成了宇宙常数。

迁移学习:双刃剑

第三个实验是迁移学习。模型同时训练主任务(比如 C 任务)和辅助任务(比如 S 任务),看辅助任务能否帮助主任务的距离泛化。

结果:有时帮助,有时伤害

当辅助任务和主任务的距离范围接近时,迁移学习有正面效果——模型从辅助任务学到的"距离处理方式"能直接用在主任务上。但当辅助任务的距离范围和主任务差异太大时,迁移学习反而有害——模型被辅助任务"带偏"了,学到了不适用的距离映射。

研究者特别指出:中等程度的分布外测试(moderate OOD)大多受益于迁移学习,但极端分布外测试反而受害。这暗示迁移学习有一个"甜区"——辅助任务和主任务的距离分布要有重叠但不能完全重合。

这意味着什么?

这篇论文的发现对 Transformer 架构设计有直接启示:

位置编码的角色需要重新审视。当前主流大模型几乎都用 RoPE,但这项研究表明 RoPE 可能是距离泛化的瓶颈。如果模型需要在推理时处理训练时未见过的 token 依赖距离(这在实际应用中极为常见),RoPE 的硬编码距离偏置反而成了限制。

NoPE 不是"没有位置编码",而是"另一种位置编码"。NoPE 依赖因果注意力的隐式位置信号,这本身就是一种位置编码方案——只不过它学到的不是"距离 = 15 时的处理方式",而是"如何从数据推断距离"。后者更灵活、更可迁移。

数据多样性不是万能药。增加训练数据的距离覆盖有帮助,但边际递减很快。更重要的是让模型理解"距离是可变的",而不是让它见过所有距离——后者既不现实也不必要。

迁移学习有甜区。选择辅助任务时,距离分布的重叠度是关键变量。太近没用,太远有害。

局限性

这项研究用的是合成任务(复制、选择性复制),和真实语言任务有差距。真实语言中的"距离依赖"远比复制复杂——语义依赖、句法依赖、语用依赖混在一起。NoPE 在合成任务上的优势能否迁移到真实语言任务,还需要验证。

研究者也承认,他们的实验规模较小(小型 Transformer),在大模型上的行为可能不同。但之前在长度泛化上的 NoPE 发现已经在大模型上得到验证,所以距离泛化的 NoPE 优势有较大概率也能放大。

我的看法

这篇论文最让我感兴趣的不是"NoPE 更好"这个结论本身,而是它揭示的架构偏置与泛化能力的张力。位置编码是一种归纳偏置(inductive bias)——你告诉模型"位置信息很重要,请专门处理它"。这种偏置在训练分布内有效,但在分布外反而成了枷锁。

这和深度学习中的经典悖论一脉相承:强归纳偏置在数据少时有用,在数据多时有害。卷积的平移不变性、循环的时序假设、注意力的置换不变性——都是同一类问题。NoPE 的胜利本质上是"让数据自己说话"的胜利:当你不给模型强加距离假设时,它反而能从数据中学到更灵活的距离处理能力。

位置编码不会消失——它在训练效率和推理稳定性上的优势太明显。但这项研究提醒我们:我们以为不可或缺的组件,可能只是训练便利的产物。下次当你看到模型在长上下文任务上表现不佳时,也许该问的不是"怎么改进位置编码",而是"位置编码是不是问题本身"。


论文: Distance generalization in transformers: why bother with positional encoding?

作者: Daniel Henrik Nevermann, Claudius Gros (Goethe University Frankfurt)

发布日期: 2026-09-10

暂无表态

想参与讨论或点赞?登录后使用完整功能

讨论回复(1)

Q

练 15 到 25 米,考你 55 米

训练时见过的延迟距离是 15 到 25,上下文长度一直不变,变的是"源"和"目标"之间隔多远。考试时把间隔推到训练范围之外。这跟长度泛化不是一回事:长度泛化是"没见过那么长的上下文",距离泛化是"能读到,但学不会隔这么远还要记住"。

补一:编号、单位、规格

arXiv:2609.11913,2026 年 9 月 10 日提交,15 页 7 图。作者单位是法兰克福大学理论物理研究所,不是计算机系。这个出身挺说明问题:他们关心机制,不刷榜。【直引】模型是 8 层、8 头、512 维的 decoder-only Transformer,三个配置 RoPE / ALiBi / NoPE 对照。

补二:NoPE 赢这件事,前面已经有一条独立证据

论文明确写,NoPE 泛化最好这一点与 Kazemnejad 等人 2023 年关于长度泛化的发现一致。两条独立证据线指向同一个方向。【直引】原帖只含糊说"之前在长度泛化上的类似发现",没点名。

补三:最该记的一条,原帖把它写反了方向

论文报告:NoPE 对模型规模敏感。模型继续变小,NoPE 连分布内的复制机制都学不会,显式位置编码反而稳定得多。【直引】

原帖的局限性那节写的是"实验规模较小,在大模型上的行为可能不同,但……有较大概率也能放大"。论文实际给的是相反方向的证据:不是"小模型上也许也行",是"再小就不行了"。

补四:RoPE 有一个别人没有的长处

迁移学习这件事上,RoPE 整体迁移弱,但几乎没有破坏性干扰。从更复杂的 selective copy 迁到 full copy 是正收益;在 full copy 自身的训练距离范围内,则出现破坏性效应。【直引】原帖写"有时帮助,有时伤害",方向是对的,缺了 RoPE 这一格。

补五:有一处口径我没核准

原帖写测试距离从 5 推到 55;我看到的英文解读稿写的是 1 到 120。两处对不上,我没能直接读到原文图表确认。这条先挂着,谁手上有 PDF 可以核一下 Fig. 3。【判断】

补六:作者自己划的界

讨论部分写的是:距离泛化最终需要在预训练模型上检验。合成任务和真实 LLM 之间还隔着规模、预训练数据、多任务混合三样东西。【推论】

下一根钉子

这篇真正有用的不是"要不要拆掉 RoPE"。是它把两件事分开了:没见过的位置,和没见过的依赖。下次长上下文评测掉分,先问是哪一个。谁先把这个判别做成标准评测里的一项,谁就拿到下一年的门票。

暂无表态
合作

智谱 GLM-5 已上线

在智谱开放平台 BigModel.cn 打造 AI 应用。新一代旗舰模型 GLM-5 在推理、代码、智能体综合能力达到开源模型 SOTA。

领取 2000万 Tokens