论文地址:《Rewarding Progress: Scaling Automated Process Verifiers for LLM Reasoning》
相关博客
【自然语言处理】【大模型】 ΨPO:一个理解人类偏好学习的统一理论框架
【强化学习】PPO:近端策略优化算法
【偏好对齐】PRM应该奖励单个步骤的正确性吗?
一、基础知识
1. 问题定义
策略模型与问题求解 。给定一个数学问题 x ∈ X x\in\mathcal{X} x∈X,策略模型 π \pi π从集合 Y \mathcal{Y} Y从采样应答 y ∼ π ( ⋅ ∣ x ) y\sim\pi(\cdot|x) y∼π(⋅∣x),应答 y y y通常是由多个推理步骤构成,每个步骤会使用一个换行进行分隔,即 y = ( a 1 , a 2 , ... , a H ) y=(a_1,a_2,\dots,a_H) y=(a1,a2,...,aH)。最终的目标是如何优化 π \pi π,使得其生成正确的 y y y。
自回归采样与马尔科夫过程 。当前LLM都是自回归的模型。因此,求解过程中的每个步骤可以看作是策略 π \pi π在马尔科夫过程中采取的action。具体来说,将前缀 ( x , a 1 , ... , a j − 1 ) (x,a_1,\dots,a_{j-1}) (x,a1,...,aj−1)作为当前的状态 s h s_h sh,而下一个步骤 a h ∼ π ( ⋅ ∣ x ) a_h\sim\pi(\cdot|x) ah∼π(⋅∣x)视为策略 π \pi π在当前状态 s h s_h sh下采取的动作,这会产生下一个状态 s h + 1 s_{h+1} sh+1。
奖励评估与数据集 。对于问题 x x x以及真实响应为 y x ⋆ y_x^{\star} yx⋆,可以通过正则表达式匹配来评估最终答案的准确性 Rex ( y , y x ⋆ ) ↦ { 0 , 1 } \text{Rex}(y,y_x^{\star})\mapsto\{0,1\} Rex(y,yx⋆)↦{0,1},即准确率由 E y ∼ π ( ⋅ ∣ x ) [ Rex ( y , y x ⋆ ) ] \mathbb{E}{y\sim\pi(\cdot|x)}[\text{Rex}(y,y_x^{\star})] Ey∼π(⋅∣x)[Rex(y,yx⋆)]确定。现在,给定一个数据集 D = { ( x i , y x i ⋆ ) } i \mathcal{D}=\{(x_i,y{x_i}^{\star})\}_i D={(xi,yxi⋆)}i,主要目标就是通过优化在数据集 D \mathcal{D} D上输出的奖励来学习到一个好的策略。
2. 结果奖励模型(ORM)
给定一个应答 y y y,ORM的作用是评估该应答的准确性。
训练ORM 。从 D \mathcal{D} D中采样一些问题,然后收集训练数据 { ( x , y ∼ π ( ⋅ ∣ x ) , Rex ( y , y x ⋆ ) ) } \{(x,y\sim\pi(\cdot|x),\text{Rex}(y,y_x^{\star}))\} {(x,y∼π(⋅∣x),Rex(y,yx⋆))}。将"问题应答对"作为输入,正则表达式匹配结果 Rex ( y , y x ⋆ ) \text{Rex}(y,y_x^{\star}) Rex(y,yx⋆)作为输出来训练模型。
Test-Time应用:Best-of-K策略 。在测试时,ORM用于搜索候选解决方案并评分。给定一个基础策略 π \pi π,Best-of-K策略则表示为 BoK ( π ) \text{BoK}(\pi) BoK(π),其就是从 π \pi π中采样 K K K个应答,根据ORM对它们进行评分进行排序,然后返回得分最高的那个应答。当策略 π \pi π解决问题 x x x的概率为 p x p_x px,那么 BoK ( π ) \text{BoK}(\pi) BoK(π)的解决该问题的概率为 1 − ( 1 − p k ) K 1-(1-p_k)^K 1−(1−pk)K。一般来说,该值大于 p x p_x px,使得 BoK ( π ) \text{BoK}(\pi) BoK(π)比 π \pi π更强。
3. 过程奖励模型(PRM)
PRM的作用 。PRM会对应答 y ∼ π y\sim\pi y∼π的每个步骤 a h a_h ah进行评分。不同于ORM,PRM训练数据需要昂贵的步骤级人工标注。
训练PRM 。一些研究尝试通过采样的方式自动获得过程奖励的标注。具体来说,假设要评估某个前缀,则从 π \pi π采用若干个后续的补全,然后利用这些补全的准确性期望来评估该前缀。其实就是强化学习中的动作价值函数 Q π Q^{\pi} Qπ。类似地,也可以定义状态价值函数 V π ( s h ) : = E a h ∼ π ( ⋅ ∣ s h ) Q π ( s h , a h ) V^{\pi}(s_h):=\mathbb{E}{a_h\sim\pi(\cdot|s_h)}Q^{\pi}(s_h,a_h) Vπ(sh):=Eah∼π(⋅∣sh)Qπ(sh,ah)作为评估状态 s h s_h sh价值的方式。这些工作将 Q π Q^{\pi} Qπ作为PRM,从而评估状态 s h s_h sh下动作 a h a_h ah的分数 Q π ( s h , a h ) Q^{\pi}(s_h,a_h) Qπ(sh,ah)。
Q π ( ( x , a 1 , ... , a h − 1 ⏟ 状态 s h ) , a h ⏟ 动作 a h ) = E a h + 1 , ... , a H ∼ π ( ⋅ ∣ s h , a h ) [ Rex ( ( a 1 , ... , a H ) , y x ⋆ ) ] ⏟ 未来成功的可能性 Q^{\pi}(\underbrace{(x,a_1,\dots,a{h-1}}{状态s_h}),\underbrace{a_h}{动作a_h})=\underbrace{\mathbb{E}{a{h+1},\dots,a_H\sim\pi(\cdot|s_h,a_h)}\Big[\text{Rex}((a_1,\dots,a_H),y_x^{\star})\Big]}_{未来成功的可能性} \\ Qπ(状态sh (x,a1,...,ah−1),动作ah ah)=未来成功的可能性 Eah+1,...,aH∼π(⋅∣sh,ah)[Rex((a1,...,aH),yx⋆)]
Test-Time应用:Beam Search 。一种在test-time利用PRM的方式就是利用其指导解码过程中的beam search。在第0步时,初始化一个最大宽度为B的beam,仅包含原始的问题。第h步,一个beam包含了B个前缀,记为 { s i } i = 1 B \{s_i\}{i=1}^B {si}i=1B。从其中的每个状态 s i s_i si出发,利用 π ( ⋅ ∣ s i ) \pi(\cdot|s_i) π(⋅∣si)采样C个独立的动作 { a i , j } j = 1 C \{a{i,j}\}{j=1}^C {ai,j}j=1C,每个动作最终都会产生一个新的状态。PRM会为每个新状态 ( s i , a i , j ) (s_i,a{i,j}) (si,ai,j)分配一个分数,仅保留前B个最高分的状态在beam中,用于后一步的生成。
二、到底该怎么定义过程奖励
直觉上,我们希望得到的是那些能够更加有效且可靠地抵达正确答案的轨迹。传统的过程奖励主要是评估单个步骤的正确性或者相关性,这可能导致LLM生成琐碎或者重复的中间步骤。
1. 过程奖励应该是优势,而不是价值函数
1.1 价值函数的问题
先来看看,在test-time beam search过程中使用动作价值函数 Q π ( s , a ) Q^{\pi}(s,a) Qπ(s,a)所存在的问题。如上图(a)所示,beam从两个状态 s 1 s_1 s1和 s 2 s_2 s2出发,若基于 Q π Q^{\pi} Qπ来选择动作,则会选择 a 1 , 1 a_{1,1} a1,1和 a 1 , 3 a_{1,3} a1,3。最终会将 s 2 s_2 s2从beam中移除,因为要保持beam为2。但是,选择 a 1 , 1 a_{1,1} a1,1会使得整体的价值降低0.05,即 Q π ( s 1 , a 1 , 1 ) − V π ( s 1 ) Q^{\pi}(s_1,a_{1,1})-V^{\pi}(s_1) Qπ(s1,a1,1)−Vπ(s1)。显然,这样的方式并不合理,因为 Q π Q^{\pi} Qπ无法衡量"进展"。
1.2 如何衡量"进展"
一种直接的方法就是使用优势函数来衡量进展
A π ( s h , a h ) : = Q π ( s h , a h ) − V π ( s h ) = Q π ( s h , a h ) − Q π ( s h − 1 , a h − 1 ) A^{\pi}(s_h,a_h):=Q^{\pi}(s_h,a_h) - V^{\pi}(s_h)=Q^{\pi}(s_h,a_h)-Q^{\pi}(s_{h-1},a_{h-1}) \\ Aπ(sh,ah):=Qπ(sh,ah)−Vπ(sh)=Qπ(sh,ah)−Qπ(sh−1,ah−1)
此外,由于优势的取值即可以是正值,也可以是负值。当生成的步骤对于求解答案有帮助则可以提供优势监督信息来改善策略,若生成的步骤没有产生有用的步骤,也可以通过"负梯度"来加速强化学习训练。
当然,本文并不建议直接使用策略 π \pi π的优势函数,而是提出使用证明者策略 μ \mu μ的优势函数。这里先假设 μ \mu μ的优势函数 A μ A^{\mu} Aμ同样可以评价单步步骤的"进展",至于为什么不直接使用 π \pi π会在随后给出讨论,暂时先接受这个假设。
2. 过程优势验证器(Process Advantage Verifiers, PAV)
2.1 目标函数与PAV
先来看看标准强化学习的目标函数
l ORM-RL ( π ) : = E x ∼ D , ( a 1 , ... , a H ) ∼ π ( ⋅ ∣ x ) [ Rex ( ( x , a 1 , ... , a H ) , y x ⋆ ) ] \mathcal{l}{\text{ORM-RL}}(\pi):=\mathbb{E}{x\sim\mathcal{D},(a_1,\dots,a_H)\sim\pi(\cdot|x)}[\text{Rex}((x,a_1,\dots,a_H),y_x^{\star})] \\ lORM-RL(π):=Ex∼D,(a1,...,aH)∼π(⋅∣x)[Rex((x,a1,...,aH),yx⋆)]
最大化该目标函数就可以优化策略。
在标准强化学习目标函数的基础上合并过程奖励 A μ A^{\mu} Aμ就可以鼓励模型进行更多探索,
l PAV-RL π ′ ( π ) : = l ORM-RL ( π ) + α ⋅ ∑ h = 1 H E s h ∼ d h π ′ E a h ∼ π ( ⋅ ∣ s h ) [ A μ ( s h , a h ) ] \mathcal{l}{\text{PAV-RL}}^{\pi'}(\pi):=\mathcal{l}{\text{ORM-RL}}(\pi)+\alpha\cdot\sum_{h=1}^H\mathbb{E}{s_h\sim d_h^{\pi'}}\mathbb{E}{a_h\sim\pi(\cdot|s_h)}[A^{\mu}(s_h,a_h)] \\ lPAV-RLπ′(π):=lORM-RL(π)+α⋅h=1∑HEsh∼dhπ′Eah∼π(⋅∣sh)[Aμ(sh,ah)]
第二项是"证明者"策略 μ \mu μ在连续两个步骤成功可能性之差。 d h π ′ d_h^{\pi'} dhπ′表示由上一步策略 π ′ \pi' π′在步骤 h h h时的状态分布。基于"策略梯度"的推导,可以得到
∇ π l PAV-RL π ′ ( π ) ∣ π ′ = π = ∑ h = 1 H ∇ π log π ( a h ∣ s h ) ⋅ ( Q π ( s h , a h ) + α ⋅ A μ ( s h , a h ) ) \nabla_{\pi}\mathcal{l}{\text{PAV-RL}}^{\pi'}(\pi)|{\pi'=\pi}=\sum_{h=1}^H\nabla_{\pi}\log\pi(a_h|s_h)\cdot(Q^{\pi}(s_h,a_h)+\alpha\cdot A^{\mu}(s_h,a_h)) \\ ∇πlPAV-RLπ′(π)∣π′=π=h=1∑H∇πlogπ(ah∣sh)⋅(Qπ(sh,ah)+α⋅Aμ(sh,ah))
直觉上, Q π ( s h , a h ) + α A μ ( s h , a h ) Q^{\pi}(s_h,a_h)+\alpha A^{\mu}(s_h,a_h) Qπ(sh,ah)+αAμ(sh,ah)表示结合了针对最终结果 Q π Q^\pi Qπ和过程奖励 A μ A^{\mu} Aμ来对步骤 a h a_h ah进行评分。可以通过两种方式间接优化上面的公式:(a) 基于上面的奖励指导beam search;(b) 使用策略梯度来直接优化。但是,这两种方法都需要一个能预测 A μ ( s h , a h ) A^{\mu}(s_h,a_h) Aμ(sh,ah)的验证器,将这种验证器称为过程验证器(process advantage verifiers, PAV)。
2.2 为什么需要策略 μ \mu μ
μ \mu μ最自然的选择就是策略 π \pi π。但是,这种选择会使得PAV的目标函数退化为标准RL的目标函数。
证明:
由于 μ = π \mu=\pi μ=π,有
A μ = A π = Q π ( s h , a h ) − V π ( s h ) A^{\mu}=A^{\pi}= Q^{\pi}(s_h,a_h)-V^{\pi}(s_h) \\ Aμ=Aπ=Qπ(sh,ah)−Vπ(sh)代入到PAV目标函数中,有
l PAV-RL π ′ ( π ) = l ORM-RL ( π ) + α ⋅ ∑ h = 1 H E s h ∼ d h π ′ E a h ∼ π ( ⋅ ∣ s h ) [ A μ ( s h , a h ) ] = l ORM-RL ( π ) + α ⋅ ∑ h = 1 H E s h ∼ d h π ′ E a h ∼ π ( ⋅ ∣ s h ) [ Q π ( s h , a h ) − V π ( s h ) ] = l ORM-RL ( π ) + α ⋅ ∑ h = 1 H E s h ∼ d h π ′ [ E a h ∼ π ( ⋅ ∣ s h ) Q π ( s h , a h ) − V π ( s h ) ] \begin{align} \mathcal{l}{\text{PAV-RL}}^{\pi'}(\pi)&=\mathcal{l}{\text{ORM-RL}}(\pi)+\alpha\cdot\sum_{h=1}^H\mathbb{E}{s_h\sim d_h^{\pi'}}\mathbb{E}{a_h\sim\pi(\cdot|s_h)}[A^{\mu}(s_h,a_h)] \\ &=\mathcal{l}{\text{ORM-RL}}(\pi)+\alpha\cdot\sum{h=1}^H\mathbb{E}{s_h\sim d_h^{\pi'}}\mathbb{E}{a_h\sim\pi(\cdot|s_h)}[Q^{\pi}(s_h,a_h)-V^{\pi}(s_h)] \\ &=\mathcal{l}{\text{ORM-RL}}(\pi)+\alpha\cdot\sum{h=1}^H\mathbb{E}{s_h\sim d_h^{\pi'}}[\mathbb{E}{a_h\sim\pi(\cdot|s_h)}Q^{\pi}(s_h,a_h)-V^{\pi}(s_h)] \end{align} \\ lPAV-RLπ′(π)=lORM-RL(π)+α⋅h=1∑HEsh∼dhπ′Eah∼π(⋅∣sh)[Aμ(sh,ah)]=lORM-RL(π)+α⋅h=1∑HEsh∼dhπ′Eah∼π(⋅∣sh)[Qπ(sh,ah)−Vπ(sh)]=lORM-RL(π)+α⋅h=1∑HEsh∼dhπ′[Eah∼π(⋅∣sh)Qπ(sh,ah)−Vπ(sh)]由于 E a h ∼ π ( ⋅ ∣ s h ) Q π ( s h , a h ) = V π ( s h ) \mathbb{E}{a_h\sim\pi(\cdot|s_h)}Q^{\pi}(s_h,a_h)=V^{\pi}(s_h) Eah∼π(⋅∣sh)Qπ(sh,ah)=Vπ(sh)。则有
l PAV-RL π ′ ( π ) = l ORM-RL ( π ) + α ⋅ ∑ h = 1 H E s h ∼ d h π ′ [ 0 ] = l ORM-RL ( π ) \mathcal{l}{\text{PAV-RL}}^{\pi'}(\pi)=\mathcal{l}{\text{ORM-RL}}(\pi)+\alpha\cdot\sum{h=1}^H\mathbb{E}{s_h\sim d_h^{\pi'}}[0]=\mathcal{l}{\text{ORM-RL}}(\pi) \\ lPAV-RLπ′(π)=lORM-RL(π)+α⋅h=1∑HEsh∼dhπ′[0]=lORM-RL(π)
此外,若 π \pi π比较弱,那么大多数情况下 Q π ≈ 0 Q^{\pi}\approx 0 Qπ≈0,那么 A π ≈ 0 A^\pi\approx 0 Aπ≈0,那么使用奖励来指导beam search将完全无效。**因此,更好的方法是使用一个不同的证明者策略 μ \mu μ,而且 μ \mu μ的能力应该很强才行。但是,即使是这样也可能并不比优化结果奖励好。**例如,对于求解过程中的某个不相关的步骤,无论 μ \mu μ有多强则在该步骤前和步骤后的 Q μ Q^\mu Qμ都是相同的,因此 μ \mu μ从步骤前或者步骤后的任一步骤都能成功。这表明 μ \mu μ无法区分该步骤,导致大多数情况下 A μ ≈ 0 A^{\mu}\approx 0 Aμ≈0。在强化学习过程中使用这种过程奖励,将导致其与标准强化学习相同的结果。那么,如何获得一个好的"证明者"呢?
3. 实例分析:策略 μ \mu μ的选择
先从一个简单的示例进行分析。给定一个由词表 V : = { 1 , 2 , ... , 15 } \mathcal{V}:=\{1,2,\dots,15\} V:={1,2,...,15}中token构成的子序列 y ⋆ y^{\star} y⋆,训练策略 π \pi π来生成包含该子序列的应答。当且仅当 y ⋆ y^{\star} y⋆出现在 y y y中时,奖励值 r ( y , y ⋆ ) = 1 r(y,y^{\star})=1 r(y,y⋆)=1。策略 μ \mu μ使用一个标量参数 γ > 0 \gamma>0 γ>0来控制,当 γ \gamma γ增加时, μ \mu μ的效果得以改善。
使用 Q π + α A μ Q^{\pi}+\alpha A^{\mu} Qπ+αAμ作为奖励要比结果奖励的样本效率高10倍 。如上图3(a)所示,令 γ = 10 \gamma=10 γ=10,利用奖励 Q π + α A μ Q^{\pi}+\alpha A^{\mu} Qπ+αAμ训练的 π \pi π能够达到100%准确率。而仅用结果奖励是完全无效。上图3(b)中,仅当 γ \gamma γ位于区间 [ 8 , 15 ] [8,15] [8,15]时才有效。当位于该区间外,大多数优势 A μ A^{\mu} Aμ都接近于0,也就是 μ \mu μ即不能太强,也不能太弱。
使用 Q π + α A μ Q^{\pi}+\alpha A^{\mu} Qπ+αAμ作为奖励要比结果奖励的Pass@N高5倍 。上图3©展示了Pass@N的指标,其主要是衡量由 π \pi π生成的N个轨迹的最大奖励,该指标代表着任何test-time search的性能天花板。相比于结果奖励,使用 Q π + α A μ Q^{\pi}+\alpha A^{\mu} Qπ+αAμ作为奖励的Pass@N指标要高出5倍。
4. 理论分析:策略 μ \mu μ的选择
策略 μ \mu μ应该与 π \pi π有互补性 。策略 μ \mu μ应该为 π \pi π生成的不同动作赋予不同的优势值 A μ ( s h , a h ) A^{\mu}(s_h,a_h) Aμ(sh,ah),从而帮助 π \pi π在更新中更好地进行探索。这可以通过在动作空间中有足够的方差 V a ∼ π [ A μ ( s h , a ) ] \mathbb{V}_{a\sim\pi}[A^{\mu}(s_h,a)] Va∼π[Aμ(sh,a)]来形式化地表达。
策略 μ \mu μ应该与 π \pi π保持一定的对齐 。足够大的方差可能导致相互冲突的学习信号,即使得奖励 Q μ + α A π Q^{\mu}+\alpha A^{\pi} Qμ+αAπ不太可靠。因此,需要 A μ ( s h , a h ) A^{\mu}(s_h,a_h) Aμ(sh,ah)和 A π ( s h , a h ) A^{\pi}(s_h,a_h) Aπ(sh,ah)保持一定的相关性,即 E π [ < A μ , A π > ] \mathbb{E}_{\pi}[<A^{\mu},A^{\pi}>] Eπ[<Aμ,Aπ>]不要太负。
定理3.1 策略改进的下界 。对于基础策略 π t \pi_t πt,在经过一步优化后在状态分布 ρ \rho ρ上的改进:
E s ∼ ρ [ V π t + 1 ( s ) − V π t ( s ) ] ≳ γ ⋅ E s ∼ ρ V a ∼ π t [ A μ ( s , a ) ] + γ ⋅ E s ∼ ρ E a ∼ π t [ A μ ( s , a ) A π t ( s , a ) ] \mathbb{E}{s\sim\rho}[V^{\pi{t+1}}(s)-V^{\pi_t}(s)]\gtrsim\gamma\cdot\mathbb{E}{s\sim\rho}\mathbb{V}{a\sim\pi_t}[A^{\mu}(s,a)]+\gamma\cdot\mathbb{E}{s\sim\rho}\mathbb{E}{a\sim\pi_t}[A^{\mu}(s,a)A^{\pi_t}(s,a)] \\ Es∼ρ[Vπt+1(s)−Vπt(s)]≳γ⋅Es∼ρVa∼πt[Aμ(s,a)]+γ⋅Es∼ρEa∼πt[Aμ(s,a)Aπt(s,a)]
公式左侧表示策略 π t \pi_t πt改进的期望值,公式右侧这个改进的下界。可以看做,下界是由 μ \mu μ在状态 s s s下动作的优势方差 V a ∼ π t [ A μ ( s , a ) ] \mathbb{V}{a\sim\pi_t}[A^{\mu}(s,a)] Va∼πt[Aμ(s,a)]以及策略 μ \mu μ和 π \pi π的对齐性 E s ∼ ρ E a ∼ π t [ A μ ( s , a ) A π t ( s , a ) ] \mathbb{E}{s\sim\rho}\mathbb{E}_{a\sim\pi_t}[A^{\mu}(s,a)A^{\pi_t}(s,a)] Es∼ρEa∼πt[Aμ(s,a)Aπt(s,a)]决定的。这与上面的直觉分析一致。
Best-of-K策略是 μ \mu μ的一个好选择 。Best-of-K策略从基础策略 π \pi π中采样多个动作并选择得分最高的动作,这样能够更好地区分 π \pi π生成的不同动作,也就是有互补性。此外,Best-of-K策略与 π \pi π能保持一定的对齐性。若令 μ = BoK ( π ) \mu=\text{BoK}(\pi) μ=BoK(π)的话,两者的Q值关系有 Q μ ( s , a ) = 1 − ( 1 − Q π ( s , a ) ) K Q^{\mu}(s,a)=1-(1-Q^{\pi}(s,a))^K Qμ(s,a)=1−(1−Qπ(s,a))K。这表示两个的Q值具有正相关性,也代表着两者的优势函数也是正相关的。
三、实验
实验分别在test-time search和online RL两种设定下进行。这里给出一些实验结果。
Test-Time Search
- PAV提高了test-time search的准确率和计算效率;
- PAV提高了search时的多样性;
- Best-of-K是 μ \mu μ的一个不错的选择,特别是当K=4时;
- 较弱的 μ \mu μ也是有效的;
Online RL
- PAV提高了RL的样本效率和准确性;
- PAV提高了Pass@N的性能;
- PAV-RL训练出的策略能够解决SFT策略无法解决的难题;