mc_mean_and_stderr,全书凡是报告带误差棒的蒙特卡洛估计,都会用到它。
A.1 蒙特卡洛估计与误差棒
强化学习中许多关键量都写成期望,而实际训练通常无法精确求出它们:目标 、梯度、通过率(pass rate)。我们通过采样来估计它。给定随机变量 的独立同分布样本 ,其均值为 、方差为 ,样本均值 是无偏(unbiased)的,即 ,其方差(variance)为 标准误(standard error) 是估计值的标准差。实际中 未知,用样本标准差 代替。由中心极限定理, 是一个近似的 95% 置信区间(confidence interval)。误差按 收缩:样本数增加到四倍,误差减半。A.2 和的方差
一条轨迹(trajectory)的回报(return)是奖励之和,一个策略梯度(policy gradient)估计是逐 token 项之和。和的方差为 对独立的项,协方差为零,方差随 线性增长;对正相关的项,方差增长得更快。若各项方差均为 、两两相关系数为 ,则 项均值的方差为 当 时,它不会随 趋于零。具有共同成因的样本,例如同一提示的 个补全,或一条轨迹中的许多 token,所携带的信息比其数量所暗示的要少。有效样本量(effective sample size)为 。 我们给组内每个成员一个共享分量加一个独立分量来生成相关样本,并把实测的组均值方差与公式对比。A.3 控制变量
假设我们要估计 ,并知道另一个函数 ,其均值 精确已知。那么对任意常数 , 仍然无偏,其方差为 。对 求最小值得到 与 的相关性越强,消去的方差越多,而 的均值并不需要接近 的均值。策略梯度中的基线(baseline)就是一种控制变量(control variate):第 6 章减去 ,由 A.5 节可知其期望恰好为零。这里用 、、 检验该公式,其中 。A.4 重要性采样
我们常常需要某个分布 下的期望,手头却只有来自另一个分布 的样本。在强化学习中, 是当前策略(policy), 是生成数据的旧策略或推理引擎(inference engine)。若在 处都有 ,则 重要性加权估计量是无偏的,但分布失配可能使它的方差很大: 期望中的因子 使得在 的概率远高于 的区域方差很大。一个有用的诊断量是权重的有效样本量 :所有权重相等时它等于 ,某个权重占主导时它趋近 1。 在一个类别分布上检验无偏性,分别使用接近 和远离 的 。比率的乘积
对一条 步的轨迹,重要性权重是逐步比率的乘积,。即使每个因子均值为 1、离散程度很小,乘积的方差也随 指数增长。将每个 token 的对数比率建模为均值 的独立高斯变量,这样每个比率的均值恰好为 1。A.5 对数导数技巧
期望对采样分布参数的梯度为 这里用到了 。右侧可以在不对 求导的情况下用样本估计,而 可能是一套测试。这就是得分函数(score-function)估计量,也称 REINFORCE 估计量, 称为得分(score)。令 ,得到使基线合法的恒等式: 在五个结果上的 softmax 分布中检验这两点。自动求导给出 的精确梯度;得分函数估计量则在样本上对 取平均。A.6 KL 散度
从 到 的 Kullback–Leibler 散度(KL 散度)为 全书用到它的三条性质。 非负性。 对凹函数 应用 Jensen 不等式,,等号仅在 时成立。 非对称性。 一般而言 。前向 KL(forward KL) 是最大似然所最小化的量,它惩罚 遗漏数据中的模式。反向 KL(reverse KL) 是常用的强化学习正则项,它用策略的样本来估计,惩罚策略给参考策略(reference policy)概率极低的位置分配较多概率。第 10 章和第 16 章讨论其后果。 链式法则。 对自回归生成的序列,,因此对数比率是 token 上的和,并且 序列 KL 是沿从 采样的前缀,对逐 token KL 求和的期望。这正是逐 token KL 惩罚的依据。下面在一个词表(vocabulary)大小为三的两 token 序列模型上精确检验这一点。A.7 从样本估计 KL
训练时我们无法对所有序列求和,因此用策略与参考策略 之间对数比率在样本 (策略)上的值来估计 KL。记 ,John Schulman 的笔记 Approximating KL Divergence(2020)中针对 的三个估计量(estimator)为 是无偏的,因为它的期望就是定义本身,但它在许多样本上为负,方差也高。 同样无偏,因为 ,所以它是 加上 A.3 节意义下的一个控制变量。由于 ,它总是非负。 有偏(bias),但在 与 接近时方差很低。下面做数值检验。小结
- 对独立样本,蒙特卡洛均值的标准误为 ;
mc_mean_and_stderr计算它,而相关样本的有效样本量更小。 - 均值已知的控制变量保持估计量无偏,并消去其方差中 的比例。策略梯度的基线就是控制变量。
- 重要性采样是无偏的,但其方差随分布间失配程度增大,并随比率乘积的长度指数增长。
- 对数导数技巧把期望的梯度变为 的期望;得分的均值为零。
- KL 非负且非对称,序列 KL 是逐 token KL 之和的期望。在样本估计量中, 和 无偏,且 永不为负。
练习
- 证明重要性采样估计量的方差在 时最小。为什么实践中无法使用这一选择?
- 在 A.4 节中,把比率乘积实验中的 改为 0.03。在什么 时有效样本量降到 10% 以下?与预测值 比较。
- 证明对每个样本都有 ,且 。
- 用均值为 1 的 重做控制变量实验。计算 和方差降低量。为什么它比 时小?
- 改变 A.1 节的一个假设:把 200 个样本取为 25 组、每组 8 个,同组共享一个从 均匀抽取的成功概率。朴素的标准误还能给出 95% 覆盖率吗?用 A.2 节解释结果。
- 设计评审:一位同事用 4,000 条 rollout(500 个任务、每个任务 8 个样本)为通过率计算 95% 区间,并把这 4,000 条都当作独立样本。问题出在哪里?区间应当在什么单元上计算?