这是一个非常深刻的问题,直指两种方法在统计效率上的核心差异。方差的变化规律,是理解为什么几何平均在工程上更受青睐的关键

为了清晰地对比,作者依然沿用之前的设定:每个 token 的重要性比率 \(r_t\) 是独立同分布的随机变量,其均值为 \(\mu\),方差为 \(\sigma^2\)。作者考察随着序列长度 \(T\) 的增加,直接乘积 \(P_T\) 和几何平均 \(G_T\) 的方差如何变化

1. 直接乘积 \(P_T = \prod_{t=1}^T r_t\) 的方差

数学推导

由于 \(r_t\) 相互独立,乘积的期望等于期望的乘积。方差的计算稍微复杂一些,但作者可以利用独立随机变量乘积的方差公式:
$$
\text{Var}(P_T) = \mathbb{E}_[P_T^2] - (\mathbb{E}_[P_T])^2
$$
其中:
$$
\mathbb{E}_[P_T] = \prod_{t=1}^T \mathbb{E}_[r_t] = \mu^T
$$
$$
\mathbb{E}_[P_T^2] = \prod_{t=1}^T \mathbb{E}_[r_t^2] = \prod_{t=1}^T (\text{Var}(r_t) + (\mathbb{E}_[r_t])^2) = (\sigma^2 + \mu^2)^T
$$
因此:
$$
\text{Var}(P_T) = (\sigma^2 + \mu^2)^T - \mu^{2T}
$$

方差随 \(T\) 的增长规律
  • 核心观察: 方差由两个指数项构成
  • 当 \(\mu > 1\) 时: 两项都指数级增长,但 \((\sigma^2 + \mu^2) > \mu^2\),所以第一项增长更快。\(\text{Var}(P_T)\) 随着 \(T\) 增加而指数级爆炸式增长
  • 当 \(\mu < 1\) 时: 两项都指数级衰减到 0。但相对而言,\(\text{Var}(P_T)\) 也随着 \(T\) 增加而指数级衰减
  • 当 \(\mu = 1\) 时: 这是重要性采样中最理想但也最脆弱的情况。此时 \(\text{Var}(P_T) = (1 + \sigma^2)^T - 1\)。只要 \(\sigma^2 > 0\)(即 \(r_t\) 不是恒为 1),方差依然随着 \(T\) 增加而指数级增长

结论: 除非 \(r_t\) 恒等于 1(即 \(p\) 和 \(q\) 完全相同),否则直接乘积 \(P_T\) 的方差会随着序列长度 \(T\) 的增加而指数级增长。这就是重要性采样在实际应用中面临的“方差爆炸”问题,导致估计量极其不稳定,几乎不可用

2. 几何平均 \(G_T = \left( \prod_{t=1}^T r_t \right)^{1/T}\) 的方差

数学推导

分析几何平均的方差,更自然的方式是在对数空间进行。令 \(Y_t = \log r_t\),并假设 \(Y_t\) 独立同分布,其均值为 \(\mu_y\),方差为 \(\sigma_y^2\)
那么:
$$
\log G_T = \frac{1}{T} \sum_{t=1}^T Y_t
$$
$$
\mathbb{E}_[\log G_T] = \mu_y
$$
$$
\text{Var}(\log G_T) = \frac{\sigma_y^2}{T}
$$

现在作者想求 \(G_T = \exp(\log G_T)\) 本身的方差。这需要用到对数正态分布的性质。如果 \(\log G_T\) 是正态分布(根据中心极限定理,当 \(T\) 较大时近似成立),那么 \(G_T\) 近似服从对数正态分布。对于一个对数正态变量,其方差为:
$$
\text{Var}(G_T) \approx \left( \exp(\sigma_y^2 / T) - 1 \right) \cdot \exp(2\mu_y + \sigma_y^2 / T)
$$

方差随 \(T\) 的增长规律
  • 核心观察: 方差公式中的关键项是 \(\sigma_y^2 / T\),它出现在指数函数的参数中
  • 当 \(T\) 很小时: \(\sigma_y^2 / T\) 可能比较大,\(G_T\) 的方差可能较大
  • 当 \(T\) 增大时: \(\sigma_y^2 / T\) 趋向于 0
    • 利用近似 \(e^x \approx 1 + x\)(当 \(x\) 很小时),作者有:
      $$
      \text{Var}(G_T) \approx \left( (1 + \frac{\sigma_y^2}{T}) - 1 \right) \cdot \exp(2\mu_y) = \frac{\sigma_y^2}{T} \cdot \exp(2\mu_y)
      $$
  • 关键结论: 随着 \(T\) 的增加,几何平均 \(G_T\) 的方差以 \(1/T\) 的速度衰减到 0

3. 直观对比与总结

为了让你更直观地感受这种差异,作者来看一张对比表(假设 \(\mu = 1, \sigma^2 = 0.1\),即 \(r_t\) 围绕 1 波动):

序列长度 \(T\) 直接乘积 \(P_T\) 的方差 几何平均 \(G_T\) 的方差 对比
1 \(0.1\) \(0.1\) 相同
10 \((1.1)^{10} - 1 \approx 1.59\) \(\approx 0.1 / 10 = 0.01\) 乘积方差是几何平均方差的 159倍
100 \((1.1)^{100} - 1 \approx 13780\) \(\approx 0.1 / 100 = 0.001\) 乘积方差是几何平均方差的 1378万倍
1000 \((1.1)^{1000} - 1 \approx 2.5 \times 10^{41}\) \(\approx 0.1 / 1000 = 0.0001\) 乘积方差是几何平均方差的 \(2.5 \times 10^{45}\)倍

最终结论

特性 直接乘积 \(P_T\) 几何平均 \(G_T\)
方差随 \(T\) 的变化 指数级增长(除非 \(p=q\) 精确成立) 以 \(1/T\) 速率衰减到 0
统计含义 随着序列变长,估计量越来越不可靠,单个样本就能主导整个估计。 随着序列变长,估计量越来越稳定,收敛到真实平均值。
工程后果 训练不稳定,梯度更新被个别长序列的极端权重支配。 训练稳定,长短序列贡献均衡,模型收敛更平滑。

为什么 LLM 的 GSPO 倾向于使用几何平均(或其变体)?
这张方差对比表就是最直接的答案。在长序列(如 \(T=1024\) 或更长)的场景下,直接乘积的方差会天文数字般地爆炸 ,导致任何基于它的学习算法都无法收敛。而几何平均的方差随着序列增长反而越来越小 ,提供了统计学习所需的稳定性。虽然几何平均会引入一些偏差,但在“有偏但稳定”和“无偏但发散”之间,工程实践几乎总是选择前者