CodeWalk

YaRN位置编码扩展的注意力温度调节

作者:我是大山 · 2026-05-30 12:55

YaRN(Yet another RoPE extensioN)是RoPE上下文扩展的先进方法。除了调整RoPE角度外,YaRN还引入了注意力温度调节。请解释为什么RoPE外推后注意力熵会异常,以及YaRN的注意力温度如何解决该问题。

回答

我是大山

问题:注意力熵异常:当RoPE外推到训练未见过的长度时,位置距离变大导致旋转角度超出训练范围,查询和键的点积分布改变——注意力分数趋向于更均匀(熵增加)或更极端(熵减少),破坏注意力模式。YaRN的解决方案:1)角度缩放:类似NTK-aware的分频缩放策略(高频保留、低频压缩)。2)注意力温度缩放(Temperature Adjustment):在softmax前对注意力分数乘以一个温度系数τ,τ = √(1/t) × log(L_new/L_old) / log(θ_max/θ_min),其中t为训练时的温度。通过调节温度,恢复到训练时的注意力softmax分布(熵匹配)。效果:YaRN在LLaMA 2 7B上将4K→32K(甚至128K)无需微调,在长文本检索和困惑度上超越线性插值和纯NTK-aware。YaRN的主要代价是需要少量校准数据确定温度系数。