3.5 ReMax:用 Greedy 作为基线的 REINFORCE + RLOO

3.5 ReMax:用 Greedy 作为基线的 REINFORCE(ReMax = REINFORCE + Max)

这一节先快速回顾:**策略梯度(Policy Gradient)**的核心是用"奖励相关的权重"去放大或缩小每一步动作的梯度,从而让高奖励轨迹更可能被复现、低奖励轨迹被抑制。随后再看 PPO 如何在策略梯度的框架上加入稳定训练的约束。最后进入 ReMax :它的目标和 GRPO 类似------不想训练 Critic/Value 网络 ,但又希望把训练稳定性做起来,于是它回到 REINFORCE,并把 baseline 设计成"同一个 prompt 下的 greedy 输出的奖励"。


1. 策略梯度回顾:ψt\psi_tψt 是"更新幅度与方向"的载体

在最一般的策略梯度形式里,我们写成:

g=Eπθ[∑t=0Tψt∇θlog⁡πθ(at∣st)] g=\mathbb{E}{\pi\theta}\left[ \sum_{t=0}^T\psi_t \nabla_\theta \log \pi_\theta(a_t|s_t )\right] g=Eπθ[t=0∑Tψt∇θlogπθ(at∣st)]

  • πθ(at∣st)\pi_\theta(a_t|s_t)πθ(at∣st):当前策略在状态 sts_tst 选择动作 ata_tat 的概率。
  • ∇θlog⁡πθ(at∣st)\nabla_\theta \log \pi_\theta(a_t|s_t)∇θlogπθ(at∣st):告诉我们"如果要让这个动作更可能发生,参数该往哪个方向更新"。
  • ψt\psi_tψt:把奖励信息灌入梯度 的权重项,决定每一步更新的 大小 (幅度)和 正负(方向)。

用 NNN 条采样轨迹来估计期望时:

g=1N∑i=1N∑t=0Tψti∇θlog⁡πθ(ati∣sti) g= \frac{1}{N}\sum_{i=1}^N\sum_{t=0}^T\psi_t^i\nabla_\theta \log \pi_\theta(a_t^i|s_t^i ) g=N1i=1∑Nt=0∑Tψti∇θlogπθ(ati∣sti)

因此关键问题变成:怎么定义/估计 ψt\psi_tψt 才既有效又稳定


2. Actor-Critic 类方法对 ψt\psi_tψt 的常见选择(从高方差到低方差)

在强化学习里,ψt\psi_tψt 通常与"回报(return)"和"优势(advantage)"相关。常见几种从直观到工程化依次是:

2.1 轨迹总回报(从开头累积到结尾)

