题目重点:概率比、旧策略rollout和clip surrogate,解释裁目标不等于强制参数信赖域。
题意与假设
这道练习题保留了面经中值得训练的核心约束,并将需要澄清的条件单独列出。现场拿到变体时,先和面试官确认这些条件。
- 讨论PPO-clip,rollout来自固定old policy,ratio=πθ(a|s)/πold(a|s),advantage在本批更新时视为固定估计。
- LLM需定义token/action、return/advantage和reference KL,PPO本身并不自动规定奖励模型。
解题路线
- 最大化mean min(rA,clip(r,1−ε,1+ε)A)。若A>0,提高已采样动作概率有利,但r超过1+ε后这项被截平;若A<0,降低概率有利,r低于1−ε后被截平。正负乘法不能忽略。
- old logprob保存并固定,ratio=exp(new_logprob−old_logprob);每个minibatch若把old改当前,ratio近1失去相对rollout约束。padding/无效动作mask不能加入平均分母。
- 多epoch复用同一批rollout,策略越远数据越旧,因此监控approx KL、clip fraction、entropy与有效样本,适当停止/换新数据。clip只是surrogate机制,不强制所有动作概率或参数都在区间内。
- advantage可来自value baseline/GAE,需要rollout终止/truncation和reward时序一致;value loss/entropy bonus另定义。不把policy clipping自动当value clipping。
- LLM中old policy与frozen reference职责不同:old用于本批ratio,reference用于偏离原模型的惩罚。只保留其中一个当两者会改变目标。
- 奖励偏差/长度利用/漏标偏好可能让reward提高而用户质量下降,核holdout人评与约束;更复杂RL不能弥补奖励信号错误。
手动走一遍
ε0.2,A2:r1.5时min(3,2.4)=2.4;A−2:r0.5时min(−1,−1.6)=−1.6。相反方向r0.5/A2仍为1,r1.5/A−2仍为−3,不能把ratio无条件clip后相乘当等价公式。
规模与取舍
主要是rollout生成、policy/value/reference推理与多epoch反传;surrogate逐有效action O(1),不代表整体训练常数成本。LLM序列与多模型状态占用需正式规模预算。
易错点与追问
容易失分的边界
- 负A乘clip符号处理错。
- old policy每batch重置。
- 裁目标说成硬参数约束。
- old和reference混用。
- reward上升等于人评变好。
继续深挖
- importance ratio很大时怎样诊断?
- GAE终止与时间截断有何区别?
- 多epoch何时应停止?
- LLM reward只在末尾时怎样给token advantage?
技术参考
- PPO 原论文:PPO-clip目标参考;数值案例自拟。
