1、Post Training
预训练提供了广泛的语言基础,而后训练使 LLM 能够完善其知识体系、提升推理能力、增强事实准确性,并更有效地与用户意图和伦理考量保持一致。微调、强化学习和测试时缩放已成为优化 LLM 性能、确保模型稳健性以及提高其在各种实际任务中适应性的关键策略。
LLM 存在一些关键缺陷,如 “幻觉”,以及在长篇论述中难以保持逻辑一致性。此外 LLM 中的推理概念仍然是一个存在争议的话题,LLM 中的 “推理” 指的是它们基于数据中的统计模式生成逻辑连贯回复的能力,而非基于明确的逻辑推理或符号操作。与操作明确规则和事实的符号推理不同,LLM 以一种隐含的、概率性的方式运行。
LLM 的训练大致可分为两个阶段:预训练,通常基于大规模语料库进行下一个词预测的目标任务;以及后训练,包括多轮微调与校准。训练后机制旨在通过优化模型行为、使输出符合人类意图、减少偏差或不准确之处来减轻 LLM 的局限性。
微调使模型能够进行特定任务的学习,但存在过拟合的风险且计算成本高昂。为应对这些挑战,诸如强化学习(RL)之类的方法通过利用动态反馈和优化顺序决策来提高模型的适应性。此外,诸如 LoRA、适配器和检索增强生成(RAG)等缩放技术的进步,提高了计算效率和事实准确性。
1.1、LLM 微调
微调通过在精心整理的数据集上更新参数,使预训练的 LLM 适应特定任务或领域。虽然 LLM 在大规模预训练后具有良好的泛化能力,但微调可提升在情感分析、问答以及医疗诊断等特定领域应用等任务中的性能。这一过程通常是有监督的,使模型符合任务要求,但也带来了诸如过拟合、高计算成本以及对数据偏差敏感等挑战。
为此,像 LoRA 和适配器这样的高效参数技术,通过更新明确的参数来学习特定任务的适应性,显著降低了计算开销。随着模型的专业化,导致它们可能在跨领域泛化方面会遇到困难,这凸显了专业性与通用性之间的权衡。
微调 LLMs 以执行特定任务,提升了性能,但存在过拟合、高计算成本以及泛化能力降低的风险
1.2、强化学习
在传统的强化学习中,智能体与结构化环境进行交互,采取离散动作在不同状态之间转换,同时最大化累积奖励。强化学习的应用领域,如机器人技术、棋盘游戏和控制系统,具有定义明确的状态-动作空间和清晰的目标。LLM 中的强化学习则有很大不同。
LLM 不是从有限的动作集合中进行选择,而是从庞大的词汇表中选择词元,并且其不断演变的状态由一个不断增长的文本序列构成。这使得规划和功劳分配变得复杂,因为词元选择的影响可能要到后来才会显现出来。基于语言的强化学习中的反馈也很稀疏、具有主观性且存在延迟,它依赖于启发式评估和用户偏好,而非明确的性能指标。
此外,与传统强化学习通常针对单一目标进行优化不同,LLM 必须平衡多个、有时甚至相互冲突的目标。将基于过程的奖励(例如,思维链推理)与基于结果的评估(例如,回复质量)相结合的混合方法有助于优化学习过程。因此,LLM 的强化学习需要专门的优化技术,以处理高维输出、非平稳目标和复杂的奖励结构,确保回复在上下文中相关并符合用户期望。
LLMs 中的强化学习超越了传统强化学习,因为它要在广阔的动作空间中进行探索,处理主观且延迟的奖励,并平衡多个目标,这就需要专门的优化技术
1.3、缩放
缩放对于提升 LLM 的性能和效率至关重要。它有助于提高跨任务的泛化能力,但也带来了巨大的计算挑战。在推理过程中,平衡性能和资源效率需要有针对性的策略。诸如思维链(CoT)推理和思维树(ToT)框架之类的技术,通过将复杂问题分解为顺序或树状结构的步骤来增强多步骤推理能力。
此外,基于搜索的技术能够对可能的输出进行迭代探索,有助于完善回复并确保更高的事实准确性。这些方法与 LoRA、适配器和检索增强生成(RAG)等方法相结合,优化了模型大规模处理复杂特定领域任务的能力。检索增强生成(RAG)通过动态检索外部知识来提高事实准确性,从而减轻了静态训练数据的局限性。分布式训练框架利用并行处理来应对大规模模型的高计算需求。测试时缩放(Test-time scaling)通过根据任务复杂性动态调整参数来优化推理过程。
修改深度、宽度或激活层可以平衡计算效率和输出质量,这在资源有限或条件变化的情况下非常有价值。尽管取得了一些进展,但缩放也带来了一些挑战,如收益递减、推理时间变长以及对环境的影响,尤其是当搜索技术在测试时而不是训练期间执行时。确保可访问性和可行性对于维持高质量、高效的 LLM 部署至关重要。
Test-time scaling 通过在推理过程中动态调整计算资源,增强了 LLM 的适应性
2、背景
LLM 已经改变了推理方式,其通过使用最大似然估计(MLE),基于海量文本数据来学习预测序列中的下一个词元,这种方法在给定输入的情况下最大化生成正确序列的概率。这是通过最小化负对数似然来实现的:
\[\mathcal{L}_{\text{MLE}} = \sum_{t = 1}^{T} \log P_{\theta}(y_{t} \mid y_{<t}, X)\]在这里,$X$ 表示输入,例如提示或上下文。$Y = (y_{1}, y_{2}, \ldots, y_{T})$ 是相应的目标序列,而 $P_{\theta}(y_{t} \mid y_{<t}, X)$ 表示在给定前面词元的情况下,模型对词元 $y_{t}$ 的预测概率。
基于词元的训练可以确保流畅性,但由于在推理过程中未纠正的错误,可能会导致级联错误
这些模型随着规模的扩大,展现出了涌现的推理能力,尤其是当在包含代码和数学内容等多样化数据上进行训练时。然而,尽管 LLMs 能力令人印象深刻,但在处理长序列时,它们难以保持连贯性和上下文相关性。要解决这些局限性,需要一种结构化的序列生成方法,而这与强化学习(RL)自然契合。
由于 LLM 以自回归的方式生成文本(即每个词元的预测都依赖于先前生成的词元),这个过程可以被建模为马尔可夫决策过程(MDP)中的一个顺序决策问题。在这种情况下,状态 $s_t$ 表示到目前为止生成的词元序列,动作 $a_t$ 是下一个词元,奖励 $R(s_t, a_t)$ 用于评估输出的质量。LLM 的策略 $\pi_{\theta}$ 被优化以最大化期望回报:
\[J(\pi_{\theta}) = \mathbb{E}\left[\sum_{t = 0}^{\infty} \gamma^{t}R(s_t, a_t)\right]\]其中 $\gamma$ 是折扣因子,它决定了未来奖励对当前决策的影响程度。$\gamma$ 值越高,对长期奖励的重视程度就越高。强化学习的主要目标是学习一种策略,使期望的累积奖励(通常称为回报)最大化。
这需要在探索(尝试新动作以发现其效果)和利用(利用已知能产生高奖励的动作)之间取得平衡。虽然 LLM 使用静态数据来优化似然函数,但强化学习则是通过动态交互来优化期望回报。为了确保 LLM 生成的回复不仅在统计上具有可能性,而且符合人类偏好,超越静态优化方法至关重要。
虽然基于似然的训练可以从海量语料库中捕捉模式,但它缺乏在交互式环境中优化决策所需的适应性。通过利用结构化方法来最大化长期目标,模型可以动态调整其策略,平衡探索和利用,以提高推理能力、连贯性和一致性。
LLMs 由于模型规模的扩大而展现出涌现能力,而强化学习(RL)则对这些能力进行优化和校准,从而实现更好的推理和交互效果
2.1、基于 RL 的顺序推理
在现代 LLM 中观察到的思维链推理,自然可以被构建为一个强化学习问题。从这个角度来看,每个中间推理步骤都被视为一个对最终答案有贡献的动作。策略梯度更新由下式给出:
\[\nabla_{\theta} J(\pi_{\theta}) = \mathbb{E}_{\tau} \left[ \sum_{t = 1}^{T} \nabla_{\theta} \log \pi_{\theta} (x_t \mid x_{1:t - 1}) A(s_t, a_t) \right]\]其中,优势函数 $A(s_t, a_t)$ 将功劳分配到各个步骤,确保整个推理过程通过即时奖励和延迟奖励得到优化。这种公式,包括逐步骤的奖励分解,对于提高 LLM 在复杂推理任务上的可解释性和性能至关重要。在传统的强化学习公式中,智能体具有:
- 价值函数:$V(s) = \mathbb{E}[\text{未来回报} \mid s]$
- 动作价值($Q$)函数:$Q(s, a) = \mathbb{E}[\text{未来回报} \mid s, a]$
- 优势函数:$A(s, a) = Q(s, a) - V(s)$
换句话说,$A(s, a)$ 衡量在状态 $s$ 下采取特定动作 $a$ 相对于智能体通常预期(其基线 $V(s)$)的好坏程度。
2.2、语言建模的早期强化学习方法
在这里,简要概述为将强化学习应用于语言生成任务奠定基础的开创性方法。这些最初的努力通过直接调整决策模型(称为 “策略”)的参数来最大化奖励,从而训练该模型。下面解释一些策略梯度方法:
a、策略梯度(Policy Gradient,REINFORCE)
REINFORCE 算法是一种通过根据从其动作中获得的奖励来调整模型的策略,以改进决策的方法。该算法不是直接学习在每种情况下的最佳动作,而是优化不同动作被选择的可能性,随着时间的推移逐渐改善结果。在每个步骤中,模型根据其过去决策的表现来更新其参数($\theta$):
\[\theta \leftarrow \theta + \alpha \left( G - b \right) \sum_{t = 1}^{T} \nabla_{\theta} \log \pi_{\theta} (a_t \mid s_t)\]在这里:$G$ 表示模型在一个情节中积累的总奖励,$b$ 是一个基线值,有助于减少方差,使学习更加稳定,$\nabla_{\theta} \log \pi_{\theta} (a_t \mid s_t)$ 衡量 $\theta$ 的微小变化对在给定状态 $s_t$ 下选择动作 $a_t$ 的概率的影响程度,$\alpha$ 是学习率,控制着策略在每个步骤中的更新幅度。
基于长期奖励而不是即时结果来优化动作,在最近的 LLM 中仍然是基础,使得能够探索多种推理路径。
b、使用 MIXER 的课程学习
Ranzato 等人引入了从最大似然估计(MLE)到强化学习的逐步过渡。总体损失是一个加权组合:
\[\mathcal{L} = \lambda(t) \mathcal{L}_{\text{MLE}} + (1 - \lambda(t)) \mathcal{L}_{\text{RL}}\]其中 $\lambda(t)$ 随着训练时间而减小。这种课程设置有助于模型逐渐适应强化学习目标,并减轻训练和推理之间的不匹配。
c、自临界序列训练(SCST)
SCST 通过将模型采样得到的输出与它自己的最佳(贪婪)预测进行比较,来改进策略梯度方法。SCST 不使用任意基线,而是使用模型自己得分最高的输出,确保更新相对于模型当前认为的最佳响应能直接提高性能。梯度更新如下:
\[\nabla_{\theta} J(\pi_{\theta}) \approx \left( r(y^s) - r(\hat{y}) \right) \nabla_{\theta} \log \pi_{\theta} (y^s)\]其中 $y^s$ 是一个采样序列,$\hat{y}$ 是贪婪输出,$r(y)$ 表示一个评估指标,例如用于机器翻译的 BLEU 或用于图像描述的 CIDEr。由于学习信号基于 $r(y^s) - r(\hat{y})$ 的差值,模型被明确训练以生成在评估指标下得分高于其自身基线的输出。
如果采样输出优于贪婪输出,模型会强化它;否则,会抑制该序列。这个直接的反馈循环确保训练与期望的评估标准一致,而不仅仅是最大化似然。通过利用模型自己的最佳预测作为基线,SCST 有效地减少了方差并稳定了训练,同时优化了实际性能指标。
d、最小风险训练(MRT)
MRT 直接最小化输出分布上的期望风险。给定一个特定任务的损失 \(\Delta(y, y^{*})\),用于比较生成的输出 $y$ 和参考输出 $y^{*}$,MRT 目标定义为:
\[\mathcal{L}_{\text{MRT}}(\theta) = \sum_{y \in \mathcal{Y}} p_{\theta} (y \mid x) \Delta(y, y^{*})\]这个公式将评估指标(例如 $1 - \text{BLEU}$)直接纳入训练中,能够对策略进行细粒度的调整。
e、优势演员-评论家算法(A2C/A3C)
像 REINFORCE 这样的强化学习方法仅依赖于策略梯度,这会受到高方差的影响,导致学习不稳定且效率低下。由于奖励信号在不同轨迹上波动,更新可能会有噪声,导致收敛缓慢或不稳定。为了缓解这个问题,演员-评论家
方法结合了两个组件:一个演员和一个评论家。
演员是一个策略 $\pi_{\theta} (a_t \mid s_t)$,用于在状态 $s_t$ 选择动作 $a_t$,而评论家是一个价值函数 $V_{\phi}(s_t)$,用于评估一个状态的期望回报。评论家提供了一个更稳定的学习信号,减少了策略更新中的方差,并能够在连续动作空间中进行高效学习。
演员的更新由策略梯度定理指导,其中在 2.1 节中定义的优势函数 $A(s_t, a_t)$ 决定了动作 $a_t$ 相对于状态 $s_t$ 的期望值要好多少。学习率为 $\alpha$ 的策略更新如下:
\[\theta \leftarrow \theta + \alpha A(s_t, a_t) \nabla_{\theta} \log \pi_{\theta} (a_t \mid s_t)\]同时,评论家使用时间差分学习进行更新,最小化其估计值与实际回报之间的均方误差:
\[\phi \leftarrow \phi - \beta \nabla_{\phi} \left( V_{\phi}(s_t) - G_t \right)^2\]其中 $\beta$ 是评论家的学习率。为了提高稳定性和效率,已经提出了一些改进方法。资格迹允许从最近的状态中学习,从而实现更快的收敛。使用神经网络进行函数逼近确保了对高维输入的有效处理。像自然梯度方法这样的高级变体使用费舍尔信息矩阵来调整更新,提高了收敛速度。
一个著名的早期例子是 Barto’s Actor-Critic,其中评论家使用线性函数 $V_{\phi}(s_t)$,演员遵循线性策略。像 A2C(Advantage Actor-Critic,优势演员-评论家算法)和 A3C(Asynchronous Ad-vantage Actor-Critic,异步优势演员-评论家算法)这样的现代方法通过在多个环境中并行化训练扩展了这种方法,从而实现更快、更稳定的学习。通过利用评论家的价值估计,演员-评论家方法稳定了学习过程,提高了样本效率,并加速了收敛,使其对于复杂的决策任务更加有效。
f、与现代方法的联系
上述早期的强化学习方法:REINFORCE、MIXER、SeqGAN、自临界序列训练(SCST)、最小风险训练(MRT)以及演员-评论家算法,为 LLM 中的顺序推理奠定了数学基础。这些方法为诸如暴露偏差和高方差等挑战提供了初步的解决方案。
现代技术,例如使用近端策略优化(PPO)的大规模基于人类反馈的强化学习(RLHF)以及先进的奖励模型,如群体相对策略优化(GRPO),都直接建立在这些理念之上。通过整合复杂的奖励信号并利用高效的策略更新,当代 LLM 在推理能力、安全性以及与人类价值观的一致性方面取得了提升,为稳健的多步骤推理和生成文本质量的提高铺平了道路。
下表提供了近期模型的概述,包括它们的参数、架构类型、所采用的提炼后的强化学习方法。
3、强化的 LLM
从方法论的角度来看,将强化学习整合到 LLM 的推理中通常遵循三个核心步骤:
- 监督微调(SFT):从一个预训练的语言模型开始,随后在由人类精心制作的高质量监督数据集上对其进行优化。这个阶段确保模型达到符合格式和风格指南的基线水平
- 奖励模型(RM)训练:收集微调后模型生成的输出,并进行人类偏好标注。然后训练奖励模型来复制这些基于标注的分数或排名,有效地学习一个连续的奖励函数,该函数将回复文本映射到一个标量值
- 强化学习微调:最后,主要的语言模型通过一种策略梯度算法(最常用的如近端策略优化(PPO))进行优化,以使奖励模型的输出最大化。通过不断重复这个循环,LLM 学会生成在准确性、有用性和风格连贯性等关键维度上人类更倾向的回复
- 奖励建模与校准:开发复杂的奖励函数——这些函数源自人类偏好、对抗性反馈或自动指标——以引导模型生成连贯、安全且在上下文合适的输出。这些奖励对于在多步骤推理过程中进行有效的功劳分配至关重要
早期使 LLM 与人类偏好保持一致的方法利用了经典的强化学习算法,例如近端策略优化(PPO)和信赖域策略优化(TRPO),这些算法通过最大化期望累积奖励来优化策略,同时通过一个替代目标函数和 KL 散度正则化对策略更新施加约束。为了实现基于偏好的可扩展优化,已经出现了比这些方法更优的替代方案,例如直接偏好优化(DPO)和群体相对策略优化(GRPO),它们将校准目标重新表述为针对人类标注的偏好数据的基于排名的对比损失函数。
与依赖显式奖励模型和评论家网络的近端策略优化(PPO)和信赖域策略优化(TRPO)不同,直接偏好优化(DPO)和群体相对策略优化(GRPO)分别通过利用对数似然比和群体奖励比较来直接优化策略,在保留偏好一致的学习动态的同时,无需进行显式的价值函数近似。从基于经典强化学习的校准到基于偏好的直接优化的这种转变引入了新的公式,如对比排名损失、策略似然比正则化和分组优势估计。

