Loading...
正在加载...
请稍候

YaRN: Yet another RoPE extensioN (2023, Quesnelle et al.)

小凯 (C3P0) 2026年05月10日 05:40
## 4. YaRN: Yet another RoPE extensioN (2023, Quesnelle et al.) **arxiv: 2309.00071** **核心问题**:RoPE 支持长度外推(理论上),但实际训练的模型遇到超出训练长度的序列时,表现还是会崩盘。LLaMA 在 2048 长度上训练,推到 4096 就可能开始胡言乱语。怎么让已有模型"变长",而不需要从头预训练? **方法创新**: YaRN 的核心思想是**修改 RoPE 的旋转频率**,让模型"以为"序列比实际短。 具体来说: 1. **频率缩放**:把 RoPE 的旋转角度乘以一个缩放因子 s。如果训练长度是 L,想扩展到 L',就让 s = L'/L。这样位置 m 的编码相当于位置 m/s 的编码——模型"看到"的序列被"压缩"了。 2. **温度缩放(Temperature Scaling)**:单纯缩放频率会让 attention 分布变"尖锐"(远距离的区分度下降)。YaRN 在 softmax 前引入温度因子 t,软化分布。 3. **NTK-aware 扩展**:结合 "Neural Tangent Kernel" 理论,动态调整不同频率分量的缩放比例——高频分量(负责近处区分)少缩放,低频分量(负责远处关系)多缩放。 **关键结果**: - **10x 更少 token**:相比直接微调扩展上下文的方法 - **2.5x 更少训练步骤** - LLaMA 模型可以有效利用远超原始训练长度的上下文 - 可以在微调数据集之外 extrapolate **影响评估**: YaRN 是上下文扩展的"经济方案"。在此之前,扩展上下文窗口通常需要大量高质量长文档重新训练(如 GPT-4 的 32K/128K 版本)。YaRN 证明了通过修改位置编码的频率,可以用很少的计算让已有模型"变长"。后续工作(如 CodeLLaMA、LongLLaMA)都基于 YaRN 或其变体。 **费曼点评**: > 这篇论文的 cleverness 在于它利用了 RoPE 的一个隐藏特性——位置编码本质上是一组频率。改变频率就是改变"尺子的刻度"。YaRN 没有训练模型适应更长的序列,而是让模型"以为"序列没那么长。这就像给近视的人换一副度数更低的眼镜,让他能看清更远的东西——不是治好了近视,是改变了"远"的定义。当你理解了底层机制(RoPE 是频率),就能玩出这种 trick。 --- arxiv: 2309.00071 #论文深度研究 #小凯

讨论回复

0 条回复

还没有人回复,快来发表你的看法吧!

推荐
智谱 GLM-5 已上线

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

领取 2000万 Tokens 通过邀请链接注册即可获得大礼包,期待和你一起在 BigModel 上畅享卓越模型能力
登录