
1. 相同奖励为什么仍会产生更新#
假设一个一步任务只有动作甲、乙,两个动作的奖励都为 1。训练器用标量参数 θ 控制甲的概率:p=σ(θ),其中 σ 是 sigmoid 函数;乙的概率为 1−p。当前 p=0.6。
把动作 log 概率对参数的梯度称为 score,记作 z。它不是任务评分;本例的参数只有一个,所以 score 是标量。由于 sigmoid 满足 ∂θp=p(1−p),两个动作的 score 分别为:
z(甲)z(乙)=∂θ∂logp=p1p(1−p)=1−p=0.4,=∂θ∂log(1−p)=−1−p1p(1−p)=−p=−0.6.
这两个值取决于训练器的参数化 p=σ(θ),不由采样概率决定。
若也用训练器策略采样,甲、乙的采样概率就是 p、1−p,即 0.6、0.4。按“采样概率 × 奖励 × score”相加,两项恰好相消:
期望更新方向=p×1×∂θlogp+(1−p)×1×∂θlog(1−p)=∂θp+∂θ(1−p)=0.
但实际数据可能由另一个采样器生成,再由训练器重算概率并反传。量化、数值实现或参数滞后都可能使两个分布不同,这称为 training-inference mismatch(TIM,训推不一致)。[1]
保持训练器及其 score 不变,假设实际采样器以 0.8 的概率选择甲、以 0.2 的概率选择乙:
原期望更新方向是各动作的“采样概率 × 奖励 × score”之和,尚未乘学习率。本例中两个奖励均为 1,得到:
原始期望更新值=0.8×1×0.4+0.2×1×(−0.6)=0.2.
甲、乙的奖励相同,期望更新却不为零,这就是 SC 要消去的漂移。
2. 减去采样分布下的平均 score#
2.1 相同奖励下,中心化后期望更新为零#
中心化时,先按“采样概率 × score”计算要减去的量:score 中心化修正量=0.8×0.4+0.2×(−0.6)=0.2。Score Centering(SC,score 中心化)再从每个动作的 score 中减去它:
修正后的期望方向仍按“采样概率 × 奖励 × score”计算,只将 score 换成中心化后的值: SC 期望更新方向=0.8×1×0.2+0.2×1×(−0.8)=0。
原来的期望更新从 0.2 变为 0,且不需要改变采样器的动作概率。这里相等的是期望;有限批次中甲、乙的实际数量仍会波动,单批更新不一定为零。
2.2 奖励不同时,仍保留奖励相关的更新#
保持采样概率、训练器概率和 score 不变,只把甲的奖励改成 2,乙保持 1。原更新的期望是 原始期望更新方向=0.8×2×0.4+0.2×1×(−0.6)=0.52;中心化后的期望是 SC 期望更新方向=0.8×2×0.2+0.2×1×(−0.8)=0.16。
中心化并没有把所有更新都消去。在这个例子中,0.16 仍为正,保留了提高较高奖励动作甲概率的方向。
两者相差 0.52−0.16=0.36。平均奖励为 0.8×2+0.2×1=1.8,它乘以平均 score,恰好得到 1.8×0.2=0.36。因此,原来的 0.52 可以分成:(1)平均奖励乘平均 score 的漂移 0.36;(2)中心化后保留的更新 0.16。
3. 逐前缀的中心化更新与推导#
3.1 从两动作例子推广到 token 分布#
对语言模型,固定一个生成位置,将问题与已生成内容组成的前缀记为 s,当前 token 记为 a。实际采样策略记为 μ(a∣s),训练器策略记为 πθ(a∣s),θ 是待更新参数。μ 可以是旧策略,也可以是与训练器数值实现不同的采样器;本次 Actor 反传中将它固定。
动作的 score 为:
z(a,s)=∇θlogπθ(a∣s).
语言模型有多个参数,所以 z(a,s) 是与参数同维度的向量。两动作例子中的 0.4 和 −0.6,是只有一个参数时的特例。
中心化所需的均值按实际采样策略计算:
zˉμ(s)=Ev∼μ(⋅∣s)[z(v,s)]=v∑μ(v∣s)z(v,s).
这里 v 遍历词表中的候选 token。固定前缀与两个策略后,无论本次采中哪个 a,减去的平均向量都相同;它对应例子中的 0.2。只记录采中动作的 score,通常不能精确计算这个均值。
问题记为 q,完整回答记为 y,最终奖励为 R(q,y)。本页只考虑终局评分、没有中间奖励且不做折扣的情形,同一回答的各个 token 共用最终奖励。该位置的单样本上升方向为:
SC 单样本上升方向=R(q,y)[z(a,s)−zˉμ(s)].
SC 改变的是乘奖励之前的 score:先减去采样分布下的平均向量,再用完整回答的奖励加权。Baseline 从奖励中减一个标量;SC 从 score 中减一个向量。 两种操作作用于不同对象。
3.2 原始期望更新的漂移分解#
固定同一前缀 s,假设词表有限、训练器概率为正且可微,奖励与采样策略在本次反传中固定。为简化书写,下面将 z(a,s) 和 zˉμ(s) 简记为 z、zˉμ。
Eμ[⋅∣s] 表示从前缀 s 出发,当前 token 与后续回答都按 μ 生成后取平均。只有 score 出现在括号中时,只需对当前 token 求平均;含有终局奖励时,还要计入后续生成的随机性。固定 s 时可省略条件。
在训练器自己的分布下,概率之和为 1,所以:
Eπθ[z]=a∑πθ(a)∇θlogπθ(a)=a∑∇θπθ(a)=∇θ1=0.
换成 μ 加权后,得到的却是 zˉμ=∑aμ(a)∇θlogπθ(a)。这些权重不再是 πθ(a),上面的消去关系不再自动成立。μ=πθ 时,zˉμ 可能非零。
奖励 R(q,y) 是标量,score z(a,s) 是向量。固定前缀 s,它们的条件协方差定义为:
Covμ(R(q,y),z(a,s)∣s)=Eμ[R(q,y)z(a,s)∣s]−Eμ[R(q,y)∣s]Eμ[z(a,s)∣s].
平均 score 就是 zˉμ(s)=Eμ[z(a,s)∣s]。移项后,原更新分成两部分:
Eμ[R(q,y)z(a,s)∣s]=Eμ[R(q,y)∣s]zˉμ(s)+Covμ(R(q,y),z(a,s)∣s).
(1)漂移项:平均奖励乘平均 score。如果 R(q,y) 恒等于常数 c,协方差为零,原更新仍可能留下 czˉμ(s)。这就是不依赖动作奖励差异的漂移。[1]
(2)协方差项:保留奖励与 score 共同变化的信息。这个协方差项原本就在更新中,中心化后仍会保留;SC 要去掉的是漂移项。
减去固定的平均向量后,score 的均值为零:
Ea∼μ(⋅∣s)[z(a,s)−zˉμ(s)]=zˉμ(s)−zˉμ(s)=0.
再用奖励 R(q,y) 乘中心化后的 score,取条件期望:
Eμ[R(q,y)(z(a,s)−zˉμ(s))∣s]=Eμ[R(q,y)z(a,s)∣s]−Eμ[R(q,y)∣s]zˉμ(s)=Covμ(R(q,y),z(a,s)∣s).
因此,SC 在精确计算均值时消去漂移;奖励恒定时,中心化后的期望更新为零。有限批次的采样更新仍可有波动。
3.3 中心化更新对应的 surrogate loss#
实现时无需为词表中的每个动作分别保存参数梯度向量。把均值写进标量 loss,让自动微分完成求和即可。
用 sg 表示停止梯度,即保留数值但不沿该路径求导,单个 token 的 loss 可以写为:
LSC=−sg(R(q,y))[logπθ(a∣s)−v∑sg(μ(v∣s))logπθ(v∣s)].
括号内第二项对训练器求导,恰好得到 zˉμ(s),所以 −∇θLSC=R(q,y)[z(a,s)−zˉμ(s)]。减号来自我们最小化 loss,而前面写的是上升更新方向。
这里固定的是采样器概率和奖励;训练器的 log 概率保留梯度。
对完整回答 y=(a1,…,aT),T 为生成 token 数,第 t 个前缀为 st=(q,a<t)。在各位置构造上述 token 项后,再按所用方法的 Loss 平均 规则聚合。
4. 中心化与采样校正的数值比较#
沿用甲、乙的奖励和 score,改按训练器的动作概率取平均,得到期望策略梯度 Eπθ[R(q,y)z]=0.6×2×0.4+0.4×1×(−0.6)=0.24,与 SC 的 0.16 不同。
本例的两个 ratio 是 r(甲)=0.6/0.8=0.75 与 r(乙)=0.4/0.2=2。精确重加权得到 重要性重加权的期望更新方向=0.8×0.75×2×0.4+0.2×2×1×(−0.6)=0.24。
所以,消去漂移,不等于把整个采样分布校正成训练器分布。
5. 采样校正与分布近似的局限性#
5.1 Importance ratio 与 SC 的作用区别#
Importance Ratio 在支持集覆盖等条件下,把固定前缀的动作期望从 μ 换到 πθ。精确使用 r(a)=πθ(a∣s)/μ(a∣s) 时,Eμ[rz]=Eπθ[z]=0,这部分漂移为零。
困难在有限样本:极端 ratio 可能造成很大的估计波动。对权重截断或屏蔽后,又不再是原来的精确换分布恒等式。
若 w(a) 是本次固定的截断或屏蔽权重,SC 应中心化的是加权 score,更新为 R(q,y)[w(a)z(a)−Eμ[wz]],而不是简单把 w 乘到原来的中心化结果上。取精确 w=r 时,附加中心化项为零。[1]
上述结论始终针对固定前缀。完整轨迹的采样分布、后续奖励分布以及算法自身的裁剪近似,仍需分别处理。
5.2 组内奖励中心化不能替代逐前缀修正#
GRPO 让同一题各条回答的优势和为零;这些回答可能包含不同前缀。在给定的已采样前缀下,后续优势的条件均值仍可能为正或为负。
因此,题目级的 ∑iA^i=0,不能推出每个前缀的 Eμ[A^∣s]zˉμ(s)=0。组内奖励中心化与逐前缀 score 中心化,处理的对象不同。[1]
5.3 精确均值与实际近似#
SC 需要当前前缀下的采样器概率分布,只保存实际采中 token 的一个 log 概率,通常不够。
实用方案会记录采样器概率最大的若干 token,再按训练器分布的形状补齐剩余概率质量。这是对完整采样分布的近似,并非舍弃尾部概率质量;记录 top-k 概率,也不等于采用 top-k 截断采样。[1]
精确消去漂移的推导使用真实 zˉμ。使用近似均值后,期望更新中可能仍有漂移残差,因此需要检验记录的采样器分布能否准确估计平均 score。
参考资料#
- Score Centering Stabilizes Off-policy Reinforcement Learning(2026,v1). §3–4、附录 A:漂移分解、精确 baseline 关系、loss 与近似。
- Palind:关于 Score Centering 的五种解释(2026). 原文:本文选题与多视角整理的阅读来源;具体方法核对原论文,算例另行构造。
- Bellman Policy Optimization(2026). §3.1–3.2:从 PMD 到 critic-free 目标,以及全词表 KL 到二元 KL 的近似。
- Estimating or Propagating Gradients Through Stochastic Neurons for Conditional Computation(2013). 原文:STE 的一般思想;本文针对 SC 的构造另作代数核对。
补充推导与比较#
以下从四个角度分析 SC:(1)BPO;(2)精确 value baseline;(3)直通估计器;(4)局部分布族。各推导依赖各自的条件,不能据此将完整训练算法视为无条件等价。多视角分析的选题来自 Palind 的整理。[2]
BPO:策略优化目标与 SC 的对应
Bellman Policy Optimization(BPO,贝尔曼策略优化)从另一个问题出发:能否保留策略镜像下降的更新,又不为每个中间前缀训练 Critic? 推导分为三步:(1)求出理想的新策略;(2)用整条回答的概率改写该策略;(3)对目标作近似。[3]
先求理想的新策略。 当前动作选为 a、之后按 μ 继续生成的平均奖励是 Qμ(s,a)=Eμ[R(q,y)∣s,a]。状态价值是 Vμ(s)=∑aμ(a∣s)Qμ(s,a),优势为 Aμ(s,a)=Qμ(s,a)−Vμ(s),因此 Eμ[Aμ∣s]=0。
Policy Mirror Descent(PMD,策略镜像下降)希望提高新策略的平均优势,同时限制它偏离采样策略。令 η>0 控制更新强度,在每个状态求解:
PMD 最优目标值=π(⋅∣s)max{a∑π(a∣s)Aμ(s,a)−η1DKL(π(⋅∣s)∥μ(⋅∣s))},a∑π(a∣s)=1.
固定 s,用拉格朗日乘子 λ 处理概率和约束。对每个 π(a) 求导,得到 Aμ(a)−η−1[log(π(a)/μ(a))+1]+λ=0。把与动作无关的常数并入归一化因子 Zμ(s),该问题的最优策略记为 π⋆:
π⋆(a∣s)=Zμ(s)μ(a∣s)eηAμ(s,a),Zμ(s)=v∑μ(v∣s)eηAμ(s,v).
也就是在原概率上乘一个优势决定的倍数,再归一化:高优势动作的倍数更大。困难仍在于,每个前缀都需要 Aμ(s,a)。
再把中间优势换成终局奖励。 对上式取 log,得 log(π⋆/μ)=ηAμ−logZμ。按 μ 对动作求平均,左侧是 −DKL(μ∥π⋆),优势均值为零,于是 logZμ=DKL(μ∥π⋆)。代回可得:
ηAμ(s,a)=logμ(a∣s)π⋆(a∣s)+DKL(μ(⋅∣s)∥π⋆(⋅∣s)).
注意两个 KL 的方向不同:PMD 目标里是新策略相对 μ;这里是对最优策略关系取 μ 期望后出现的反方向 KL。
沿用本页的终局奖励设定,考虑一条完整终止的自回归回答。生成 token 后只是把它接到前缀上,因此 Qμ(st,at)=Vμ(st+1)。初始前缀只有问题,其价值简写为 Vμ(q);约定终止状态的价值就是已得到的 R(q,y)。相邻价值相减后沿轨迹相消:
t=1∑TAμ(st,at)=t=1∑T[Vμ(st+1)−Vμ(st)]=R(q,y)−Vμ(q).
把上一条最优策略关系也沿轨迹求和,便能用终局奖励减问题价值,替代所有中间优势。对待训练策略 πθ,将上述等式两侧的差定义为轨迹残差:
dθ(q,y)=η[R(q,y)−Vμ(q)]−t=1∑T[logμ(at∣st)πθ(at∣st)+DKL(μ(⋅∣st)∥πθ(⋅∣st))].
理想策略 π⋆ 让每条轨迹的残差都为零,因此可以最小化 LBPO,exact=Ey∼μ(⋅∣q)[dθ(q,y)2/(2η)],其中 y∼μ(⋅∣q) 表示从问题 q 出发,逐 token 按 μ 生成整条回答。这个目标只需要终局奖励和初始问题价值,不再显式需要中间前缀的 Critic。
在有界、完整终止且支持集相容的策略空间中,这个平方目标与原 PMD 有相同的最优完成分布;这是目标最优解的关系,不代表有限神经网络训练一定能达到它。[3]
全词表 KL 的梯度与中心化 score。 固定 μ,全词表 KL 的导数为:
∇θDKL(μ∥πθ)=−v∑μ(v∣s)∇θlogπθ(v∣s)=−zˉμ(s).
因此,残差里每个 token 的 logπθ+KL 对参数的导数,正好是 z−zˉμ。对单条回答的平方残差求导,得到精确的上升方向:
−∇θ2ηdθ2=ηdθt=1∑T[z(at,st)−zˉμ(st)].
它已经包含中心化 score,但每条回答的权重还是随参数变化的 dθ/η。BPO 接着在策略空间的 π=μ 处,对平方残差作一阶近似。此处 log-ratio 和 KL 都为零,把该参照策略处的残差记为 dμ=η[R(q,y)−Vμ(q)];它与待训练策略处的 dθ 区分。展开平方项:
单回答平方残差损失=2ηdθ2=2ηdμ2+ηdμ(dθ−dμ)+2η(dθ−dμ)2.
舍去最后的二次项,相当于把梯度中的 dθ/η 固定为 R(q,y)−Vμ(q)。再用组内奖励均值估计问题价值,并按奖励标准差缩放。记同题第 i 条完整回答为 yi,奖励为 Ri=R(q,yi),得到回答权重 A^i=(Ri−meanjRj)/stdjRj,其中 j 遍历同组回答;这里讨论标准差非零的组。A^i 在本次 Actor 反传中固定。这些采样估计与归一化是额外步骤,不是前面精确恒等式的一部分。
到这一步,保留全词表 KL 的单 token surrogate loss 为:
LBPO,full=−sg(A^i)[logπθ(at∣st)+DKL(μ(⋅∣st)∥πθ(⋅∣st))].
这里 sg 是 stop-gradient(停止梯度):保留前向数值,反传时将它当作常数。因此,−∇θLBPO,full=A^i[z(at,st)−zˉμ(st)]。
BPO 与 SC 的联系来自全词表 KL 的导数:该导数为平均 score 的负值。 使用相同采样策略和固定权重时,两者的 token 梯度一致。BPO 实用版还会把全词表 KL 换成二元近似,随后平滑、屏蔽和限制权重;这些步骤会改变更新,完整 SC 与二元近似需要分别分析。
SC 与精确价值 baseline 的期望更新对应
减去 baseline 后期望梯度不变的证明包含两步:(1)利用 baseline 与动作无关,将它提出期望;(2)利用 score 均值为零,使 baseline 对应的项为零。 对一个仅依赖前缀、更新时固定的标量 b(s),有:
Ea∼μ(⋅∣s)[b(s)z(a,s)]=b(s)Ea∼μ(⋅∣s)[z(a,s)]=b(s)zˉμ(s).
Baseline 页按 πθ 采样,也对 πθ 求 score,所以平均 score 为零。这里按 μ 采样,score 却来自 πθ,zˉμ(s) 可能非零。因此,即使 b(s) 与动作无关,减去它仍可能改变原更新的期望。[1]
需要比较两种期望更新:(1)从奖励中减去采样器的精确状态价值;(2)从 score 中减去采样器分布下的均值。该比较说明何时可以用后一种方式替代显式的价值估计。
采样策略在当前前缀下的真实价值是 Vμ(s)=Eμ[R(q,y)∣s]。如果能准确知道它,减去这个 baseline,便有:
Eμ[(R(q,y)−Vμ(s))z(a,s)∣s]=Eμ[R(q,y)z(a,s)∣s]−Vμ(s)zˉμ(s)=Eμ[R(q,y)z(a,s)∣s]−Eμ[R(q,y)∣s]zˉμ(s)=Eμ[R(q,y)(z(a,s)−zˉμ(s))∣s].
减精确的采样器 value,与减采样器的平均 score,得到相同的期望更新。 前者需要知道后续奖励的期望,后者需要当前前缀下的采样器动作分布。它们每个样本的梯度及方差可以不同。[1]
这里“精确”指的是奖励期望算得准确,不意味着它是梯度方差最小的 baseline;后一个问题仍由 Baseline 页的加权最优值回答。
展开 baseline 后,需要减去 Vμ(s)zˉμ(s)。从每条样本的 score 中减去 zˉμ(s),再乘奖励并求期望,同样会减去 Eμ[R(q,y)∣s]zˉμ(s)。奖励的条件期望就是 Vμ(s),因此无需单独估计 value。
这里也能看出与 on-policy Baseline 的区别:当 μ=πθ 时,减 baseline 一般会改变原更新的均值。SC 正是在主动去掉其中的漂移,并非只做方差约减。
中心化之后,因为 Eμ[z−zˉμ(s)∣s]=0,减去任意更新时固定、与当前动作无关的 b(s),也不会改变期望更新。这恢复了 baseline 不改变期望更新的性质;自包含的有限组均值是否满足动作独立条件,仍需另行判断。
STE:采样器前向值与训练器反向路径
训练器的梯度可通过自动微分计算;采样器则可能经过量化或其他不可直接反传的计算。Straight-Through Estimator(STE,直通估计器)的思路是:前向使用一种数值,反向指定另一条可计算的梯度路径。 该构造可以得到 SC 的中心化 score。[4]
把训练器输出的 logits 向量记为 uθ,于是 πθ=softmax(uθ)。用 ea 表示动作 a 的 one-hot 向量,即第 a 项为 1、其余为 0。logits 对参数的导数直接写作 ∂uθ/∂θ。对第 v 个 logit 求导:
∂uθ(v)∂logπθ(a)=∂uθ(v)∂[uθ(a)−logb∑euθ(b)]=1{v=a}−πθ(v).
所以普通 score 是 z(a)=(∂θ∂uθ)⊤(ea−πθ)。按 μ 求平均,one-hot 向量的均值就是 μ,得到 zˉμ=(∂θ∂uθ)⊤(μ−πθ)。相减后:
z(a)−zˉμ=(∂θ∂uθ)⊤[(ea−πθ)−(μ−πθ)]=(∂θ∂uθ)⊤(ea−μ).
这给出如下梯度解释:log 概率梯度中,原来减的是训练器概率,现在减的是实际采样器概率;从 logits 到参数的传递仍沿训练器进行。
假设采样器每个动作的概率都为正,取固定 logits uμ,其每个分量为 uμ(v)=logμ(v),因此 softmax(uμ)=μ。构造新的 logits:
uθSTE=uθ+sg(uμ−uθ).
前向计算中,两个 uθ 抵消,结果是 uμ;反向计算中,停止梯度的括号不贡献导数,只留下 ∂uθ/∂θ。
接着对 log-softmax 反传,它在前向概率 μ 处的导数是 ea−μ。于是按这条计算图得到:
∇θSTElogsoftmax(uθSTE)a=(∂θ∂uθ)⊤(ea−μ)=z(a)−zˉμ.
乘上固定奖励 R(q,y),就得到 SC 的逐样本方向。上标 STE 强调这是指定反传规则后的梯度:若直接把前向结果写成固定函数 logμ(a),再普通求导,结果应该是零。它也没有对实际量化或陈旧采样器进行精确求导。
还要区分“当前差值”和“固定旧差值”。 上面的差值 uμ−uθ 每次随当前参数重算,因此每次反传都得到当前的 SC。另一种做法是在更新起点 θ0 只算一次偏移 uμ−uθ0,随后固定它:
πθlocal=softmax(uθ+uμ−uθ0).
起点有 πθ0local=μ,普通求导便得到 (∂θ∂uθ)θ=θ0⊤(ea−μ)。离开起点后,概率会变成 πθlocal,导数也变成 (∂θ∂uθ)⊤(ea−πθlocal),不再始终等于按固定 μ 中心化的 score。
局部分布族在更新起点的梯度
STE 指定了一条反传规则。现在进一步问:不改反传规则,能否构造一个满足归一化约束的概率分布,让它在起点的 score 就是 SC?
记更新起点为 θ0,当前参数为 θ,并固定采样分布 μ。训练器相对起点的概率变化倍数是 πθ(a)/πθ0(a)。把这个倍数施加到原采样概率上,再归一化,定义局部策略:
πθlocal(a)=∑vμ(v)πθ(v)/πθ0(v)μ(a)πθ(a)/πθ0(a).
每个 θ 对应一个合法分布,这一组分布就是“分布族”。在更新起点 θ=θ0,所有倍数都为 1,因此 πθ0local=μ。局部策略在起点等于采样策略;离开起点后,其动作概率由固定的 μ 乘以训练器相对起点的概率比,再归一化得到。
先计算分母的 log 导数。起点处分母为 1,采样器概率与旧训练器概率固定,只有当前训练器概率变化,因此:
∇θlogv∑μ(v)πθ0(v)πθ(v)θ=θ0=v∑πθ0(v)μ(v)∇θπθ(v)∣θ=θ0=v∑μ(v)z(v)θ=θ0=zˉμ∣θ=θ0.
再对局部策略的 log 求导。分子的 logμ(a) 和 logπθ0(a) 固定,logπθ(a) 的导数是 z(a);减去上面算出的分母 log 导数,得到:
∇θlogπθlocal(a)θ=θ0=[z(a)−zˉμ]θ=θ0.
平均 score 在这里来自归一化因子的导数。 局部策略先对采样器概率乘以训练器概率比,再归一化。归一化因子的 log 导数正是需要减去的平均 score。
有了合法分布,还可以定义普通的局部奖励目标。动作价值 Qμ(s,a)=Eμ[R(q,y)∣s,a] 表示选定当前动作后、按 μ 继续生成的平均奖励。固定这个动作价值,只改变当前动作分布:
Jlocal(θ)=a∑πθlocal(a∣s)Qμ(s,a).
这里 Jlocal 是要最大化的平均奖励;前面各个 L 是要最小化的 loss。它在起点的梯度为:
∇θJlocal(θ)∣θ=θ0=a∑μ(a)Qμ(s,a)∇θlogπθlocal(a∣s)θ=θ0=Ea∼μ[Qμ(s,a)(z(a,s)−zˉμ(s))]θ=θ0=Eμ[R(q,y)(z(a,s)−zˉμ(s))∣s]θ=θ0.
最后一步先对给定动作的后续奖励求期望,用到了 Qμ(s,a)=Eμ[R(q,y)∣s,a]。这说明 SC 确实可以是这个构造目标在起点的真实梯度,不需要 STE。
局部分布族与固定 logits 偏移构造得到同一分布。代入 softmax 后,概率比里与动作无关的常数被归一化消去,得到 πθlocal=softmax(uθ+uμ−uθ0)。两种构造因此得到同一个局部策略。
离开起点后,πθlocal 会变化,完整目标梯度应按它加权;归一化导数也改为这个局部策略下的平均 score。固定 μ 的 SC 仍按 μ 加权并中心化,所以这里只得到起点的一致性,不能把整个 SC 训练直接称为这个局部目标的精确优化。
四种解释的同例验证
漂移分解已经算出 0.52−0.36=0.16。另外四条推导也能在这一个例子中直接核对。
-
BPO 的全词表 surrogate。 为了只检查中心化这一步,本例先用精确的问题价值,不估计或除以标准差。一步任务中,Vμ(q)=1.8,两个回答的固定优势分别是 0.2 和 −0.8。它们乘上中心化 score,得到的期望方向为 BPO surrogate 的期望上升方向=0.8×0.2×0.2+0.2×(−0.8)×(−0.8)=0.16。这里核对的是近似后的 surrogate,不是完整平方残差目标。
-
精确 value baseline。 从奖励减去 1.8,再乘原 score,得到 value baseline 的期望更新方向=0.8×0.2×0.4+0.2×(−0.8)×(−0.6)=0.16。虽然期望相同,单条样本的方向不同:SC 的两个方向是 0.4、−0.8,value baseline 的两个方向却是 0.08、0.48。
-
STE。 取训练器 logits 为 uθ=(θ,0),采样器 logits 可取 uμ=(log4,0)。前向替换后,第一动作的概率是 4/(4+1)=0.8;反向只经过训练器的第一个 logit,两个 log 概率的导数便是 1−0.8=0.2 和 −0.8。它们正好是表中的中心化 score,乘奖励后仍得到 0.16。
-
局部分布族。 对本例的 Bernoulli 策略,参数从 θ0 变到 θ,会把概率比 p/(1−p) 乘上 eθ−θ0。施加到采样器后,局部策略满足 πθlocal(甲)/πθlocal(乙)=4eθ−θ0,所以 πθlocal(甲)=σ(log4+θ−θ0)。它的平均奖励是 Jlocal(θ)=1+πθlocal(甲),在起点的导数便是 Jlocal′(θ0)=0.8×0.2=0.16。
五条路线在这个例子中都得到 0.16,但含义不同:漂移和 baseline 比较期望更新,BPO 比较近似后的梯度,STE 比较计算图的反传方向,局部分布族比较起点处的真实目标梯度。
BPO 二元 KL 近似与完整 SC 的差异
完整 KL 要用词表中所有动作的概率。BPO 实用版把动作分成“采中的 a”和“其余动作”,只保留这两个概率。记 μa=μ(a∣s)、πa=πθ(a∣s),对应的二元 KL 是:
DKLbin(μ∥πθ;a)=μalogπaμa+(1−μa)log1−πa1−μa.
对 logπa+DKLbin 先按标量 πa 求导,再乘 ∇θπa=πaz(a),可得:
∇θ[logπa+DKLbin]=[πa1−πaμa+1−πa1−μa]πaz(a)=1−πa1−μaz(a).
因此,二元近似给出的是 A^i1−πa1−μaz(a):它对原 score 乘一个标量;完整 SC 则减去一个向量。词表只有两个动作时,两者相同;多于两个动作时,一般不相同。BPO 还会平滑这个比值、按优势方向屏蔽部分更新,并限制其上限。[3]
用一个独立的三动作例子就能看出差异。令 logits 独立可训练,πθ=(0.2,0.3,0.5)、μ=(0.5,0.2,0.3),采中第一个动作,固定权重为 0.4。完整 SC 给出 完整 SC 的单样本方向=0.4(e1−μ)=(0.2,−0.08,−0.12);二元近似给出 二元近似的单样本方向=0.4×0.80.5(e1−πθ)=(0.2,−0.075,−0.125)。采中动作的分量相同,对其余动作怎样分配变化却不同。
五种解释的对应关系与限制
五条推导围绕同一个中心化向量,比较的对象却不同:
这些联系解释了同一个修正为何会反复出现,也说明了为什么不能直接把五种说法当成五个全局等价的训练算法。
SC、BPO 与 STE 的 loss 对照
SC 与 BPO 的全词表 surrogate 的对应关系可由以下恒等式得到:logπθ(a)+DKL(μ∥πθ)=logπθ(a)−∑vμ(v)logπθ(v)+∑vμ(v)logμ(v)。最后一项与训练器参数无关;使用相同固定权重时,两个 loss 只差一个常数。
STE loss 的前向值则是 −sg(R(q,y))logμ(a),通常与上述 SC loss 不相同。它们相同的是指定反传规则后的梯度,而非 loss 数值。