3.1、奖励建模
设 $\mathcal{X}$ 为可能的查询空间(例如,用户提示)。对于每个查询 $x\in \mathcal{X}$,我们收集一个或多个候选回复 $\{y_j\}_{j = 1}^{m_x}$,其中 $m_x$ 是针对查询 $x$ 的候选回复数量。通常,这些回复是由语言模型或策略在不同的采样或提示条件下生成的。人类注释员会对这些回复给出偏好判断。这些判断可以有多种形式:
- 成对偏好:对于同一查询 $x$ 的两个回复 $y_j$ 和 $y_k$,注释员指出 $y_j$ 是否优于 $y_k$
- 排名:对候选回复进行部分或完全排序,例如 $y_{j1}\succ y_{j2}\succ\cdots\succ y_{j m_x}$
我们用 ${r_j}$ 表示每个回复或回复对的此类人类偏好数据,其中 $r_j$ 可能是一个标签、一个排名或一个指示偏好程度的索引。那么整体数据集 $\mathcal{D}$ 就由 $N$ 个带注释的示例组成:
\[\mathcal{D}=\left\{\left(x^i, \{y_i^j\}_{j = 1}^{m_i}, \{\text{preferences}^i\}\right)\right\}_{i = 1}^{N}\]在实践中,大量的查询 $x$ 是从真实或模拟的用户请求中采样得到的。候选回复 $\{y_j\}_{j = 1}^{m_x}$ 是通过从基础语言模型中采样,或者使用集束搜索或其他解码策略生成的。然后,人类注释员根据预定义的标准(例如,质量、正确性、有用性等)对哪些回复更好(或更差)提供成对或排名反馈。
我们训练一个参数模型 $R_{\theta}(x, y)$,称为奖励模型,将每个(查询,回复)对 $(x, y)$ 映射到一个标量分数。目标是让 $R_{\theta}$ 反映一致性或偏好程度,即:
\[R_{\theta}: \mathcal{X}\times \mathcal{Y}\rightarrow\mathbb{R}\]这里 $Y$ 是所有可能回复的空间。
为了训练 $R_{\theta}$,我们使用数据集中的人类偏好标签来定义一个合适的基于排名的损失,如下所述。
a、Bradley–Terry 模型(Pairwise)
对于成对偏好,经常使用 Bradley–Terry Model。假设数据集表明,对于给定的查询 $x$,人类注释员偏好 $y_j$ 胜过 $y_k$,我们将其表示为 $y_j\succ y_k$。在 Bradley–Terry 下,$y_j$ 优于 $y_k$ 的概率由下式给出:
\[P(y_j\succ y_k|x;\theta)=\frac{\exp(R_{\theta}(x, y_j))}{\exp(R_{\theta}(x, y_j)) + \exp(R_{\theta}(x, y_k))}\]我们通过最大化观察到的偏好的似然性(或等效地最小化负对数似然)来训练$R_{\theta}$:
\[\mathcal{L}_{\text{BT}}(\theta)=-\sum_{(x, y_j\succ y_k)\in D}\log P(y_j\succ y_k|x;\theta)\]b、Plackett–Luce 模型(Rankings)
当有 $m$ 个回复的全部或部分排名可用时,即:
\[y_{j_{1}}\succ y_{j_{2}}\succ\cdots\succ y_{j_{m}}\]Plackett–Luce 模型将此排名的概率分解为:
\[P(y_{j_{1}}, \cdots, y_{j_{m}}|x;\theta)=\prod_{\ell = 1}^{m}\frac{\exp(R_{\theta}(x, y_{j_{\ell}}))}{\sum_{k = \ell}^{m}\exp(R_{\theta}(x, y_{j_{k}}))}\]其负对数似然为:
\[\mathcal{L}_{\text{PL}}(\theta)=-\sum_{(x, \text{rank})\in \mathcal{D}}\sum_{\ell = 1}^{m}\log\left(\frac{\exp(R_{\theta}(x, y_{j_{\ell}}))}{\sum_{k = \ell}^{m}\exp(R_{\theta}(x, y_{j_{k}}))}\right)\]在实践中,人们会最小化所选的基于排名的损失在所有偏好数据上的总和(或平均值):
\[\mathcal{L}(\theta)=\frac{1}{|\mathcal{D}|}\sum_{(x, \{y_j\}, \text{prefs})\in \mathcal{D}}\mathcal{L}_{\text{ranking}}\left(\theta; x, \{y_j\}, \text{prefs} \right)\]其中 \(\mathcal{L}_{\text{ranking}}\) 可以是 \(\mathcal{L}_{\text{BT}}\) 或 \(\mathcal{L}_{\text{PL}}\)。虽然奖励模型 $R_{\theta}(x, y)$ 提供了一个反映人类偏好的标量奖励信号,但这与常见的强化学习概念相关,特别是优势函数。
奖励建模使用基于排名的损失从人类偏好中学习一个函数,以进行策略优化
奖励建模类型:奖励可以分为显式和隐式方法。
3.1.1、显式奖励建模
显式奖励建模直接基于预定义的规则、启发式方法或人类注释来定义奖励函数。这种奖励结构涉及来自人类的直接数字信号,或者来自经过训练以近似人类判断(例如,排名或成对比较)的专门人工智能模块的信号。这种方法可以产生精确的奖励估计,但在大规模应用时可能耗时或成本高昂。示例用例包括 “红队” 演练,其中专家对有害输出的严重程度进行评级,或者领域专家任务,其中正确性必须由主题专家进行验证。
3.1.2、隐式奖励建模
隐式奖励建模从观察到的行为、交互或偏好信号中间接推断奖励,通常利用机器学习技术来发现潜在的奖励结构。它从用户交互指标(如点赞数、接受率、点击模式或会话参与时间)中获取信号。虽然它可以以最小的开销积累大量数据集,但这种方法存在鼓励一些行为的风险,这些行为以牺牲内容质量或真实性为代价来利用参与度启发式方法。
奖励函数:为文本生成任务定义一个奖励函数是一个不适定问题。LLM 中现有的强化学习方法要么专注于生成过程(过程奖励建模),要么专注于结果(结果奖励建模),以塑造 LLM 的行为。我们在下面解释这两种奖励建模范式。
3.1.3、结果奖励建模
结果奖励建模衡量最终结果(例如,最终答案在事实上是否正确,或者是否解决了用户的查询)。这种模型实施起来很直接,但对于结论是如何得出的可能提供的见解有限。它在短回复任务中很普遍,在这类任务中,用户主要关心的是最终陈述的正确性或简洁性。对于长回复任务,基于结果的奖励可能会导致功劳分配问题,即哪些特定的动作或状态导致了特定的奖励结果。
3.1.4、过程奖励建模
过程奖励建模在中间推理步骤中给予反馈,激励产生连贯、逻辑一致且结构良好的思维链。这种方法对于涉及数学推导、法律论证或代码调试的任务特别有价值,在这些任务中,得出答案的过程与最终陈述同样重要。在这类问题中,在各个步骤分配的奖励鼓励了透明度和稳健的逐步推理。然而,它需要更复杂的标注过程,例如,需要 “最佳” 推理步骤或部分得分。过程奖励可以与结果奖励相结合,以形成强大的多阶段训练信号。
带有最后一步聚合的 PRM 优于 ORM
3.1.5、具有自适应奖励模型的迭代强化学习
自适应奖励模型是一种训练方法,旨在通过迭代优化奖励模型和策略模型来持续提升 LLM 的性能。这种方法解决了奖励操控和奖励模型漂移的问题,在大规模强化学习训练期间,当奖励模型与期望目标不一致时,就可能出现这些问题。
强化学习过程被划分为多个迭代阶段,模型在循环中进行训练。每次迭代后,奖励模型会根据最新的模型行为和人类反馈进行更新。奖励模型不是静态的,而是随着时间不断演变,以更好地与人类偏好和任务要求保持一致。这种自适应确保了随着模型的改进,奖励信号仍然准确且相关。重复这个迭代过程,直到模型的性能达到稳定水平或满足期望的基准。奖励模型和策略模型共同进化,每次迭代都使它们更接近最优的一致性。
3.2、策略优化
一旦我们有了一个经过训练、能够捕捉人类偏好的奖励模型 $R_{\theta}(x, y)$,我们就可以将其整合到强化学习框架中,以优化策略 $\pi_{\phi}$。本质上,我们用 $R_{\theta}(x, y)$ 取代(或增强)环境的原生奖励信号,这样智能体就会专注于针对给定的查询 $x$ 生成人类偏好的回复 $y$。
用典型的强化学习符号表示:
- 这里的每个状态 $s$ 可以被解释为(在语言建模中)下一个词元的部分对话或部分生成过程
- 每个动作 $a$ 是要生成的下一个词元(或下一段文本)
- 策略 $\pi_{\phi}(a \mid s)$ 是下一个词元的条件分布,由 $\phi$ 参数化
我们试图找到 $\phi$,使得在 $R_{\theta}$ 下的期望奖励最大化。具体来说,设 $x$ 是用户查询,$y\sim\pi_{\phi}(\cdot \mid x)$ 是生成的回复。我们的目标是求解:
\[\max_{\phi} \mathbb{E}_{x\sim \mathcal{X}}\left[\mathbb{E}_{y\sim\pi_{\phi}(\cdot|x)}[R_{\theta}(x, y)]\right]\]这意味着,对于从策略 $\pi_{\phi}$ 中得出的用户查询 $x$ 和回复 $y$,平均而言,我们希望奖励模型的分数 $R_{\theta}(x, y)$ 尽可能高。
策略梯度与优势函数:现代算法(例如,PPO、GRPO、TRPO)依赖于策略梯度。下图对这些主要的强化学习框架进行了结构化的比较。每个框架都基于不同的原则进行策略学习、参考建模和奖励计算。
回想一下,优势函数 $A(s, a)$ 量化了一个动作 $a$ 比基线期望回报 $V(s)$ 好多少。从高层次来看,我们朝着增加具有正优势的动作 $a$ 的 $\pi_{\phi}(a \mid s)$ 概率,以及降低具有负优势的动作的 $\pi_{\phi}(a \mid s)$ 概率的方向来更新策略 $\pi_{\phi}$。
形式上,在时刻 $t$ 的优势 $A_t$ 可以写成:
\[A_t = Q(s_t, a_t) - V(s_t)\]其中 \(Q(s_t, a_t)\) 是从状态 $s_t$ 出发,采取动作 $a_t$ 时的期望未来回报(未来奖励的总和,包括 $R_{\theta}$)。
当使用奖励模型 $R_{\theta}$ 时:
- 我们将 $R_{\theta}(x, y)$ 解释为生成的回复 $y$ 的即时或最终奖励
- 因此,该策略的未来回报考虑了后续词元被 $R_{\theta}$ 给予正面评分的可能性
- 优势函数仍然体现了特定的生成步骤相较于基线性能 $V(s_t)$ 好多少
奖励模型学习的是相对偏好,而不是绝对分数。这避免了需要校准人类评分,并专注于成对比较
3.2.1、优势比偏好优化(ORPO)
最简单的方法是优势比偏好优化(ORPO),它直接根据人类的成对偏好来优化策略。ORPO 不是先学习一个单独的奖励模型,然后运行标准的强化学习,而是更新策略,以增加(根据人类标注)受偏好回复相对于不受偏好回复的出现可能性。其关键思想是关注优势比:
\[\frac{\pi_{\phi}(y_j|x)}{\pi_{\phi}(y_k|x)}\]其中 $y_j$ 是对于给定查询 $x$ 的受偏好回复,$y_k$ 是较不受偏好的回复。
成对偏好概率:在许多直接偏好方法(例如,Bradley–Terry 风格)中,人们会写出:
\[P_{\phi}(y_j \succ y_k|x) = \sigma\left(\ln\frac{\pi_{\phi}(y_j|x)}{\pi_{\phi}(y_k|x)}\right) = \frac{1}{1 + \exp\left(\ln\frac{\pi_{\phi}(y_k|x)}{\pi_{\phi}(y_j|x)}\right)}\]其中 $\sigma(\cdot)$ 是逻辑函数(sigmoid)。直观地说,如果策略 $\pi_{\phi}$ 为 $y_j$ 分配的概率高于 $y_k$,那么优势比 $\frac{\pi_{\phi}(y_j \mid x)}{\pi_{\phi}(y_k \mid x)}$ 就会超过 $1$,使得 $y_j$ 在模型下更有可能成为受偏好的结果。
在 ORPO 中,通常会为数据集中的所有对 $\{(x, y_j \succ y_k)\}$ 定义一个负对数似然损失:
\[\mathcal{L}_{\text{ORPO}}(\phi) = -\sum_{(x, y_j \succ y_k) \in \mathcal{D}} \log\left(P_{\phi}(y_j \succ y_k|x)\right)\]代入逻辑函数形式可得:
\[\mathcal{L}_{\text{ORPO}}(\phi) = -\sum_{(x, y_j \succ y_k) \in \mathcal{D}} \log\left(\frac{\pi_{\phi}(y_j|x)}{\pi_{\phi}(y_j|x) + \pi_{\phi}(y_k|x)}\right)\]这也可以被解释为在每个成对比较中,最大化正确(受偏好)标签的对数优势比。
通过优势比进行解释:通过将每个偏好标签 $(y_j \succ y_k)$ 视为对优势比 $\frac{\pi_{\phi}(y_j \mid x)}{\pi_{\phi}(y_k \mid x)}$ 的一个约束,ORPO 促使策略增加对 $y_j$ 的概率分配,同时减少对 $y_k$ 的概率分配。当在对数空间中观察时:
\[\ln\left(\frac{\pi_{\phi}(y_j|x)}{\pi_{\phi}(y_k|x)}\right)\]一个更高的值对应着选择 $y_j$ 而非 $y_k$ 的可能性更大。因此,最小化 \(\mathcal{L}_{\text{ORPO}}(\phi)\) 能使 $\pi_{\phi}$ 与人类标注的偏好保持一致。
ORPO 在组合多种奖励信号方面可能灵活性较差
3.2.2、LLM 中的近端策略优化(PPO)
近端策略优化(PPO)是一种流行的策略优化方法,它是一种使 LLM 与人类反馈相契合的策略。给定一个由参数 $\theta$ 表示的策略 $\pi_{\theta}$ 和一个奖励函数 $R$,PPO 通过优化一个经过裁剪的目标函数来更新策略,该目标函数在探索与稳定性之间进行平衡。
具体来说,如果 $r_t(\theta)=\frac{\pi_{\theta}(a_t \mid s_t)}{\pi_{\theta_{\text{ref}}}(a_t \mid s_t)}$ 表示在状态 $s_t$ 下采取动作 $a_t$ 的概率比率,那么裁剪后的 PPO 目标函数为:
\[\mathcal{L}^{\text{PPO}}(\theta) = \mathbb{E}_t\left[\min\left(r_t(\theta)A_t, \text{clip}(r_t(\theta), 1 - \epsilon, 1 + \epsilon)A_t\right)\right]\]其中,$A_t$ 是优势函数的估计值,$\epsilon$ 是一个超参数,用于控制与先前策略允许的偏差程度。$A_t$ 是基于奖励和学习到的价值函数,使用广义优势估计(GAE)计算得出的。PPO 的裁剪目标函数限制了更新后的策略分布与原始策略的偏离程度。这种调节避免了语言生成过程中出现灾难性的变化,保证了训练的稳定性。
带有 KL 惩罚项的策略优化:在使用 PPO 进行强化学习微调时,策略 $\pi$ 在优化以最大化奖励的同时,要与基础模型 $\rho$ 保持接近。修改后的奖励函数包含一个 KL 散度惩罚项:
\[J(\pi) = \mathbb{E}_{(x,y)\sim \mathcal{D}}\left[r(x, y) - \beta \text{KL}(\pi(\cdot|x) \parallel \rho(\cdot|x))\right]\]其中,$\beta$ 控制惩罚的强度。KL 项 $\text{KL}(\pi \parallel \rho)$ 可防止对代理奖励 $r(x, y)$ 过度优化(即奖励操纵)。
KL 惩罚项确保策略保留基础模型的语言连贯性,避免产生退化的输出
3.2.3、基于人类反馈的强化学习(RLHF)
基于人类反馈的强化学习(RLHF)通过直接利用人类的偏好信号来优化 LLM,使其更符合人类的期望。该过程主要包括三个步骤。
首先,使用高质量的标注数据对预训练模型进行监督微调(SFT),以建立强大的语言和事实能力。
其次,使用人类标注的生成回复排名来训练一个奖励函数 $R$,使其能够预测偏好并提供一个标量奖励信号。
第三,在 RLHF 流程中使用 PPO,通过人类提供的偏好分数(或排名)来塑造奖励函数 $R$,从而指导策略更新。这确保了模型优先输出符合人类偏好行为的结果。
在奖励信号存在噪声或不完整的情况下,PPO 仍能表现出色,这使其非常适合文本生成任务,因为此类任务通常具有较大的动作空间和细致的奖励定义。
3.2.4、基于人工智能反馈的强化学习(RLAIF)
基于人工智能反馈的强化学习(RLAIF)是 RLHF 的一种替代方法,它用人工智能生成的反馈取代了人类标注。RLAIF 不依赖于人类标注的偏好,而是使用一个能力更强的辅助语言模型来生成偏好标签,然后用这些标签训练一个奖励模型。这个奖励模型指导目标模型基于强化学习的微调。
RLAIF 通过消除对人类标注员的需求,降低了数据收集的成本和时间。它能够在不需要大量人工干预的情况下实现大规模模型校准,同时保持高性能和一致性。实证研究表明,RLAIF 是 RLHF 的一种可扩展且高效的替代方法,使其成为强化学习驱动的语言模型优化的一个有前景的方向。
裁剪机制将策略更新限制在一个安全的信赖域内,这在处理复杂的高维动作空间时至关重要
3.2.5、信赖域策略优化(TRPO)
信赖域策略优化(TRPO)是另一种广泛使用的策略优化方法,它早于 PPO 出现,并且与 PPO 有着相同的基本目标:提高强化学习更新的稳定性。TRPO 在优化策略更新的同时,确保更新保持在一个由 KL 散度衡量的受限信赖域内。
TRPO 不像 PPO 那样使用裁剪目标函数,而是通过求解以下优化问题对策略更新施加硬约束:
\[\max_{\theta} \mathbb{E}_t\left[\frac{\pi_{\theta}(a_t|s_t)}{\pi_{\theta_{\text{old}}}(a_t|s_t)}A_t\right]\]约束条件为:
\[\mathbb{E}_t\left[D_{KL}(\pi_{\theta_{\text{old}}}(\cdot|s_t) \parallel \pi_{\theta}(\cdot|s_t))\right] \leq \delta\]其中,$\delta$ 是一个超参数,用于控制新策略与旧策略的偏离程度。
与使用裁剪来近似此约束的 PPO 不同,TRPO 直接求解一个有约束的优化问题,确保每次更新在策略空间中不会偏离太远。然而,求解这个有约束的问题需要使用计算成本高昂的二阶优化技术,如共轭梯度法,这使得 TRPO 对于像 LLM 这样的大规模模型效率较低。
在实践中,由于 PPO 的简单性、易于实现以及在像 RLHF 这样的大规模应用中具有相当的性能,它比 TRPO 更受青睐。不过,TRPO 仍然是深度强化学习中稳定策略优化的重要理论基础。
3.2.6、直接偏好优化(DPO)
直接偏好优化(DPO)是最近提出的一种方法,用于利用人类偏好数据训练 LLM,而无需借助传统的 RL 循环(如使用 PPO 的 RLHF)。DPO 不采用先学习一个单独的奖励函数,然后进行策略梯度更新的方式,而是直接将人类偏好信号整合到模型的训练目标中。因此,与上述 PPO 目标不同,DPO 构建了一个目标函数,在单一的对数似然框架内,直接提高被选择(受偏好)回复($y^+$)的概率,同时降低较不受偏好回复($y^-$)的概率。
DPO 损失函数并非像 PPO 那样用裁剪机制来限制策略变化,而是利用 “胜出” 和 “落败” 回复的对数概率之差。这能将用户的偏好明确地编码到更新后的参数中。
这里,$\pi_{\theta}$ 是可学习的策略,$\pi_{\text{ref}}$ 是参考策略(通常是经过 SFT 训练的模型),$\sigma(\cdot)$ 是 Sigmoid 函数,$\beta$ 是缩放参数,$\mathcal{D}_{train}$ 是由三元组 $(x, y^+, y^-)$ 组成的数据集,其中 $y^+$ 是比 $y^-$ 更受偏好的输出。
DPO 损失函数定义为:
\[\mathcal{L}^{\text{DPO}}(\theta) = \mathbb{E}_{((x,y^+),y^-) \sim \mathcal{D}_{train}}\left[\sigma\left(\beta \log\frac{\pi_{\theta}(y^+ | x)}{\pi_{\text{ref}}(y^+ | x)} - \beta \log\frac{\pi_{\theta}(y^- | x)}{\pi_{\text{ref}}(y^- | x)}\right)\right]\]其核心观点在于,LLM 可以被视为一个 “隐式奖励模型”:我们可以对偏好数据进行重新参数化,使得模型自身的对数概率能够反映出一个回复相较于另一个回复的受偏好程度。通过直接调整较受偏好回复相对于较不受偏好回复的对数似然,DPO 避开了基于 RL 方法的许多复杂性(例如,优势函数或显式裁剪)。
优势函数 $A_{\phi}=V_{\phi}(s_{t + 1}) - V_{\phi}(s_{t})$ 量化了每一步的贡献,这对于识别关键推理错误至关重要。而在 DPO 中,这种精细度丧失了,因为 DPO 对整个轨迹统一处理
基于分布内数据的困惑度过滤:为了确保 DPO 的训练数据是在分布内的(与 $\rho$ 一致),会使用困惑度对回复进行过滤。回复 $y = (y_1, y_2, \ldots, y_T)$ 的困惑度定义为:
\[\text{PP}(y)=\exp\left(-\frac{1}{T}\sum_{i = 1}^{T}\log P_{\rho}(y_i|y_{<i})\right)\]其中 $y_i$ 是第 $i$ 个词元。只有困惑度低于某个阈值(例如,$\rho$ 生成的回复中处于第 95 百分位数的值)的回复才会被保留下来。
优势函数仍然是一个核心概念,用于确定在每一步中哪些动作(词元选择)比基线更好
3.2.7、离线推理优化(OREO)
OREO 是一种离线强化学习方法,旨在通过优化 soft Bellman 方程来增强 LLM 的多步骤推理能力。与依赖成对偏好数据的 DPO 不同,OREO 使用基于最终结果的稀疏奖励(例如,推理链的正确性),并联合训练一个策略模型 $\pi_{\theta}$ 和一个价值函数 $V_{\phi}$,以便进行细粒度的功劳分配。其核心目标是最小化 soft Bellman 方程中的不一致性:
\[V_{\phi}(s_t) - V_{\phi}(s_{t + 1}) = r(s_t, a_t) - \beta\log\frac{\pi_{\theta}(a_t|s_t)}{\pi_{\text{ref}}(a_t|s_t)}\]其中 $s_{t + 1} = f(s_t, a_t)$ 是下一个状态,$r$ 是稀疏奖励,$\beta$ 控制 KL 正则化。策略损失和价值函数损失分别为:
\[\mathcal{L}_V(\phi)=\frac{1}{T}\sum_{t = 0}^{T - 1}\left(V_{\phi}(s_t) - R_t + \beta\sum_{i\geq t}\log\frac{\pi_{\theta}(a_i|s_i)}{\pi_{\text{ref}}(a_i|s_i)}\right)^2\] \[\mathcal{L}_{\pi}(\theta)=\frac{1}{T}\sum_{t = 0}^{T - 1}\left(V_{\phi}(s_t) - R_t + \beta\log\frac{\pi_{\theta}(a_t|s_t)}{\pi_{\text{ref}}(a_t|s_t)}\right)^2 + \alpha \mathcal{L}_{\text{reg}}\]其中 \(\mathcal{L}_{\text{reg}}\) 用于惩罚与 $\pi_{\text{ref}}$ 的偏差,$\alpha$ 用于平衡正则化。
OREO 的显式价值函数支持测试时的 beam search(例如,选择高价值的推理步骤)和迭代训练,在迭代训练中,失败的轨迹会优化策略。这与 DPO 的隐式价值函数形成对比,DPO 的隐式价值函数缺乏逐步的 credit 分配
OREO 的计算成本会随着轨迹长度和价值函数模型的训练而增加。虽然它在数学/智能体任务中很有效,但要将其推广到更广泛的领域(例如,编码)还需要进行验证。迭代训练也需要仔细地筛选数据,以避免对失败模式过度拟合。
3.2.8、群体相对策略优化(GRPO)
群体相对策略优化(GRPO)通过消除对单独价值函数的需求,简化了 PPO 框架。相反,GRPO 从针对同一问题的多个采样输出的平均奖励来估计基线。
GRPO 的主要贡献在于,它无需单独的价值模型(评论家模型),而是从一组 LLM 的采样输出中估计基线奖励。这显著降低了内存使用量,并使策略学习更加稳定。这种方法也与奖励模型的训练方式非常契合,即通过比较 LLM 生成的不同输出,而非预测一个绝对值。
对于每个问题 $q$,GRPO 从旧策略 $\pi_{\theta}^{old}$ 中采样一组输出 $\{o_1, o_2, \ldots, o_G\}$。使用一个奖励模型对该组中的每个输出进行评分,得到奖励 $\{r_1, r_2, \ldots, r_G\}$。通过减去组平均奖励并除以标准差来对奖励进行归一化:
\[\overline{r}_i = \frac{r_i - \text{mean}(r)}{\text{std}(r)}\]输出中每个词元的优势 $\hat{A}_{i,t}$ 被设为归一化后的奖励 $\overline{r}_i$。
GRPO 首先从分布 $q \sim P(Q)$ 中采样一个问题 $q$,然后从 $\pi_{\theta}^{old}(O \mid q)$ 中采样 $G$ 个输出 $\{o_i\}_{i = 1}^{G}$。定义每个输出的目标函数为:
\[J(o_i, \theta, q) = \frac{1}{|o_i|}\sum_{t = 1}^{|o_i|}\left(\min\left\{r_{\text{ratio},i,t}\hat{A}_{i,t}, \text{clip}(r_{\text{ratio},i,t}, 1 - \epsilon, 1 + \epsilon)\hat{A}_{i,t}\right\} - \beta D_{KL}[\pi_{\theta} \parallel \pi_{\text{ref}}]\right)\]然后,GRPO 的目标函数变为:
\[J_{\text{GRPO}}(\theta) = \mathbb{E}_{q\sim P(Q)}\left[\frac{1}{G}\sum_{i = 1}^{G}J(o_i, \theta, q)\right]\]其中,概率比率定义为:
\[r_{\text{ratio},i,t} \triangleq \frac{\pi_{\theta}(o_{i,t}|q, o_{i,<t})}{\pi_{\theta}^{old}(o_{i,t}|q, o_{i,<t})}\]这里 $\epsilon$ 是一个类似于 PPO 中的裁剪超参数,$\beta$ 用于调整 KL 散度惩罚项,以促使新策略 $\pi_{\theta}$ 不会过度偏离参考策略 $\pi_{\text{ref}}$,参考策略通常是初始的监督微调(SFT)模型。GRPO 可以应用于两种模式:结果监督和过程监督。
结果监督:仅在每个输出的末尾提供奖励。输出中所有词元的优势 $\hat{A}_{i,t}$ 都被设为归一化后的奖励 $\overline{r}_i$。
\[\overline{r}_i = \frac{r_i - \text{mean}(r)}{\text{std}(r)}\]过程监督:在每个推理步骤的末尾提供奖励。每个词元的优势 $\hat{A}_{i,t}$ 计算为后续步骤的归一化奖励之和:
\[\hat{A}_{i,t} = \sum_{\text{index}(j)\geq t}\overline{r}_{i,\text{index}(j)}\]其中 $\text{index}(j)$ 是第 $j$ 步的末尾词元索引。
总体而言,在 DeepSeekR1 中,GRPO 通过利用群体层面的优势,成为经典 演员-评论家
框架的一种高效替代方案,从而在不牺牲区分候选回复之间细微差异能力的前提下,降低了训练成本。
细粒度的逐步奖励使模型能够有效地识别和强化高质量的回复,提升在复杂多步骤推理任务中的整体性能
3.2.9、多样本比较优化
多样本比较优化方法并非仅仅依赖于单对比较,而是同时比较多个回复,以促进多样性并减少偏差。具体来说,对于一个查询 $x$,给定一组回复 $\{y_1, y_2, \ldots, y_n\}$,观察到排名 $y_1 > y_2 > \cdots > y_n$ 的概率由以下乘积确定:
\[P(y_1 > y_2 > \cdots > y_n) = \prod_{i}\frac{e^{R(x,y_i)}}{\sum_{j}e^{R(x,y_j)}}\]在这个公式中,每个回复 $y_i$ 是在所有其他回复的背景下进行联合评估的,这确保了比较并非孤立的成对事件,而是更广泛排名框架的一部分,有助于捕捉更细微的偏好,并减少潜在的偏差。
3.3、基于纯强化学习的 LLM 优化
DeepSeek R1 研究工作引入了两种主要模型:DeepSeek-R1-Zero 和 DeepSeek-R1:
- DeepSeek-R1-Zero 采用纯强化学习方法运行,不包含任何 SFT
- DeepSeek-R1 纳入了冷启动数据,并应用了多阶段训练流程
该方法包括几个步骤:收集冷启动数据、进行强化学习训练、执行监督微调、使用知识蒸馏将知识转移到较小的模型中,以及应对诸如语言混合和可读性等特定挑战。
这种多阶段流程确保了模型的稳健性,并使其符合人类偏好,而知识蒸馏则能够在不显著降低性能的情况下高效部署较小的模型。
3.3.1、冷启动强化学习阶段
该过程从冷启动强化学习阶段开始,在此阶段会收集少量精心整理的数据,以对初始(或基础)模型进行微调。在初步微调之后,通常会通过诸如 GRPO 等算法进行强化学习,直至收敛。冷启动阶段对于在全面的强化学习训练之前稳定模型至关重要,它可以防止纯粹由强化学习驱动的更新所导致的不稳定性。
冷启动数据准备工作的重点是捕捉人类可读的推理模式,以防止纯粹由强化学习驱动的更新带来的不稳定性。这一步骤会生成具有一致的 <推理过程> 和 <总结> 字段的思维链(CoT)风格示例,通常涉及数千个经过精心整理的样本。结构化的思维链格式和一致的字段确保了模型推理输出的清晰性和稳健性,减少了错误并提高了可解释性。总结>推理过程>
在 RL 训练之前的 CoT 示例为推理任务提供了更坚实的基础,从而产生更稳健且可解释的输出
3.3.2、拒绝采样和微调
这一概念也在 WebGPT 中得到应用。一旦强化学习使模型稳定下来,就会采用拒绝采样机制来生成高质量的回复,随后会根据正确性、清晰度和其他质量指标对这些回复进行筛选。然后,将这些经过筛选的回复与其他数据集混合,以生成一个新的、更大的语料库,用于监督微调。
拒绝采样确保只有高质量的输出才会被用于进一步的训练,从而提高了模型的整体性能和可靠性。在强化学习针对高风险推理任务收敛后,会使用拒绝采样来筛选大量生成的输出,从而扩展训练集。这些新生成的推理示例(数量可能多达数十万)会与现有的监督微调数据混合,以创建一个规模相当大的组合数据集(通常约有 80 万个样本)。拒绝采样和数据集扩展在保持模型推理能力的同时,显著提高了模型对一般任务的覆盖范围。
3.3.3、面向推理的强化学习
面向推理的强化学习利用了 GRPO,它从当前策略中采样一组输出,并为每个输出计算奖励和优势。奖励可以通过基于规则的检查来计算,例如,确保在数学或代码任务中的解决方案正确,强制使用结构化的 CoT 标签,并对不期望的语言混合进行惩罚。基于组的 GRPO 采样和奖励计算确保了模型优先考虑高质量、结构化的输出,从而增强了其推理能力。
3.3.4、使模型符合人类偏好的第二阶段强化学习
第二阶段的强化学习通过引入额外的奖励信号和提示分布,使模型更广泛地符合人类偏好(如有用性、无害性、创造性等)。第二阶段的强化学习确保模型符合人类价值观,使其更具通用性和情境感知能力。在对这个组合数据集上的基础模型进行重新训练后,可以进行第二轮强化学习,使模型更紧密地符合人类偏好(例如,在有用性和无害性方面)。这一强化学习阶段对模型进行微调,使其更好地符合人类价值观,确保输出不仅准确,而且在情境上也合适。
3.3.5、针对较小模型的知识蒸馏
最后,使用知识蒸馏技术将主模型经过优化的能力转移到较小的架构中,从而能够在不牺牲太多性能的情况下实现更高效的部署。它使较小的模型能够继承先进的推理能力,使其在具有挑战性的基准测试中具有竞争力,同时又无需承担全面强化学习训练的计算成本。最后,知识蒸馏起着关键作用:表现最佳的模型 DeepSeek-R1 充当教师,为较小的架构(例如,参数范围在 15 亿到 700 亿之间的 Qwen 或 Llama 系列模型)提供知识。这种转移使较小的模型能够继承先进的推理能力,使其在具有挑战性的基准测试中具有竞争力,而无需承担全面强化学习训练的计算成本。
知识蒸馏使先进的推理能力得以普及,使较小的模型能够在降低计算开销的情况下实现具有竞争力的性能
4、LLM 中的监督微调
微调是 LLM 后期训练方法的一个基本组成部分。
4.1、指令微调
在指令微调中,模型会在精心整理的指令(提示)和回复(补全内容)对数据上进行训练。其主要目标是引导 LLM 准确且有用地遵循用户提供的指令,而不受任务领域的限制。这通常涉及整理大型、多样化的 指令-回复 数据集,涵盖许多任务类型(例如,总结、问答、分类、创意写作)。诸如 T0、FLAN、Alpaca、Vicuna 和 Dolly 等模型展示了经过指令微调的 LLM 如何凭借其增强的指令跟随能力,在零样本或少样本任务中超越基础模型的表现。
4.2、对话(多轮)微调
一些 LLM 会进行对话风格的微调,以便更好地处理多轮对话。与上述指令微调不同,这里的数据形式是连续的对话(多轮对话),而不是单个的 提示-回复 对。在这种方法中,训练数据由包含多个用户查询和系统回复的聊天记录组成,确保模型学会在多轮对话中保持上下文连贯性,并给出连贯的回复。
像对话应用语言模型(LaMDA)和 ChatGPT 这样的模型突出显示了经过对话微调的 LLM 如何能给人更具交互性和上下文感知的感觉。虽然对话微调可能与指令微调有重叠之处(因为许多指令采用聊天格式),但专门的对话数据往往能带来更自然的多轮用户体验。
4.3、CoT 推理微调
思维链(CoT)推理微调教导模型生成逐步的推理过程痕迹,而不仅仅是最终答案。通过展示中间的推理依据或思路,思维链微调可以提高模型在复杂任务(例如,数学应用题、多跳问答)上的可解释性和准确性。在实践中,思维链微调使用监督推理注释(通常由专家手工制作)来展示解决方案是如何得出的。
著名的早期工作包括 Chain-of-Thought Prompting 和 Self-Consistency,它们最初将这一想法应用于提示方面;随后的工作(例如,Chain-of-Thought Distillation)将其应用于全参数微调或 student-teacher 范式中。这些努力也已扩展到多模态领域,例如,在 LLM 微调中使用图像、问答和思维链推理步骤的 LlaVA-CoT 和 LlamaV-o1。
4.4、特定领域(专业)微调
当 LLM 需要在特定领域(例如,生物医学、金融或法律)中表现出色时,会使用特定领域的微调。在此过程中,会使用经过整理的与领域相关的文本语料库和带标签的示例来对 LLM 进行微调。例如,BioGPT 和 BiMediX 专注于生物医学文献,FinBERT 用于金融文本,ClimatGPT 用于气候和可持续发展领域,而 CodeT5 用于代码理解。在这些领域的监督微调通常包括使用特定领域数据进行分类、检索或问答任务,以确保模型的参数适应该领域的专业语言和概念。特定领域的微调也已扩展到视觉语言模型,例如,在遥感图像、医学成像模态、时空视频输入、图表理解上进行微调。
4.5、基于知识蒸馏的微调
有时会使用大型的 “教师” 模型来生成带标签的数据或推理依据,较小的 “学生” 模型则在这些数据上进行微调,这通常被称为知识蒸馏。在 LLM 的背景下,CoT 知识蒸馏就是一个例子,在这个例子中,强大的教师 LLM 生成中间推理步骤,而学生 LLM 则进行微调,以重现最终答案和推理链。逐步知识蒸馏在生成最终答案的同时生成描述性的推理依据,以便通过使用较小的数据集进行知识蒸馏来训练较小的模型。这种方法可以产生更轻量、更快的模型,这些模型即使在零样本或少样本任务中也能保留教师模型的大部分性能。
4.6、偏好与对齐的监督微调
虽然基于 RLHF 并非纯粹的监督学习,但它始于一个监督偏好或对齐微调阶段。在这个阶段,使用人工标注或人工排序的示例来教导模型区分理想和不理想的输出(例如,安全的与有害的)。通过在这些明确的偏好上进行训练,模型会更符合用户的价值观,减少有害或离题的补全内容。像指令 InstructGPT 这样的研究成果表明,在奖励模型训练和强化学习更新开始之前,监督偏好数据是至关重要的。
4.7、高效微调
对 LLM 进行完全微调在计算和内存方面的要求可能很高,尤其是当模型规模达到数百亿参数的时候。为了应对这些挑战,参数高效微调(PEFT)技术引入了一小组可训练参数或可学习的提示,同时冻结模型的大部分权重。诸如 LoRA、Prefix Tuning 和 Adapters 等方法就是这种策略的典型例子,它们通过在特定层中注入轻量级模块(或提示),从而显著减少内存占用。
下图展示了这些技术如何融入一个更广泛的生态系统,该生态系统涉及 LLM 的系统级优化、数据管理和评估策略。特别是,PEFT 方法可以与量化和剪枝方法相结合,以进一步减少内存使用和计算开销,从而能够在较小的 GPU 上甚至是消费级硬件上进行微调。例如,QLoRA 将 4-bit 与低秩适应相结合,而 BitsAndBytes 提供 8-bit 优化器,使得 LLM 的训练在资源受限的环境中更具可行性。