∑t′=0Tγt′rt′ \sum_{t' = 0}^{T} \gamma^{t'} r_{t'} t′=0∑Tγt′rt′

这在一些定义里更像从 t=0t=0t=0 统一度量整条轨迹的好坏。

2.2 从时间步 ttt 往后的回报(蒙特卡洛估计)

∑t′=tTγt′−trt′ \sum_{t' = t}^{T} \gamma^{t' - t} r_{t'} t′=t∑Tγt′−trt′

这就是经典 REINFORCE 使用的蒙特卡洛回报。优点是无偏(在采样足够多时),缺点是 方差很大

2.3 加入基线 b(st)b(s_t)b(st) 的改进:降低方差但不改变期望

∑t′=tTγt′−trt′−b(st) \sum_{t' = t}^{T} \gamma^{t' - t} r_{t'} - b(s_t) t′=t∑Tγt′−trt′−b(st)

当 b(st)b(s_t)b(st) 与 ata_tat 无关时,减去它不会改变期望梯度的方向,但可以显著降低方差。一个常用基线是价值函数 V(st)V(s_t)V(st)。

2.4 用动作价值函数 Qπθ(st,at)Q^{\pi_{\theta}}(s_t, a_t)Qπθ(st,at)

Qπθ(st,at) Q^{\pi_{\theta}}(s_t, a_t) Qπθ(st,at)

它直接衡量"在状态 sts_tst 做动作 ata_tat 之后的期望回报"。但训练/估计 QQQ 往往需要额外网络或复杂技巧。

2.5 用优势函数 Aπθ(st,at)A^{\pi_{\theta}}(s_t, a_t)Aπθ(st,at)

Aπθ(st,at)=Qπθ(st,at)−Vπθ(st) A^{\pi_{\theta}}(s_t, a_t)=Q^{\pi_{\theta}}(s_t, a_t)-V^{\pi_{\theta}}(s_t) Aπθ(st,at)=Qπθ(st,at)−Vπθ(st)

优势函数把"某动作比平均水平好多少"表达得更清晰,很多策略优化方法(包括 PPO)都以它为核心信号。

2.6 一步时序差分(TD)对优势的近似

rt+γVπθ(st+1)−Vπθ(st) r_t + \gamma V^{\pi_{\theta}}(s_{t + 1}) - V^{\pi_{\theta}}(s_t) rt+γVπθ(st+1)−Vπθ(st)

这是对优势的一步估计形式。TD/GAE 等把蒙特卡洛的高方差和模型化估计的偏差做折中。


3. PPO 回顾:本质仍是"用优势指导的策略梯度",但加了稳定约束

PPO 的经典目标(带 clip)是:

arg⁡max⁡θEs∼νβ,a∼πθk(⋅∣s)[min⁡(πθ(a∣s)πθk(a∣s)Aπθk(s,a),clip(πθ(a∣s)πθk(a∣s),1−ϵ,1+ϵ)Aπθk(s,a))] \arg \max_{\theta} \mathbb{E}{s \sim \nu^{\beta}, a \sim \pi{\theta_k}(\cdot \mid s)} \left[ \min \left( \frac{\pi_{\theta}(a \mid s)}{\pi_{\theta_k}(a \mid s)} A^{\pi_{\theta_k}}(s, a), \text{clip} \left( \frac{\pi_{\theta}(a \mid s)}{\pi_{\theta_k}(a \mid s)}, 1 - \epsilon, 1 + \epsilon \right) A^{\pi_{\theta_k}}(s, a) \right) \right] argθmaxEs∼νβ,a∼πθk(⋅∣s)[min(πθk(a∣s)πθ(a∣s)Aπθk(s,a),clip(πθk(a∣s)πθ(a∣s),1−ϵ,1+ϵ)Aπθk(s,a))]

其中:

  • θk\theta_kθk 是旧策略参数,θ\thetaθ 是要更新到的新策略参数。
  • 比率项 πθ(a∣s)πθk(a∣s)\frac{\pi_{\theta}(a \mid s)}{\pi_{\theta_k}(a \mid s)}πθk(a∣s)πθ(a∣s) 衡量新旧策略对同一动作的相对偏好。
  • clip(⋅)\text{clip}(\cdot)clip(⋅) 限制更新幅度,避免策略一步走太远导致训练崩溃。
  • Aπθk(s,a)A^{\pi_{\theta_k}}(s,a)Aπθk(s,a) 是优势,决定动作要被鼓励还是抑制。

如果抽掉实现细节,只看"驱动更新的核心",PPO 仍然是在做"优势加权的策略更新"。可以把它理解为:

arg⁡max⁡θEs,a∼πθ[πθ(a∣s) Advπθ(s,a)] \arg \max_{\theta} \mathbb{E}{s , a \sim \pi{\theta}} \left[ {\pi_{\theta}(a \mid s)} \, Adv^{\pi_{\theta}}(s, a) \right] argθmaxEs,a∼πθ[πθ(a∣s)Advπθ(s,a)]

这里写成 π\piπ 还是 log⁡π\log \pilogπ 只是不同的推导与实现视角,本质都在用 优势/回报信号调制梯度,把策略往"更高回报"的方向推。


4. ReMax:回到 REINFORCE,但把 baseline 设为 Greedy 输出的奖励

4.1 为什么要 ReMax:去掉 Critic,但又不想训练炸掉

在大模型对齐/强化学习里,训练 Critic(价值网络)会带来额外的模型、算力、工程成本,且 Critic 本身也可能不稳定。ReMax 的目标很明确:

  • 不训练 Critic
  • 仍然用策略梯度优化
  • 通过一个简单但强力的 baseline 设计,显著降低方差、提升稳定性

它的口号是:

ReMax = REINFORCE + Max \text{ReMax = REINFORCE + Max} ReMax = REINFORCE + Max

其中 "Max" 指的是用 greedy(argmax)解码得到的输出作为 baseline 的构造方式。


4.2 从 REINFORCE 到 LLM 场景:只有终止时刻有奖励

经典 REINFORCE 的梯度估计是用蒙特卡洛回报:

g=1N∑i=1N∑t=0T(∑t′=tTγt′−trt′i)∇θlog⁡πθ(ati∣sti) g= \frac{1}{N}\sum_{i=1}^N\sum_{t=0}^T \left(\sum_{t' = t}^{T} \gamma^{t' - t} r_{t'}^i\right)\nabla_\theta \log \pi_\theta(a_t^i|s_t^i ) g=N1i=1∑Nt=0∑T(t′=t∑Tγt′−trt′i)∇θlogπθ(ati∣sti)

但在大模型生成任务中,一个常见设定是:

  • 对一个 prompt xxx,模型生成一个完整 response y=[a1,...,aT]y=[a_1,\dots,a_T]y=[a1,...,aT]
  • 只有生成结束后 (例如遇到 EOS)才给整体奖励 r(x,y)r(x,y)r(x,y)
  • 中间 token 的即时奖励视为 000

因此对任意 ttt,从 ttt 往后的回报就等于同一个 r(x,y)r(x,y)r(x,y)(因为中间奖励为 0,最终奖励代表整句质量)。于是 REINFORCE 在 LLM 场景可以写成:

g=1N∑i=1N∑t=0Tr(xi,yi)∇θlog⁡πθ(ati∣[xi,a1:t−1i])=1N∑i=1N∑t=0Tr(xi,a1:Ti)∇θlog⁡πθ(ati∣[xi,a1:t−1i]) \begin{aligned} g= \frac{1}{N}\sum_{i=1}^N\sum_{t=0}^T r(x^i,y^i)\nabla_\theta \log \pi_\theta(a_t^i|[x^i, a^i_{1:t-1}] )\\ =\frac{1}{N}\sum_{i=1}^N\sum_{t=0}^T r(x^i,a^i_{1:T})\nabla_\theta \log \pi_\theta(a_t^i|[x^i, a^i_{1:t-1}] ) \end{aligned} g=N1i=1∑Nt=0∑Tr(xi,yi)∇θlogπθ(ati∣[xi,a1:t−1i])=N1i=1∑Nt=0∑Tr(xi,a1:Ti)∇θlogπθ(ati∣[xi,a1:t−1i])

符号解释:

  • xix^ixi:第 iii 个 prompt。
  • yi=[a1i,...,aTi]y^i=[a^i_1,\dots,a^i_T]yi=[a1i,...,aTi]:第 iii 条采样 response。
  • atia_t^iati:第 iii 条 response 的第 ttt 个 token(动作)。
  • 状态 sts_tst 就是 [xi,a1:t−1i][x^i, a^i_{1:t-1}][xi,a1:t−1i](prompt 拼上历史 token)。

关键问题 :r(x,y)r(x,y)r(x,y) 的随机性非常大,尤其当采样策略为了探索采用 top-p 等随机解码时,不同 yyy 的质量差异会拉得很开,从而导致梯度估计方差巨大。


4.3 ReMax 的核心:用 Greedy 输出的奖励作为 baseline

REINFORCE 的经典降方差方式是减去 baseline:

g=1N∑i=1N∑t=0T(r(xi,a1:Ti)−bθ(xi))∇θlog⁡πθ(ati∣[xi,a1:t−1i]) g=\frac{1}{N}\sum_{i=1}^N\sum_{t=0}^T\left(r(x^i,a^i_{1:T})-b_\theta(x^i)\right) \nabla_\theta \log \pi_\theta(a_t^i|[x^i, a^i_{1:t-1}] ) g=N1i=1∑Nt=0∑T(r(xi,a1:Ti)−bθ(xi))∇θlogπθ(ati∣[xi,a1:t−1i])

ReMax 选择的 baseline 是:

bθ(xi)=r(xi,aˉ1:Ti),aˉti∈argmax⁡πθ(⋅∣xi,aˉ1:t−1i) b_{\theta}(x^{i}) = r(x^{i},\bar{a}{1:T}^{i}), \quad \bar{a}{t}^{i} \in \operatorname{argmax} \pi_{\theta}(\cdot|x^{i},\bar{a}_{1:t - 1}^{i}) bθ(xi)=r(xi,aˉ1:Ti),aˉti∈argmaxπθ(⋅∣xi,aˉ1:t−1i)

也就是说:

  • 对同一个 prompt xix^ixi,用当前策略 πθ\pi_\thetaπθ 做 greedy 解码 (每步取概率最大 token),得到确定性的序列 aˉ1:Ti\bar{a}_{1:T}^iaˉ1:Ti
  • 用它的奖励 r(xi,aˉ1:Ti)r(x^i,\bar{a}_{1:T}^i)r(xi,aˉ1:Ti) 作为 baseline
  • 对采样得到的 yiy^iyi,计算"相对 greedy 的优势":
    r(xi,yi)−r(xi,yˉi) r(x^i,y^i) - r(x^i,\bar{y}^i) r(xi,yi)−r(xi,yˉi)

这一步把更新信号从"绝对奖励"变成"相对 greedy 的改进幅度"。


4.4 为什么 greedy baseline 能降方差:把"大波动"对齐到一个稳定参照

直觉上,在 on-policy 训练里常用随机采样(例如 top-p)来增强探索。此时同一 prompt 的多个 response 可能质量差异很大:

  • 有的采样碰巧非常好
  • 有的采样偏离很远,质量很差

如果直接用 r(x,y)r(x,y)r(x,y) 作为权重,梯度会出现强烈的随机波动。

ReMax 的做法是给每个 prompt 配一个 确定的参照输出(greedy),并用它的奖励作为 baseline。这样每条采样输出只需要回答一个问题:

"我比 greedy 更好吗?好多少?还是更差?"

这会把更新信号集中到"局部改进"上,显著降低梯度的方差。


4.5 一个具体案例:用数字化奖励看 ReMax 的更新方向

假设 prompt 是:

"用一句话总结这篇文章的贡献,并保持中立口吻。"

对同一个 prompt:

  • greedy 输出 yˉ\bar{y}yˉ 的奖励(由 RM 或规则/评测器给出)为 r(x,yˉ)=0.62r(x,\bar{y})=0.62r(x,yˉ)=0.62
  • 随机采样得到三条 response:
    • y1y_1y1:写得更清晰,奖励 r(x,y1)=0.78r(x,y_1)=0.78r(x,y1)=0.78
    • y2y_2y2:略偏题,奖励 r(x,y2)=0.55r(x,y_2)=0.55r(x,y2)=0.55
    • y3y_3y3:胡乱扩写,奖励 r(x,y3)=0.20r(x,y_3)=0.20r(x,y3)=0.20

那么 ReMax 的"相对优势"是:

  • y1y_1y1:0.78−0.62=+0.160.78-0.62=+0.160.78−0.62=+0.16(正向强化 y1y_1y1 轨迹上的每个 token)
  • y2y_2y2:0.55−0.62=−0.070.55-0.62=-0.070.55−0.62=−0.07(抑制 y2y_2y2 轨迹)
  • y3y_3y3:0.20−0.62=−0.420.20-0.62=-0.420.20−0.62=−0.42(强烈抑制 y3y_3y3)

这比直接用绝对奖励更稳定:因为同一个 prompt 下,greedy 作为参照把尺度"钉住"了,训练信号更像"围绕当前策略的局部微调"。


4.6 ReMax 的关键假设与适用条件

ReMax 能有效的隐含前提是:

  1. greedy 输出的质量具有一定稳定性

    如果模型已经经过一定 SFT 或基础对齐,greedy 输出往往不会离谱,奖励波动较小,适合作为 baseline。

  2. 采样输出与 greedy 输出差异不是完全随机

    采样带来的探索能偶尔超过 greedy,形成正优势样本,从而驱动策略提升。

  3. 奖励函数对 greedy 与采样差异敏感且可比较

    如果奖励太噪或不可比较,baseline 也难以稳定训练。

当模型尚未具备基本能力、greedy 本身极不可靠时,用它当 baseline 可能会让"参照点"本身漂移很大,从而降低收益。


RLOO:REINFORCE + Leave-One-Out baseline(用同 prompt 的其他采样均值做基线)

理解了 ReMax 后,RLOO 会更直观:它同样不训练 Critic,也不需要额外价值网络,但 baseline 的构造方式不同。

1. RLOO 的 baseline:同 prompt 下"除了自己以外"的均值

对同一个 prompt xix^ixi,采样 MMM 条 response:y1i,...,yMiy_1^i,\dots,y_M^iy1i,...,yMi。对其中第 jjj 条,RLOO 定义 baseline 为:

bθ(xi,yji)=1M−1∑k≠jr(xi,yki) b_{\theta}(x^{i},y^i_j) = \frac{1}{M-1}\sum_{k\neq j}r(x^i,y^i_k) bθ(xi,yji)=M−11k=j∑r(xi,yki)

也就是"留一法":用同组里其它样本的平均奖励作为基线。

于是对第 jjj 条样本的优势是:

r(xi,yji)−1M−1∑k≠jr(xi,yki) r(x^i,y^i_j)-\frac{1}{M-1}\sum_{k\neq j}r(x^i,y^i_k) r(xi,yji)−M−11k=j∑r(xi,yki)

这会把每条样本的更新信号转成"相对同组均值的偏离"。


2. RLOO 的整体策略梯度形式

对 NNN 个 prompt,每个 prompt 采样 MMM 条 response,RLOO 的梯度估计写为:

g=1N∑i=1N1M∑j=1M[(r(xi,yji)−1M−1∑k≠jr(xi,yki))∇θlog⁡πθ(yji∣xi)] g=\frac{1}{N}\sum_{i=1}^N\frac{1}{M}\sum_{j=1}^M \left[ \left(r(x^i,y^i_j)-\frac{1}{M-1}\sum_{k\neq j}r(x^i,y^i_k)\right) \nabla_\theta \log \pi_\theta(y^i_j|x^i) \right] g=N1i=1∑NM1j=1∑M r(xi,yji)−M−11k=j∑r(xi,yki) ∇θlogπθ(yji∣xi)

其中 log⁡πθ(y∣x)\log \pi_\theta(y|x)logπθ(y∣x) 表示整段序列概率的对数(等价于对每个 token 的 log-prob 求和),它对应把"整句奖励信号"分配到生成过程中的每一步更新上。


3. 一个具体案例:RLOO 如何构造优势(对比 ReMax)

仍然是同一个 prompt,假设一次采样 M=4M=4M=4,四条 response 的奖励为:

  • r1=0.78r_1=0.78r1=0.78
  • r2=0.55r_2=0.55r2=0.55
  • r3=0.20r_3=0.20r3=0.20
  • r4=0.62r_4=0.62r4=0.62

那么对每条样本的 baseline 是"其它三条的均值":

  • 对 y1y_1y1:
    b1=0.55+0.20+0.623=0.4567,A1=0.78−0.4567=+0.3233 b_1=\frac{0.55+0.20+0.62}{3}=0.4567,\quad A_1=0.78-0.4567=+0.3233 b1=30.55+0.20+0.62=0.4567,A1=0.78−0.4567=+0.3233
  • 对 y2y_2y2:
    b2=0.78+0.20+0.623=0.5333,A2=0.55−0.5333=+0.0167 b_2=\frac{0.78+0.20+0.62}{3}=0.5333,\quad A_2=0.55-0.5333=+0.0167 b2=30.78+0.20+0.62=0.5333,A2=0.55−0.5333=+0.0167
  • 对 y3y_3y3:
    b3=0.78+0.55+0.623=0.6500,A3=0.20−0.6500=−0.4500 b_3=\frac{0.78+0.55+0.62}{3}=0.6500,\quad A_3=0.20-0.6500=-0.4500 b3=30.78+0.55+0.62=0.6500,A3=0.20−0.6500=−0.4500
  • 对 y4y_4y4:
    b4=0.78+0.55+0.203=0.5100,A4=0.62−0.5100=+0.1100 b_4=\frac{0.78+0.55+0.20}{3}=0.5100,\quad A_4=0.62-0.5100=+0.1100 b4=30.78+0.55+0.20=0.5100,A4=0.62−0.5100=+0.1100

可以看到:

  • RLOO 把"同组里明显更好"的样本 y1y_1y1 强烈推高(大正优势)
  • 把明显更差的 y3y_3y3 强烈压低(大负优势)
  • 对接近均值的样本(如 y2y_2y2)只给很小的更新(优势接近 0)

这是一种组内相对化的方差控制方式:不依赖 greedy 参照点,而是依赖"同一 prompt 下的采样群体"。


ReMax vs RLOO:两种 baseline 的差异与直觉总结

1. baseline 来源不同

  • ReMax :baseline 来自 greedy 解码 的确定性输出
    b(x)=r(x,yˉgreedy) b(x)=r(x,\bar{y}_{\text{greedy}}) b(x)=r(x,yˉgreedy)
  • RLOO :baseline 来自 同组其它采样输出的均值
    b(x,yj)=1M−1∑k≠jr(x,yk) b(x,y_j)=\frac{1}{M-1}\sum_{k\neq j}r(x,y_k) b(x,yj)=M−11k=j∑r(x,yk)

2. 训练信号"参照点"的性质不同

  • ReMax 的参照点更稳定(greedy 通常确定),但依赖 greedy 输出质量
  • RLOO 的参照点是群体统计量,不依赖 greedy,但需要同 prompt 下采样足够多,且奖励可比较

3. 更新信号的解释方式

  • ReMax:"我比 greedy 好多少"
  • RLOO:"我比同组平均好多少"

小结:为什么这些方法都在"折腾 baseline"

在 LLM 的 REINFORCE 风格优化中,核心难点不是写出梯度公式,而是让它在工程上稳定:

  • LLM 的 action 是 token,序列很长,随机性累积导致方差巨大
  • 奖励往往只在结尾给一个标量 r(x,y)r(x,y)r(x,y),把它传播到每一步会放大波动
  • baseline 的设计决定了训练信号是"绝对好坏"还是"相对改进",直接影响稳定性与收敛速度

ReMax 和 RLOO 都遵循同一个原则:
不改变期望梯度的方向,但通过更好的 baseline 设计显著降低方差,从而在不训练 Critic 的情况下依然能做有效的策略优化。

相关推荐
TImCheng06092 小时前
方法论:将AI深度嵌入工作流的“场景-工具-SOP”三步法
大数据·人工智能
geneculture2 小时前
四维矩阵分析:人机互助超级个体与超级OPC关系研究——基于HI×AI、个体×团队、个体×OPC与波士顿矩阵的整合框架
人工智能·百度
智算菩萨2 小时前
2026年春节后,AI大模型格局彻底变了——Claude 4.6、GPT-5.2与六大国产模型全面横评
人工智能·gpt·ai编程
overmind2 小时前
oeasy Python 116 用列表乱序shuffle来洗牌抓拍玩升级拖拉机
服务器·windows·python
A懿轩A2 小时前
【Java 基础编程】Java 枚举与注解从零到一:Enum 用法 + 常用注解 + 自定义注解实战
java·开发语言·python
DeepModel2 小时前
【回归算法】Ridge回归详解
深度学习·机器学习·回归算法
狮子座明仔2 小时前
Agent World Model:给智能体造一个“矩阵世界“——无限合成环境驱动的强化学习
人工智能·线性代数·语言模型·矩阵
OpenMiniServer2 小时前
AI 大模型的本质:基于大数据的拟合,而非创造
大数据·人工智能
SmartBrain2 小时前
FastAPI实战(第二部分):用户注册接口开发详解
数据库·人工智能·python·fastapi