RoPE 的旋转角是逐对维度分配的:第 $i$ 对($i=0,\dots,d/2-1$,$d$ 为 head dim)的角频率
$$ \theta_i = \mathrm{base}^{-2i/d}. $$
同一个 base、指数从 0 扫到接近 1——这个形式和正弦 PE 的 $\mathrm{pos}/10000^{2i/d}$ 一脉相承(第 5020 篇),多尺度波长不是巧合而是刻意继承。这篇把"基频怎么选"从惯例问题变成算账问题。
波长账本
第 $i$ 对维度上,相邻位置的相位差是 $\theta_i$,所以这条正弦曲线在位置轴上的波长是
$$ \lambda_i = \frac{2\pi}{\theta_i} = 2\pi\cdot \mathrm{base}^{2i/d}. $$
取 $\log$ 看结构:$\log\lambda_i = \log 2\pi + \frac{2i}{d}\log\mathrm{base}$,波长随维度序号线性铺在对数轴上,相邻维度对的频率比恒为 $\mathrm{base}^{-2/d}$。以 LLaMA 的 $d=128$、base $=10^4$ 为例:$\theta_{i+1}/\theta_i = 10^{-2/32}\approx0.866$,$\lambda$ 从 $\lambda_0=2\pi\approx6.3$ 一路铺到
$$ \lambda_{63} = 2\pi\cdot 10^{4\times\frac{126}{128}} \approx 2\pi\cdot 8660 \approx 5.4\times10^{4}. $$
底数选择的定量约束
关键约束只有一条:最长波长必须显著超过训练上下文长度 $L$,否则最"全局"的维度对在上下文内部就完成一个以上周期——位置 3 与位置 $3+\lambda_{63}$ 在模型看来不可区分,远距离信息直接混叠。形式化要求
$$ \lambda_{\max} = 2\pi\cdot\mathrm{base}^{(d-2)/d} \;\gtrsim\; c\,L,\qquad c \approx 2\sim 4 . $$
代回 2017 年的设定:$L=512$,$\lambda_{\max}\approx5.4\times10^4 \approx 105\,L$——10000 这个底数在当时是"最长波长为上下文百倍"的宽裕选择,并非什么神奇常数。反推最小底数:$\mathrm{base} \gtrsim \big(\frac{cL}{2\pi}\big)^{d/(d-2)}$,对 $L=4096, d=128$ 约为 $10^{3.1}$;base 取 1000 就会在 4k 上下文内出现混叠,这就是"base 不能太小"的硬边界。
三个波长带的分工
把维度按 $\lambda_i$ 相对 $L$ 分类,行为截然不同:
- $\lambda_i \ll L$(高频/短波):一个上下文内振荡几十上百周期,提供局部精度——相邻几个位置的坐标分辨全靠它们。代价是对远距离不提供任何可用信号(相位早已混沌)。
- $\lambda_i \sim L$(中频):句子到段落尺度的距离编码主力,几个周期横跨上下文。
- $\lambda_i \gg L$(低频/长波):在训练范围内相位近似线性($\cos\theta_i \Delta\approx$ 缓变斜坡),相当于给注意力一个"远距方向指针"。
底数越大,整条谱线向右拉伸,更多维度落进"近线性"带——长程指针变多,局部精度维度变少;底数越小反之。这就是调 base 的实际手感:在动局部分辨率和长程覆盖之间搬维度。
Llama-3 的 500000 在优化什么
Llama-2(4k 上下文)沿用 base $=10^4$;Llama-3(8k 上下文)直接把 base 提到 $5\times10^{5}$,$\lambda_{\max}$ 冲到 $2\pi\cdot(5\times10^5)^{126/128}\approx2.2\times10^6$,是上下文的 270 倍。账面上 8k 上下文用 $10^4$ 底数绰绰有余(最小要求约 $10^{3.4}$),提两个数量级的动机只能是谱分布本身:把中频带整体右移,让更多维度承担"段落—篇章"尺度的距离,配合后续 NTK 缩放(第 5080 篇)留出余量。这个改动的代价同样可查:短波带维度数变少,相邻位置分辨的"像素密度"下降,靠模型规模补上。base 从超参数变成架构决策,这是 RoPE 谱系成熟的标志。
小结
底数的选择可以归结为一个不等式 $\lambda_{\max}\gtrsim 2L$,加一个人为偏好:局部精度和长程覆盖之间怎么分配有限的对数频谱。10000 是 2017 年 512 上下文的宽裕解,500000 是 2024 年追求长程覆盖的激进解——两者都服从同一张波长账本。下一篇处理账本的另一面:上下文要翻倍时,这套固定谱线怎么改(NTK 缩放与 YaRN)。