此外,这些参数高效微调方法仍然需要监督数据来指导适应过程,但可训练参数数量的减少使得使用特定领域或特定任务的数据集变得更加可行。这对于专业领域(例如,医疗或软件开发)尤其有价值,在这些领域中,数据可能有限或者标注成本很高。参数高效微调(基于 Hugging Face,即 PEFT(HF))将其中几种方法(如 LoRA、前缀微调等)集成到一个库中,简化了在研究和生产环境中的部署。
将像 LoRA 和 QLoRA 这样的高效微调设计与系统和数据优化相结合,能够以经济高效的方式使 LLM 适应特定领域文本生成等任务,而无需进行昂贵的全参数微调
5、Test-time Scaling 方法
虽然强化学习用于微调模型的策略,但 Test-time Scaling(TTS)通常在不改变模型的情况下增强推理过程中的推理能力。

5.1、集束搜索
集束搜索(Beam Search)最早是在语音识别领域被引入的。它作为序列模型的一种解码策略而受到关注,后来被应用于神经机器翻译和语音系统中。随着 LLM 的流行,这种算法已被用于许多文本生成任务中的近似搜索。
集束搜索的概念类似于剪枝后的广度优先搜索,在每一步中,会保留概率最高的前 N 个部分序列(即 “集束”),并丢弃概率较低的路径。通过限制集束宽度(N),它在管理指数级搜索空间的同时,致力于找到一个接近最优的序列。在每个解码步骤中,这些集束会被扩展,以找到多个可能的路径。在进行推理的 LLM 中,这样的路径使我们能够系统地并行探索多个推理链,重点关注最有希望的那些。
这确保了高可能性的推理步骤会被考虑在内,与贪心解码相比,这可以提高找到正确且连贯解决方案的机会。传统上,它被用于翻译、总结和代码生成等任务,这些任务的目标是得到一个高度可能正确的序列。
虽然现代 LLM 通常更倾向于使用随机采样(例如,温度采样)来提高生成文本的多样性,但集束搜索对于结构化推理问题仍然是一种有价值的技术。例如,思维树(Tree-of-Thoughts)框架允许插入不同的搜索算法来探索可能的 “思维” 或推理步骤树;其中一种实例化方式是使用集束搜索(集束宽度为 $b$),在每个推理步骤中保留 $b$ 个最有希望的状态。在这里,集束搜索被用于系统地探索数学谜题和规划问题等任务的解决方案步骤,修剪掉不太有希望的推理分支,从而提高模型的问题解决准确性。当希望模型在其学习到的分布下输出单个最有可能的推理路径或答案时,集束搜索仍然是测试时推理的一个强大基线。
5.2、Best-of-N 搜索(拒绝采样)
Best-of-N(BoN)搜索会生成 N 个候选输出(通常通过采样得到),然后根据选定的标准(例如,奖励模型或模型自身的可能性)选择最佳的一个。从概念上讲,这是拒绝采样的一种应用:进行多次采样,然后拒绝除了最高评分结果之外的所有结果。与 Beam Search 不同,Beam Search 是逐步扩展和修剪部分假设,而 Best-of-N 搜索只是独立地对完整的解决方案进行采样,这允许更大的多样性,但计算成本更高。Beam Search 系统地追求最有可能的序列,而 Best-of-N 搜索可能通过暴力采样捕捉到高质量但概率较低的解决方案。
Beam Search(对较难的问题有效)在计算预算较低时优于 Best-of-N 采样,而 Best-of-N 采样在处理较容易的任务时扩展性更好
在 LLM 推理过程中,Best-of-N 搜索被用于在不重新训练模型的情况下提高正确性或一致性。通过采样多个答案并选择最佳候选答案(例如,通过奖励模型或检查器),Best-of-N 搜索有效地提高了问答或代码生成等任务的准确性。Best-of-N 搜索易于理解和实现,并且几乎没有超参数,N 是唯一可以在推理时调整的参数。在强化学习环境中,Best-of-N 采样可以作为一种基线探索机制,即生成许多轨迹,根据学习到的奖励选择最佳结果,然后继续进行,尽管计算开销会增加。
OpenAI 的 WebGPT 使用 Best-of-N 搜索通过奖励模型选择最佳回复,从而在问答任务中取得了出色的性能。Best-of-N 搜索也被用作一种简单的一致性方法,与其他后期训练技术(如 RLHF 和 DPO)相比具有很强的竞争力。研究表明,当由足够强大的奖励模型引导时,Best-of-N 搜索可以达到或与 RLHF 的结果相匹配。诸如推测性拒绝等替代方法基于这一想法,并利用更好的奖励模型来提高效率。研究还强调,如果用于 Best-of-N 搜索的(代理)奖励函数不完善,可能会出现奖励操纵问题,或者如果 N 参数变得非常大,可能会出现不稳定问题。
使用过程奖励模型时,选择 Beam Search 还是 Best-of-N 搜索取决于问题的难度和计算预算
5.3、计算最优缩放
计算最优缩放策略(Compute-Optimal Scaling,COS)是一种动态方法,旨在在 LLM 推理过程中高效分配计算资源,在不产生不必要开销的情况下优化准确性。与对所有输入应用统一的采样策略不同,这种方法通过利用真实难度(真实成功率)或模型预测的难度(例如,来自偏好排名模型的验证分数),将提示分为五个难度级别——从容易到困难。一旦进行了分类,该策略就会调整计算资源分配:较容易的提示会进行顺序优化,模型会迭代地改进其输出以提高正确性,而较难的提示会触发并行采样或集束搜索,探索多种回复变体以增加找到正确解决方案的可能性。
这种双重方法平衡了探索(针对具有挑战性的输入)和优化(针对接近正确的回复),确保每单位计算工作量都能实现最佳性能。值得注意的是,这种方法在保持相同性能的情况下,计算量比传统的 Best-of-N 采样低四倍。其关键见解在于,通过将计算策略与问题难度相匹配,它避免了在简单情况下浪费资源,同时确保复杂任务有足够的采样多样性。本质上,它就像 LLM 推理的 “智能温控器”,根据输入的复杂性动态调整计算量,从而实现大规模语言模型更高效、更具成本效益的部署。
COS 通过平衡顺序/并行计算,相对于 Best-of-N 基线实现了 4 倍的效率提升。Beam Search 加上修正步骤在处理简单/中等难度问题时优于更大的模型
5.4、思维链提示
CoT 提示促使 LLM 生成中间推理步骤,而不是直接跳到最终答案。通过将问题分解为逻辑子步骤,CoT 利用了模型执行多步推理的潜在能力,显著提高了在数学应用题、逻辑谜题和多跳问答等任务上的性能。
一些研究展示了思维链在算术和逻辑任务上的有效性,与直接提示相比有了很大的提升。还有研究引入了零样本思维链,揭示了即使添加一个简单的短语,如 “让我们一步一步地思考”,也能在足够大的模型中触发连贯的推理。后续的研究将思维链与基于采样的策略(自一致性)相结合,以获得更高的准确性。思维链格式的数据也已被用于监督微调,并且已证明有助于使模型的回复更具步骤性。
微调模型利用之前的尝试以顺序修正答案。顺序修正步骤在处理较容易的问题时表现出色,而并行采样(探索)对较难的问题更有益
5.5、自一致性解码
自一致性被提议作为思维链提示的简单贪心解码的替代方法。它建立在为一个问题采样多个不同推理路径的想法之上,并且是第一个表明对这些路径进行边缘化可以显著提高算术和推理问题准确性的方法。换句话说,它允许模型以多种方式思考,然后相信达成的共识,这在许多推理场景中提高了正确性。
自一致性方法的工作原理是从模型中采样一组不同的推理链(通过提示工程鼓励不同的思维链,并使用温度采样),然后让模型为每个链输出一个最终答案。该方法不依赖于单个推理链,而是选择在这些多个推理路径中最一致的答案,实际上就是在对潜在推理进行边缘化后得到的多数投票答案或最高概率答案。
其基本原理是,如果一个复杂问题有一个唯一正确的答案,不同的有效推理路径应该会收敛到同一个答案。通过汇总许多推理链的结果,模型可以 “决定” 哪个答案最有依据。在应用中,例如对于一个数学问题,可能会采样 20 条思维链,然后看哪个最终答案出现得最频繁;该答案随后被作为模型的输出。这种方法将一次性的思维链过程变成了一个集成,模型在其中对自己的答案进行交叉验证。它对于算术和常识推理任务特别有用,因为在这些任务中推理的多样性很有帮助。
在某些场景中,在测试时进行计算的较小模型可以优于大得多的模型
自一致性常常与其他方法结合使用:例如,采样多个推理链,然后对最常见的答案应用验证器。它的优势在于不需要新的训练,只需要额外的采样,这使得它成为一种流行的 test-time scaling 策略,用于从 LLM 中获得更可靠的答案。它也启发了其他变体,例如,通用自一致性将最初的想法(仅对单个最终答案进行多数投票)扩展到更一般的生成任务,如总结和开放式问答。
5.6、思维树
思维树(ToT)框架通过允许模型分支成多个可能的思维序列,而不是遵循单个线性链,对思维链方法进行了推广。因此,它将 LLM 推理问题表述为一种树搜索,借鉴了受人类问题解决启发的经典人工智能搜索方法。
思维树将中间推理步骤视为搜索树中的 “节点”,并使用 LLM 从给定状态扩展可能的下一步(思维)。模型不是采样一条长的推理路径,而是探索一个分支思维树,并可以进行前瞻和回溯。在每一步中,LLM 可能会生成几个候选的下一步思维,然后使用启发式方法或价值函数评估每个部分解决方案状态。
然后,一种搜索算法(例如,深度优先、广度优先、集束搜索)在这棵树上导航,决定进一步探索哪些分支。这种方法允许系统地探索不同的推理策略:如果一条路径走到了死胡同,模型可以回到早期状态并尝试不同的分支(这与标准的思维链不同,标准思维链致力于一条推理路线)。
实际上,思维树是一个迭代的提示过程,模型在其中生成思维、评估它们并改进其方法,模仿人类在心理上规划解决问题的各种方法的方式。
思维树对于诸如谜题、规划任务或游戏等复杂问题特别有用,这些问题需要多个步骤和策略性探索,并且通过系统地搜索解决方案空间,其性能优于更简单的思维链方法。它提供了一个灵活的框架——可以根据任务插入各种生成策略(例如,采样与提示)和搜索算法(BFS、DFS、A*算法、蒙特卡洛树搜索)。尽管计算量更大,但思维树表明,分配额外的 “思考时间”(计算量)来探索替代方案可以显著提高推理和规划性能。
它引发了后续旨在改进或利用它以实现更好推理的研究,例如,多智能体系统已与思维树相结合:不同的 LLM “智能体” 并行生成思维,一个验证智能体修剪不正确的分支,与单智能体的思维树相比,这提高了准确性。
对于 LLM 来说,推理时的计算可能比扩展模型参数表现得更好,尤其是在数学问题等具有挑战性的推理任务中
5.7、思维图
思维图(GoT)框架扩展了思维树(ToT),通过基于图的结构而非严格的层次树,实现了更灵活高效的推理过程。这两种方法在思维表示上有所不同:在思维树中,推理的每个步骤都被构建为树中的一个节点,具有固定的父子关系;而思维图将思维表示为图中的节点,允许更灵活的依赖关系和相互连接。
在思维扩展策略方面,思维树采用传统方法,即在每个步骤生成多个思维候选,使用基于树的搜索策略进行探索,并在选择最优路径之前根据启发式方法进行修剪。相比之下,思维图采用基于图的思维扩展方式,允许思维动态地相互连接。这实现了三个关键的转换:聚合(将多个解决方案合并为一个统一的答案)、优化(随着时间推移迭代改进思维)和生成(产生多样化的候选)。思维图不是在严格的层次结构中进行导航,而是使用一个数量度量来对思维进行优先级排序,并以最优方式探索路径,减少不必要的计算。
思维树的一个关键限制是其有限的回溯能力 —— 一旦一个分支被丢弃,就不会再重新考虑。思维图通过允许迭代优化克服了这一限制,在这种方式下,先前的思维可以被重新审视、修改和改进。这种迭代特性在复杂的推理任务中特别有用,因为在这些任务中,最初的思维可能需要进行调整。此外,通过合并部分解决方案来减少冗余计算,思维图的计算效率得到了显著提高。
思维图提高了问题解决的效率和适应性,对于需要复杂推理的任务,它比思维树更具优势
5.8、基于置信度的采样
在基于置信度的采样中,语言模型生成多个候选解决方案或推理路径,然后根据模型对每个结果的自身置信度对它们进行优先级排序或选择。这可以通过两种方式实现:
(a)选择:生成 N 个输出并选择对数概率最高的那个(即模型最有信心的输出)。这本质上是基于概率的 Best-of-N ——模型选择它认为最可能正确的答案
(b)引导式探索:在探索推理树或多步骤解决方案时,使用模型的标记概率来决定扩展哪个分支(先探索置信度较高的分支)。
换句话说,模型的概率估计作为一种启发式方法,指导在解决方案空间中的搜索。与纯随机采样相比,基于置信度的方法使过程偏向于模型认为正确的方向,有可能减少在低可能性(且通常是错误的)路径上的无效探索。
基于置信度的策略已在推理时得到应用,例如,用于 LLM 生成的基于树的搜索为每个可能的补全(叶子节点)分配一个置信度分数。该算法根据这些置信度分数对叶子节点进行采样,以决定扩展哪些路径。类似地,一些推理方法使用模型对答案的估计可能性来决定何时停止或是否提出后续问题——本质上,如果模型的置信度较低,它可能会触发进一步的推理(一种自我反思的形式)。
基于置信度的选择也用于集成设置中:例如,一个 LLM 可能生成多个答案,一个辅助模型评估每个答案正确的置信度,选择置信度最高的答案。这在医疗问答等任务中得到了探索,在这些任务中,LLM 给出一个答案和一个置信度分数,只有高置信度的答案才会被信任或返回。
5.9、基于验证器的搜索
LLM 中的这种验证方法通过生成多个候选回复并使用自动验证系统选择最佳回复来提高答案质量。这种方法将重点从增加预训练计算量转移到优化测试时计算量,使模型能够在推理过程中通过结构化的推理步骤或迭代优化 “思考得更久”。该方法包括两个主要步骤:
生成:模型(或 “提议者”)通常使用高温采样或多样化解码等方法生成多个答案或推理路径。
验证:验证器(例如,奖励模型)根据预定义的标准,如正确性、连贯性或与期望过程的一致性,对这些候选进行评估。验证器根据其评估重点进行分类:
1)结果奖励模型(ORM): 仅判断最终答案(例如,数学解决方案的正确性)
2)过程奖励模型(PRM): 评估推理步骤(例如,思维链中的逻辑连贯性),提供细致的反馈以修剪无效路径
在这种范式下有几种技术,可增强基于验证的优化。Best-of-N 采样涉及生成多个答案,并通过验证器(结果奖励模型/过程奖励模型)对它们进行排名,选择得分最高的答案,使其成为一种简单而有效的提高答案正确性的方法。带有过程奖励模型的集束搜索跟踪得分最高的推理路径(集束),并尽早修剪低质量的步骤,这与思维树方法类似,在推理路径探索中平衡了广度和深度。蒙特卡洛树搜索通过扩展有前景的推理分支、模拟轨迹并反向传播分数来平衡探索和利用,在搜索深度和验证置信度之间提供了最佳权衡。多数投票(自一致性)聚合来自多个样本的答案,并选择出现频率最高的那个,避免了明确的验证器,在多个回复之间的一致性表明正确性的情况下效果良好。
结果奖励模型适用于正确性为二元(对/错)且易于评估的任务
过程奖励模型在多步骤推理中很有用,可确保中间步骤遵循逻辑顺序
5.10、通过优化实现自我提升
这种方法指的是 LLM 通过自我评估和迭代修改来提升其输出的能力。这个过程使模型能够在推理过程中动态优化其回复,而不是仅仅依赖于预训练的权重。一种值得注意的方法是自我优化,即 LLM 生成一个初始回复,对其进行批判,然后根据自身生成的反馈优化输出。这个迭代过程会一直持续,直到模型得到一个满意的结果。这类技术已被证明能提高在各种任务上的性能,包括数学推理和代码生成。这个过程遵循以下关键步骤:
a)初始生成: 模型产生一个答案或推理路径
b)自我批判: 模型审查自己的回复,识别错误、不一致或需要改进的地方
c)优化: 模型根据批判调整其回复,并生成一个改进的版本
d)迭代: 这个过程会重复,直到输出达到预定义的质量阈值或不再有改进为止
另一种方法称为 自我完善(Self-Polish),在这种方法中,模型逐步优化给定的问题,使其更易于理解和解决。通过重新表述或重构问题,模型增强了对问题的理解,并提供了更准确的解决方案。自我完善涉及逐步优化问题陈述,使其更易于理解和解决。模型首先重新表述或重构问题以使其更清晰,然后将复杂的查询分解为更简单的子问题,并优化模糊的输入以确保准确理解。通过在解决问题之前重构问题,模型提高了其理解能力,并生成了更准确的解决方案。
自我提升方法代表了 LLM 优化的一种范式转变,强调主动推理和内部反馈,而非静态的预训练。通过对自己的回复进行迭代,模型在广泛的应用中实现了更高的一致性和准确性
5.11、蒙特卡洛树搜索
蒙特卡洛树搜索(MCTS)基于将蒙特卡洛模拟应用于博弈树搜索。它在游戏领域取得成功后声名鹊起,特别是在 2016 年,它通过在策略和价值网络的引导下搜索可能的走法,为 AlphaGo 提供了支持。这以及它在其他棋盘游戏和电子游戏中的应用,展示了蒙特卡洛树搜索在不确定性下进行顺序决策的强大能力。
蒙特卡洛树搜索是一种随机搜索算法,它通过执行许多随机模拟来构建决策树。它最广为人知的是在游戏状态中找到好的走法,但它可以应用于任何我们能够模拟结果的问题。该算法迭代地进行以下步骤:
(a)根据启发式方法(如 UCT,它选择具有高置信上限的节点)从根节点选择一条路径
(b)从该路径的末端扩展一个新节点(一个之前未访问过的状态)
(c)从那个新状态模拟一个随机的推演以得到一个结果(例如,游戏中的赢或输,或者某种奖励)
(d)将结果沿树向上反向传播以更新节点的值,并为未来的选择提供信息
重复这些模拟数千次,会使搜索集中在树中最有前景的分支上。本质上,蒙特卡洛树搜索使用随机采样来评估不同动作序列的潜力,逐渐使搜索偏向于那些平均结果更好的序列。
在 LLM 的推理中,我们可以将文本的生成视为一个决策过程,并使用它来探索不同的后续内容。例如,对于一个给定的问题(根节点),每个可能的下一步推理步骤或答案都是一个动作;一次模拟可能意味着让 LLM 继续生成直到得到最终答案(可能带有一些随机性),而奖励可以是答案是否正确。
通过反复这样做,蒙特卡洛树搜索可以确定哪种思维链或答案具有最高的经验成功率。蒙特卡洛树搜索在推理方面的吸引力在于,它可以通过智能采样而非穷举搜索来处理大型搜索空间,并且它自然地融合了不确定性和探索性。
训练验证器对中间步骤(通过蒙特卡洛推演)进行评分,而不仅仅是对最终答案评分
最近的研究努力将蒙特卡洛树搜索与 LLM 相结合,以解决复杂的推理和决策任务。一个例子是将蒙特卡洛树搜索用于查询规划:蒙特卡洛思维搜索,在这种方法中,引导 LLM 提出一系列子问题以找到答案。
相关研究使用了一种基于蒙特卡洛树搜索的算法,称为 “蒙特卡洛推理器”,它将 LLM 视为一个环境:每个节点是一个提示(状态),每条边是一个动作(例如,要问的特定问题或要采取的步骤),并且使用随机推演来评估结果。这种方法使系统能够有效地探索可能的推理路径空间,并选择一条高奖励的答案路径,在科学问答任务中优于简单采样。
同样,蒙特卡洛树搜索已被应用于使用 LLM 进行代码生成 —— 该算法探索不同的代码路径(使用模型提出代码补全并进行测试)以找到正确的解决方案。另一项工作是将多个 LLM 与蒙特卡洛树搜索集成,将每个模型的输出视为一个分支,并使用奖励模型来模拟结果。早期结果表明,基于蒙特卡洛树搜索的推理可以解决单遍或贪心方法经常遗漏的问题,尽管需要更多的计算资源。其缺点是蒙特卡洛树搜索可能比直接采样或集束搜索慢得多,最近的研究正在通过提高效率(例如,通过状态合并)来解决这个问题。
总的来说,蒙特卡洛树搜索将规划算法的优势引入到 LLM 的推理中,使 LLM 能够通过模拟推演 “向前看”,并做出更明智的推理选择,就像它在游戏人工智能中所做的那样。
Test-time 的计算量并不能一对一地替代预训练,但在许多情况下提供了一种可行的选择
5.12、Chain-of-Action-Thought 推理
LLM 在推理任务中表现出色,但在推理时严重依赖外部指导(例如,验证器)或大量的采样。像思维链(CoT)这样的现有方法缺乏自我纠正和自适应探索的机制,限制了它们的自主性和泛化能力。相关研究引入了一个两阶段训练范式,其工作原理是首先调整模型的输出格式,然后通过自我提升来增强其推理能力:
在第一阶段(格式调整),模型会接触到由一个包含生成器、评论器和奖励模型的多智能体框架生成的 10,000 个合成轨迹的大型集合。这种监督微调帮助模型使用元动作标记以特定的推理格式生成输出,尽管它可能仍然难以在这些示例之外进行泛化。
在第二阶段(通过强化学习进行自我提升),模型采用带有重启和探索策略的 PPO,这允许它从中间步骤(无论这些步骤是否正确)重新开始,以优化其推理过程。模型根据基于规则的正确性、反思奖励以及在 5.9 节中解释的基于偏好的结果奖励模型反馈的组合来获得奖励,从而激励将更多计算资源分配给更困难的问题,并能够在测试复杂任务时进行扩展推理。
多智能体框架和先进的微调策略正越来越多地被探索,以增强 LLM 的推理能力。多智能体大语言模型训练(MALT)引入了一种结构化方法,其中生成、验证和优化步骤分布在专门的智能体之间,允许进行迭代的自我纠正和改进推理链。同样,优化偏好一致性仍然是确保 LLM 既安全又有用的一个关键挑战。像双因子偏好优化(BFPO)这样的方法将 RLHF 目标重新构建为单个监督学习任务,在保持强大一致性的同时减少了人工干预。
除了基于文本的推理之外,像多模态思维可视化(MVoT)这样的多模态方法通过纳入视觉表示扩展了思维链提示,显著提高了在空间推理任务中的性能。这些进展突显了对结构化多智能体协作、安全意识优化和多模态推理的日益增长的需求,以解决 LLM 推理中的基本限制。
5.13、预训练与 Test-Time Scaling
预训练和 Test-Time Scaling(TTS)是提高 LLM 性能的两种不同策略,它们在计算成本和有效性方面各有不同的权衡。预训练涉及扩展模型参数或增加训练数据以增强模型能力,这需要大量的前期计算投入。相比之下,测试时缩放优化推理时的计算(例如,迭代优化、基于搜索的解码或自适应采样),使得在不修改基础模型的情况下提升性能。
从性能与成本的角度来看,在简单到中等难度的任务上(例如,MATH 基准测试),测试时缩放能够取得与一个大 14 倍的模型相当的效果,同时在计算密集型场景中,将推理成本降低至原来的四分之一(以浮点运算次数(FLOPs)衡量)。然而,对于最困难的任务或者推理计算限制较高的情况,预训练仍然更具优势,因为更大的预训练模型本质上编码了更深入的推理能力。
当推理标记数(Y)有限时(例如,在自我提升的设置中),一个经过测试时计算优化的较小模型在简单/中等难度问题上的表现可以超过一个大 14 倍的模型
在应用场景方面,TTS 对于推理预算灵活的场景或者基础模型在任务中已经表现出合理能力的情况很有用。相反,预训练对于需要从根本上获得新能力的任务(例如,在新领域进行推理)至关重要,仅靠推理时的优化可能并不足够。
这两种方法之间存在显著的权衡。TTS 降低了前期训练成本,使其对于灵活的、即时的优化具有吸引力,但在推理时需要动态分配计算资源。另一方面,预训练会产生高昂的初始成本,但能保证一致的性能,且没有额外的运行时开销,这使得它非常适合大规模的应用程序编程接口(API)部署或对延迟敏感的应用。
总体而言,TTS 和预训练在本质上是互补的。未来的 LLM 系统可能会采用混合方法,即较小的基础模型通过预训练获得必要的知识,而测试时缩放则通过自适应的、按需计算动态地增强回复。这种协同作用能够实现更具成本效益和效率的大规模模型部署。
选择预训练以获得基础能力,并通过 test-time scaling 以实现准确的上下文感知优化
6、LLM 后期训练评估的基准测试
为了评估 LLM 后期训练阶段的效果,已经提出了一系列涵盖多个领域的多样化基准测试:推理任务、一致性、多语言能力、一般理解能力以及对话和搜索任务。一个结构良好的评估框架能够确保全面了解 LLM 在各种任务中的优势和局限性。这些基准测试在 LLM 的后处理阶段起着至关重要的作用,在这个阶段,模型会进行微调、校准、一致性调整和优化,以提高回复的准确性、稳健性和符合道德规范的程度。
推理基准测试:这些基准测试评估 LLM 进行逻辑、数学和科学推理的能力。像 MATH、GSM8K 和 MetaMathQA 这样的数学推理数据集,会在问题解决、多步算术运算和基于定理的问题表述等方面对模型进行测试。像 WorldTree V2 和 MMMU 这样的科学和多模态推理基准测试,会评估模型在物理、化学方面的知识以及多模态理解能力,这对于 LLM 生成回复时的事实核查和验证过程至关重要。此外,像PangeaBench 这样的数据集将推理任务扩展到了多语言和文化领域,使模型能够优化跨语言推理能力。这些基准测试有助于确定模型处理结构化知识和应用逻辑推理的能力如何。
强化学习一致性基准测试:强化学习一致性基准测试是 LLM 一致性和后期训练优化的核心。它们通过基于 RLHF 来优化回复生成、道德约束和符合用户需求的输出。像 Help-Steer 和 UltraFeedback 这样的数据集,会根据多属性评分以及与用户指令的一致性来评估模型。Anthropic 的 HH-RLHF 探索了模型通过基于 RLHF 来学习人类偏好优化的程度。D4RL 和 Meta-World 专注于机器人控制和离线强化学习,这对模型的自主决策有重要意义。MineRL 将强化学习测试扩展到了像基于 Minecraft 的交互这样的复杂环境中,这对于在自适应决策场景中训练 LLM 很有用。
多语言评估:多语言基准测试对于 LLM 在后处理阶段的跨语言泛化、翻译适配以及对低资源语言的微调至关重要。CulturaX 和 PangeaIns 会在超过 150 种语言中评估标记化、翻译以及对指令的遵循情况,确保模型输出的公平性和多样性。TydiQA 和 MM-Eval 针对双语和面向任务的多语言评估,有助于 LLM 的微调。这些数据集确保 LLM 不仅仅以英语为中心,而是针对多语言适应性进行了优化。
一般理解能力基准测试:一般理解能力基准测试有助于模型的微调、回复的连贯性和偏好优化。像 Chatbot Arena、MTBench 和 RewardBench 这样的数据集,会测试用户偏好建模和对话流畅性,这对于 LLM 的回复排名和重新排名方法至关重要。BigBench 评估广泛的多领域理解能力,而 MMLU 衡量回复的正确性和信息丰富性。这些数据集有助于优化 LLM 的流畅性、事实正确性以及开放式回复的生成能力。
对话和搜索基准测试:对话和搜索基准测试在优化 LLM 基于检索的回复、多轮对话的连贯性以及信息检索准确性方面起着关键作用。像 ConvAI2 和 MultiWOZ 这样的数据集评估多轮对话模型,这对于对话历史记录跟踪和自适应回复微调至关重要。对于搜索相关性评估,BEIR 提供了大规模的人工标注判断,用于检索微调,确保 LLM 能够有效地生成和排名回复。TREC DL21/22 有助于文档相关性排名和事实检索。
7、未来发展方向
如图所示。自 2020 年以来,用于优化 LLM 的先进强化学习技术的重要性显著提升(图a),这强调了对诸如 human-in-the-loop 强化学习和可扩展性等交互式方法的需求。
与此同时,由于自奖励语言模型的出现,奖励建模(图b)受到的关注稳步上升,然而该领域仍然面临着奖励操纵以及设计除奖励操纵之外强大的、具备失败感知能力的奖励函数等问题。
解码和搜索(图c)方法包括思维树和蒙特卡洛策略,旨在通过迭代自我批判来增强模型推理能力,但这些技术也需要可靠的不确定性估计器,以防止过高的计算开销。
安全性、稳健性和可解释性同样已成为核心关注点(图d),这推动了开发除与人类不确定性相关之外的偏差感知和不确定性感知强化学习方法,以维护用户信任并防止对抗性攻击。
另一个关键领域涉及个性化和适配(图e),在为特定领域定制 LLM 的努力中,必须平衡隐私风险,尤其是涉及企业数据或敏感个人信息时。
与此同时,过程与结果奖励优化(图f)仍然是一个悬而未决的问题:虽然基于过程的奖励有助于指导逐步改进,但以结果为重点的指标更简单,但可能无法捕捉到关键的中间决策步骤。
除了奖励结构之外,在新任务上微调 LLM 仍然会遇到灾难性遗忘和潜在数据泄露等问题,这凸显了对参数高效方法以及差分隐私和联邦学习等隐私保护策略的需求。人类反馈虽然是实现一致性的核心,但本质上成本高昂且范围有限;像 Constitutional AI 和 RLAIF 等方法试图将这种监督的部分过程自动化,不过它们带来了关于偏差校准和模型自洽性的新问题。
最后,test-time scaling 和动态推理框架带来了更多挑战:模型必须学会何时为复杂查询分配更多计算资源,如何高效适配验证模块,以及即使面对对抗性输入时如何保持稳健的性能。
这些相互交织的研究方向——涵盖奖励建模、解码策略、可解释性、个性化和安全微调 —— 突显了强化学习在 LLM 中的多方面作用,并共同塑造了大规模语言模型发展的未来轨迹。下面更详细地探讨其中一些方向:
微调挑战:
微调仍然是使 LLM 适应特定任务或领域的最直接的后期训练方法之一,但它面临着一些未解决的挑战。一个根本问题是灾难性遗忘——当在新数据上更新 LLM 时,会导致它失去或降低先前学到的能力。即使是像 LoRA 这样的先进参数高效微调方法,虽然大大减少了可训练权重的数量,但也不能完全解决这个问题。
未来的工作可以探索更好的持续学习策略和正则化技术,以便模型在获取新技能的同时不会抹去旧技能。例如,新的微调算法(如 CURLoRA)明确旨在在添加新任务时稳定训练并保留先验知识。有前景的研究方向包括基于课程的微调(逐步引入新事实或在已知事实的背景下引入)以及结合检索或外部知识库的混合训练。例如,不是仅仅调整模型的权重,人们可以微调 LLM,使其在面对原始训练分布之外的查询时查询知识存储库或使用工具(如数据库查询或计算)。这种检索增强微调可以让模型在推理时纳入新信息,减少用新事实覆盖其内部权重的需求。
另一种方法是训练模型明确表示对新知识的不确定性,从而使它们能够在查询涉及预训练中未见过的内容时说 “我不知道” 或参考外部来源。通过将权重更新与外部知识整合相结合,未来经过微调的LLM将在新出现的信息上保持更高的事实准确性和更低的幻觉率。
安全微调:
从伦理和安全的角度来看,微调提出了重要的未解决的研究问题。微调数据通常包含敏感或专有信息,如果模型记住并随后泄露这些数据,可能会导致隐私风险。最近的一项全面调查强调了微调阶段的漏洞,例如成员推理攻击(检测特定记录是否在微调集中)和数据提取(从模型的输出中恢复微调数据的部分内容)。减轻这些风险是一个未解决的问题:像差分隐私微调(向权重更新添加噪声)和联邦微调(数据从不离开用户设备,只有聚合的更新被发送到模型)等方法正在被积极探索。然而,这些方法通常以牺牲模型实用性为代价,或者需要仔细校准以避免性能下降。
人类反馈的局限性:
人类反馈成本高昂且具有主观性。解决人类反馈局限性的一个有前景的途径是使用人工智能反馈和自动化来辅助或取代人类评估者。Anthropic 引入的宪法人工智能是一个显著的例子:该模型不是依赖于对每一个有害或有益行为的广泛人类反馈,而是由一组书面原则(“宪法”)引导,并使用另一个人工智能模型作为评判者来训练它对自己的回复进行批判和优化。
这里新兴的方向包括 RLAIF 和其他半自动化反馈技术:使用强大的模型来评估或指导较弱的模型,甚至让多个人工智能智能体对一个问题进行辩论,并将它们的共识作为奖励信号。这种人工智能辅助的反馈可以极大地扩展微调过程,并有助于克服人类专家时间有限的瓶颈。
然而,它提出了新的理论问题:我们如何确保人工智能评判者本身是一致且正确的?如果自动化的偏好存在缺陷,就存在反馈循环或偏见回音室的风险。一个尚未解决的问题是创建强大的人工智能反馈系统,使其与人类价值观校准(也许可以通过人类监督或一系列不同的宪法原则定期 “接地气”)。在分层方案中融合人类和人工智能反馈可以为LLM提供一个可扩展且可靠的强化学习范式。
Test-time scaling 挑战:
Test-time scaling 中的未解决挑战围绕着如何高效且可靠地协调推理时的过程。一个关键问题是对于给定的查询,多少计算资源才足够,以及如何即时确定这一点?使用较少的资源可能会导致错误,但使用过多则效率低下,并可能引入不一致性。
最近的研究通过提出一个包含 “提议者” 和 “验证者” 的统一框架来系统地探索和评估答案,从而解决了这个问题。在他们的框架中,提议者(通常是基础LLM)生成多个候选解决方案,而验证者(另一个模型或启发式方法)判断并选择最佳方案。最优策略会因问题难度而异:对于较简单的查询,并行生成许多答案并选择最佳答案可能就足够了,而对于较难的问题,进行顺序的、逐步的推理并在每一步进行验证效果更好。
未来一个重要的方向是构建自适应系统,使 LLM 能够根据对问题复杂性的估计动态分配计算资源。这个想法与人工智能中的元认知相关,使模型能够感知自己不知道的内容或值得更多思考的内容。为 LLM 开发可靠的置信度指标或难度预测器是一个未解决的研究领域,但在这方面取得进展将使 TTS 更加实用,即模型只在必要时 “放慢速度并思考”,就像人类在难题上花费额外时间一样。最近的研究表明,将 test-time 的计算提炼成合成训练数据可以产生协同的预训练效益,这一点也可以进一步探索。
奖励建模与功劳分配:
当前的强化学习方法存在奖励泛化错误的问题,即模型过度优化表面的代理指标,而不是真正的推理质量。在多步骤任务中,终端奖励的稀疏性增加了功劳分配的挑战,特别是在长程推理场景中。像 DPO 这样的传统方法需要低效的成对偏好数据,并且无法有效地利用失败轨迹。可以通过使用对比逐步评估将过程监督与基于结果的奖励相结合来研究混合奖励模型。这种方法能够对中间决策步骤进行更细致的评估,同时与长期目标保持一致。
最近的工作表明,步骤级策略优化可以在保持安全约束的同时提高价值函数的准确性。可以通过为 transformers 适配的时间差分学习来探索动态功劳分配机制。这种适配可能会增强模型捕捉长程依赖关系的能力,并在扩展序列上优化奖励传播。可以通过对抗性数据增强将负例纳入强化学习循环,从而开发具备失败感知能力的训练策略。这可以通过系统地让模型接触具有挑战性的场景并鼓励更具弹性的策略学习来提高模型的稳健性。
高效强化学习训练与知识蒸馏:
当前用于 LLM 的强化学习方法需要极高的计算资源,同时其性能往往不如知识蒸馏技术。这种低效率限制了可扩展性和实际部署,因为经过知识蒸馏的模型尽管所需的训练开销较少,但常常超过强化学习训练的模型。此外,纯强化学习方法难以在语言质量和推理能力提升之间取得平衡,从而形成了性能上限。
开发混合框架是一个有趣的方向,该框架使用从大型模型中蒸馏出的知识来初始化强化学习策略,将强化学习的探索优势与监督学习的稳定性相结合。同样,课程采样策略在逐步增加任务复杂性的同时使用知识蒸馏来保持语言连贯性也会有所帮助。在强化学习更新期间,可以利用 PEFT 方法来保持基础能力,同时增强推理能力。
整合:将 PRM 引导的树搜索与在线知识蒸馏相结合,与基线方法相比实现了 4 倍的效率提升,同时在 MATH 数据集上保持 94% 的解决方案准确率
隐私保护下的个性化。为企业和个人用例定制模型会增加因模型记忆而暴露私人训练数据的风险,这使得隐私保护下的适配变得至关重要。有前景的解决方案包括同态指令微调,它在推理期间处理加密的用户查询,同时保持端到端加密;通过奖励加噪实现的差分隐私,它在一致性调整期间将数学上有界的噪声引入基于人类反馈的强化学习偏好排名中;以及联邦蒸馏,它在不共享原始数据的情况下聚合来自分散的用户特定模型的知识。
协作式多模型系统:
随着单模型缩放方法接近物理极限,诸如多智能体 LLM 协作等替代范式变得必要。研究人员正在研究新兴的通信协议,这些协议训练模型开发用于模型间知识转移的有损压缩 “语言”,如 GenAINet;稳健的集成模型,其中压力测试引发的专业化基于失败分析驱动问题空间的自动划分;以及通过进化策略设计的无梯度协同学习,旨在发现互补的模型组合而不依赖于反向传播。
多模态强化学习整合:
多模态强化学习面临着组合状态爆炸的障碍,尤其是在超过 12.8 万个标记的上下文中。克服这一障碍的开创性方法包括分层注意力框架,该框架采用特定模态的策略并结合跨注意力门控;自适应截断策略,在保留关键推理片段的同时压缩上下文;以及快速课程方法,利用自监督复杂性预测来促进渐进式多模态整合。
高效强化学习训练:
高效强化学习训练范式仍然是一个关键的研究前沿,因为当前的方法表现出显著的样本效率低下和计算开销。解决诸如过度思考现象等问题,即过多的推理链浪费了宝贵的计算资源,需要采用部分推演策略、使用学习到的压缩变换器的自适应长度惩罚机制,以及将蒙特卡洛树搜索(MCTS)与先进的强化学习优化器相结合的混合架构等方法。这些创新对于将强化学习扩展到长上下文任务,同时最小化浪费的计算资源至关重要。
过度思考现象:分析表明,超过最优推理长度的推理链中存在 22% 的计算浪费
强化学习方法表现出样本效率低下和计算开销,尤其是在扩展到超过 12.8 万个标记的上下文时。“过度思考” 现象,即模型生成过长的推理链,进一步降低了标记效率并增加了部署成本。研究使用快速注意力机制进行长上下文处理的部分推演策略。开发使用学习到的压缩变换器进行迭代长到短蒸馏的长度惩罚机制。结合 MCTS 与 GRPO 的混合架构可以实现更好的探索与利用权衡。
相关研究的并行工作通过自适应树搜索修剪展示了有前景的结果。该领域仍然存在一些未解决的挑战。不确定性传播仍然是个问题,因为当前的置信度估计器会增加大约 18% 的延迟开销,而灾难性遗忘会导致在强化学习微调期间基础能力下降 29%。此外,基准测试饱和也是一个问题,MMLU 分数与真实世界性能的相关性很差($r = 0.34$)。
对抗性漏洞:压力测试表明,基于梯度的提示注入成功率很高