加载中...
YaRN 是一种高效扩展大语言模型上下文窗口的技术,通过重新缩放旋转位置编码(RoPE)的频率,让模型在少量继续训练甚至无需训练的情况下,处理远超原始训练长度的文本。

| 中文名 | YaRN 上下文扩展 |
| 提出时间 | 2023 年 |
| 类别 | 位置编码方法 |
| 基础 | 旋转位置编码 |
| 用途 | 扩展上下文窗口 |
YaRN(Yet another RoPE extensioN method)是一种用于扩展大语言模型上下文长度的位置编码插值方法,通过按频率分段缩放旋转位置编码,使模型能够外推到训练时未见过的更长序列。
大语言模型在预训练时通常固定了最大序列长度,例如四千或八千个词元。当输入超过该长度时,基于旋转位置编码的模型会因位置索引超出训练分布而性能骤降。YaRN 由 Bowen Peng 等人于二零二三年提出,是位置插值(PI)与 NTK 感知插值思路的改进,能以极低的继续训练成本把上下文窗口扩展数倍甚至数十倍。
旋转位置编码把不同维度对应到不同旋转频率。YaRN 的关键在于对高频与低频维度采取不同处理策略。
这种分频段处理使得 YaRN 只需在少量长文本上继续训练很短时间,即可稳定支持更长上下文。
YaRN 被广泛用于把开源模型的上下文窗口从数千扩展到数万乃至数十万词元,适用于长文档问答、代码库级理解、长对话记忆等任务。许多主流开源模型的长上下文版本都采用了 YaRN 或其变体。
问:YaRN 一定需要继续训练吗?答:不一定。YaRN 支持零训练的动态外推,但配合少量长文本微调效果更稳定,尤其在扩展倍数较大时。
问:YaRN 与位置插值有何区别?答:位置插值对所有维度统一压缩,容易损伤高频局部信息;YaRN 按频率分段处理并加入注意力缩放,长上下文下的困惑度更低。

| 中文名 | YaRN 上下文扩展 |
| 提出时间 | 2023 年 |
| 类别 | 位置编码方法 |
| 基础 | 旋转位置编码 |
| 用途 | 扩展上下文窗口 |
登录 后参与讨论
暂无讨论,来发表第一条评论吧