揭秘强化微调(ReFT):重塑大语言模型推理格局的突破技术

提升大语言模型推理能力成为关键任务,现有通过监督微调(SFT)结合思维链(CoT)注释的方法因仅依赖单一推理路径数据,致使模型泛化能力受限。例如数学问题求解中,训练数据里通常每题仅有一条注释的推理路径,然而同一问题实则存在多种有效路径。与此同时,强化学习在自然语言处理中用于对齐人类偏好取得进展,但尚未有效应用于提升模型推理能力的微调环节。在此背景下,开发新的微调策略以增强模型推理泛化性迫在眉睫。

摘要

提升大语言模型(LLMs)推理能力的一种方法是使用思维链(CoT)注释进行监督微调(SFT)。然而,这种方法的泛化能力不够强,因为训练仅依赖于给定的 CoT 数据。例如在数学解题中,训练数据里的每个问题通常只有一条注释的推理路径。直观来看,若对于一个问题算法能从多个注释推理路径中学习会更好。为解决此问题,我们提出一种简单有效的方法——强化微调(ReFT),以增强学习大语言模型在推理方面的泛化能力,这里以数学解题为例。ReFT 先用 SFT 预热模型,再采用在线强化学习(本文中为 PPO 算法)进一步微调模型,对于给定问题自动采样大量推理路径,奖励自然从真实答案中得出。在 GSM8K、MathQA 和 SVAMP 数据集上的大量实验表明,ReFT 显著优于 SFT,并且通过结合多数投票和重新排序等推理时策略,性能可能会进一步提升。注意,ReFT 通过与 SFT 相同的训练问题学习而获得提升,无需依赖额外或扩充的训练问题,这表明 ReFT 具有卓越的泛化能力。

技术创新贡献

  • 提出强化微调(ReFT)方法,其创新地先以少量轮次的监督微调(SFT)预热模型,赋予模型初步解题能力,再运用在线强化学习(PPO 算法)从给定问题自动采样丰富多样的推理路径,并依据真实答案自然生成奖励信号,无需额外训练奖励模型,克服了传统 SFT 泛化弱的缺陷。

  • 经在 GSM8K、MathQA 和 SVAMP 等多数据集及不同基础模型的大量实验验证,ReFT 显著超越 SFT 性能,在不同 CoT 类型上表现卓越,且与多数投票、奖励模型重新排序等推理时策略协同良好,进一步提升效果,有力证明其强大泛化及实用价值。

技术实现设计

  • ReFT 两阶段流程

  • 预热阶段:在由“(问题,CoT)”元组构成的数据集上用 SFT 对策略微调 1 至 2 轮次,使模型初步掌握解题技能,此阶段 CoT 生成过程可分解为系列下一词元预测动作,依特定损失函数优化。

  • 强化学习阶段:采用 PPO 算法,基于(问题,答案)元组数据集让策略在线自学习提升性能。通过重复采样响应、评估答案正确性及在线更新参数优化,依据答案比较设计奖励函数,结合 KL 散度构建总奖励,用广义优势估计辅助计算,再依策略和值目标函数加权求和得统一损失函数训练模型。

  • 实验设置要点

  • 选用 Galactica 和 CodeLLAMA 等基础模型,在 GSM8K、SVAMP 和 MathQA 数据集展开实验,为获 CoT 注释采用少样本提示法。

  • 针对不同阶段及模型精心设置超参数,如预热用 AdamW 优化器、特定学习率、批量大小及轮次数;强化学习设合适最大长度、批量大小、更新次数及多种系数,还构建奖励模型用于重新排序评估。

技术实验结果

  • ReFT 性能卓越:在 GSM8K、SVAMP 和 MathQA 数据集,ReFT 显著优于 SFT,CodeLLAMA 模型在 GSM8K 的 N - CoT 和 P - CoT 上分别提升近 10 分和 12 分,平均在各数据集 N - CoT 和 P - CoT 提升 6.7 分和 7.4 分,未用额外注释或奖励模型,凸显强大泛化力。

  • 有效应对奖励操纵:MathQA MCQ 数据集发现 ReFT 训练受奖励操纵影响,即错误答案因选项限制获正奖励误导模型,而在去除选项的 MathQA 数值版本实验中,ReFT 表现佳,证明其在应对奖励操纵及提升性能上的潜力,为后续改进提供方向。

  • 协同技术效果佳:多数投票和奖励模型重新排序技术助力 ReFT,在 GSM8K 上 ReFT + 投票比 SFT + 投票平均高 8.6 分,ReFT 重新排序比 SFT 重新排序高 3 分以上,表明其与常用技术兼容性强,可进一步优化推理性能。

  • 小模型稳定性强:在 Galactica - 125M、Codeparrot - small 和 Codegen - 350M 小模型的 P - CoT 实验中,ReFT 优于 SFT,体现其在不同规模模型探索合理程序的稳健性,拓宽应用范围。

  • 消融研究明关键:消融研究表明部分奖励助于减轻稀疏奖励影响、KL 系数对策略探索空间约束关键、共享值模型在计算与存储成本及性能平衡上表现优,为 ReFT 优化提供关键因素参考。

1. 引言

当前解决数学问题的最先进方法(Luo 等人,2023;Wang 等人,2023a)是使用思维链(CoT)注释(Wei 等人,2022)通过监督微调(SFT)训练模型。如图 1 所示,问题(x):翁每小时照看孩子的收入为 12 美元。昨天,她照看孩子 50 分钟。她赚了多少钱?思维链(e):我们需要先计算她的每小时费率,然后乘以她的工作时长。首先,我们要将 50 分钟转换为小时。一小时有 60 分钟,所以 50 分钟等于 50 / 60 = 5 / 6 小时。接下来,我们可以通过将她的每小时费率乘以工作时长来计算翁的收入:12 美元/小时×5 / 6 小时 = 10 美元。因此,翁照看孩子 50 分钟赚了 10 美元。答案(y):10。


图 1:GSM8K(Cobbe 等人,2021a)中问题(x)、CoT(e)和答案(y)的示例。SFT 过程在训练数据上迭代若干轮次。所提出的 ReFT 从 SFT 预热并在相同数据上进行强化学习训练。

CoT 注释概述了解决数学问题的中间推理步骤。通常训练数据中的每个问题只有一个 CoT 注释,即一条正确的推理路径,用于 SFT。我们观察到这可能导致 SFT 模型的泛化能力相对较弱。实际上,对于同一个问题往往存在多个有效的 CoT 注释(Cobbe 等人,2021a;Zhang 等人,2023),这凸显了需要一种更强大的微调方法。为解决此问题,我们提出一种简单而有效的方法——强化微调(ReFT)(图 1 底部)。

ReFT 从包含一到两个轮次的监督微调(SFT)预热阶段开始(图 1,阴影框)。正如先前工作(Cobbe 等人,2021a)所示,此初始阶段使模型具备一定程度上生成数学问题正确答案的能力。接下来,ReFT 通过利用在线强化学习(RL)算法(Sutton 和 Barto,2018)——本文中为近端策略优化(PPO)(Schulman 等人,2017)进一步优化模型。通过这种方式,ReFT 能够采样多个正确的推理路径或 CoT 注释并从中学习(图 2,右侧)。

由于训练数据包含真实答案,在训练 PPO 时可自然从其中得出黄金奖励,因此无需单独训练奖励模型。相比之下,RLHF(Ouyang 等人,2022)必须使用从人工标注数据中学到的奖励模型。

在预热阶段,ReFT 通过监督学习获得一定的准确性。在强化学习阶段,ReFT 通过采样各种 CoT 推理路径进行强化学习,进一步增强其能力。这样,ReFT 比 SFT 获得更丰富的监督信号,从而极大地提高了数学解题的泛化能力(Gao 等人,2018;Brown 等人,2020)。请注意,ReFT 通过使用与 SFT 相同的训练问题实现超越,而不依赖额外或扩充的训练问题。实际上,ReFT 与此类数据工程并不冲突,可与之无缝结合。

我们的贡献如下:

  • 我们引入一种新颖的微调方法——强化微调(ReFT),其利用强化学习解决数学问题。与传统监督微调相比,在相同数据集上训练时,ReFT 展现出更强的泛化能力。

  • 我们使用两个基础模型——CodeLLAMA(Roziere 等人,2023)和 Galactica(Taylor 等人,2022)在三个标准数据集:GSM8K(Cobbe 等人,2021a)、MathQA(Amini 等人,2019)和 SVAMP(Patel 等人,2021)上进行大量实验。我们的实验涵盖自然语言和基于程序的 CoT,证明了 ReFT 显著提升的性能和泛化能力。

  • 此外,我们证明 ReFT 在推理时受益于多数投票(Wang 等人,2023b)和奖励模型重新排序(Uesato 等人,2022),进一步提升其性能。

2. 相关工作

数学问题解决

近期研究主要集中在 CoT 提示设计和数据工程。大多数研究试图使 CoT 更全面、更精细,以呈现逐步推理解决方案(Nye 等人,2021;Fu 等人,2023;Zhou 等人,2023b;Khot 等人,2023;Zelikman 等人,2022;Imani 等人,2023;Miao 等人,2023)。Gao 等人(2023)进一步提出使用 Python 程序作为 CoT 提示,展示了更准确的推理步骤,并在自然语言 CoT(Wei 等人,2022)基础上有显著改进。Zhou 等人(2023a)引入一种提示方法,通过生成代码用 GPT - 4(OpenAI,2023)验证中间推理步骤,从而在 GSM8K(Cobbe 等人,2021a)和 MATH(Hendrycks 等人,2021)上达到最先进性能。另一系列工作侧重于提高 CoT 的质量(Wang 等人,2023a;Liu 等人,2023;Yu 等人,2023)以及增加来自 OpenAI 的 ChatGPT(gpt - 3.5 - turbo)或 GPT - 4 的 CoT 数据量(Luo 等人,2023;Yue 等人,2023)。

强化学习

我们的工作与近期将 PPO(Schulman 等人,2017)应用于自然语言处理以对齐人类偏好的工作密切相关(Ouyang 等人,2022)。此后,提出了几种训练算法以有效提高对齐效果,包括直接偏好优化(DPO)(Rafailov 等人,2023)、身份偏好优化(IPO)(Azar 等人,2023)和 Kahneman - Tversky 优化(KTO)(Ethayarajh 等人,2023)。与对齐目的不同,我们旨在采用强化学习作为微调范式,以超越传统监督微调的性能。

具体在解决数学问题方面,Uesato 等人(2022)和 Lightman 等人(2023)训练基于结果或过程的奖励模型进行重新排序(Cobbe 等人,2021a),以实现比 SFT 和多数投票(Wang 等人,2023b)更好的性能。而我们的方法旨在提高策略本身的性能,这些奖励模型重新排序方法可轻松集成到最终的策略模型中。

3. 方法

在这项工作中,我们聚焦于使用自然语言的思维链(N - CoT)(Wei 等人,2022)(图 1)和基于 Python 程序的思维链(Gao 等人,2023)(P - CoT)。Gao 等人(2023)提出基于程序的 CoT 用于解决数学问题,我们可以直接执行程序获取答案。为确保清晰并避免歧义,我们分别用 N - CoT 和 P - CoT 表示自然语言和基于程序的 CoT。

3.1 强化微调

所提出的强化微调(ReFT)过程包含两个阶段:预热阶段和强化学习阶段。整体算法如算法 1 所示。

预热:在此阶段,策略在由“(问题,CoT)”元组:组成的数据集上微调几个轮次。这使模型具备生成适当响应的基本解题技能。形式上,CoT 生成过程可分解为一系列下一个词元预测动作。最后一个动作词元 标志着生成过程结束。CoT 可写为:

其中 表示最大长度。在时间步 ,动作 从策略 中采样,其中 可以是词汇表中的任何词元,状态 由问题中的所有词元和迄今为止生成的所有词元组成。每次行动后,产生的状态 是当前状态 与动作 的连接:

当产生的动作是 词元时,产生的状态 是终止状态,生成过程完成。在此符号表示下,样本的损失函数可写为:

(1)

强化学习:在此阶段,策略通过使用由(问题,答案)元组:组成的数据集进行在线自学习来提升性能。具体而言,策略模型通过反复采样响应(图 2)、评估响应答案的正确性并在线更新其参数来学习(算法 1 中的第 7 - 14 行)。我们采用带有裁剪目标算法的 PPO(Schulman 等人,2017)进行训练。遵循 Ziegler 等人(2019),值模型 通过在策略模型 (即预热阶段后的模型)的最后隐藏状态上附加线性值头来构建。对于导致非终止状态的所有动作给予 0 奖励。在终止状态,我们使用直接比较从状态的 CoT 中提取的答案与真实答案 的奖励函数。在此,若答案被判定为正确,奖励函数返回 1,否则返回 0。对于答案均为数值的数据集,当答案可提取且为数值类型时,可应用 0.1 的部分奖励(Zhong 等人,2017;Le 等人,2022)。对于 ,我们写为:

这种部分奖励有助于减少从稀疏奖励中学习的影响(Riedmiller 等人,2018;Trott 等人,2019)。此外,遵循 Zheng 等人(2023),我们的总奖励是奖励函数得分与学习到的强化学习策略与初始策略之间的 Kullback - Leibler(KL)散度(Kullback 和 Leibler,1951)之和,并由系数因子 缩放:

使用广义优势估计(Schulman 等人,2018)进行优势计算:

其中时间差分(TD)定义为

终止状态值 , 是奖励的折扣因子, 是 TD 的折扣因子。对于回报估计,我们利用 -回报 ,它可写为广义优势估计与值估计之和:

最后,策略和值目标可写为以下两个方程:

其中 和 用于采样 CoT 并计算 、。统一损失函数是上述目标的加权和:

(2)

其中 是值目标的系数。

4. 实验

4.1 数据集

我们在三个数学问题数据集上进行实验:GSM8K(Cobbe 等人,2021a)、SVAMP(Patel 等人,2021)和 MathQA(Amini 等人,2019)。对于 GSM8K 和 SVAMP,答案格式为数值。在 MathQA 中,格式为多项选择题(即 ABCD)。表 1 展示了所有数据集的统计信息。我们使用 GPT - 3.5 - turbo 进行少样本提示(Wei 等人,2022;Gao 等人,2023)以获得 N - CoT 和 P - CoT 注释。N - CoT 和 P - CoT 注释的获取遵循 Jie 等人(2023)。我们还在 MathQA 的数值版本(Jie 和 Lu,2023)上进行了额外实验,其格式也为数值。这些实验用于证明我们对 MathQA 上潜在奖励操纵现象(Skalse 等人,2022)的假设(§4.4)。

4.2 基线

我们将 ReFT 与 SFT 和自训练(Xie 等人,2020;Amini 等人,2022)基线进行比较。SFT 只是在训练数据上简单地微调语言模型。自训练方法的实验确保了相对公平的比较,因为这些方法共享从模型生成的样本用于训练的机制。

我们实现了离线自训练(OfflineST)(He 等人,2020)和在线(Hoi 等人,2021)自训练(Online - ST)。离线 - ST 方法类似于专家迭代(Anthony 等人,2017;Uesato 等人,2022;Zelikman 等人,2022)。我们首先使用早期检查点的 SFT 检查点对 CoT 进行采样,并根据真实情况进行验证。我们只保留那些答案正确的专家样本。我们对原始训练数据和专家样本的组合进行 SFT。

在线 - ST 方法的设计与 ReFT 紧密可比。遵循 ReFT,在线 - ST 具有相同的预热过程。之后,我们使用即时生成的样本进行持续训练。在每个训练步骤中,模型首先为一批数据采样 CoT,只保留那些答案正确的 CoT。结果批次由采样的和真实的 CoT 组成。然后,我们使用监督微调目标 在此批次上更新模型参数。与 ReFT 相比,在线 - ST 既不使用错误响应(答案错误),也没有专门机制防止模型与初始模型显著偏离,这可能表现为特定任务的过拟合和训练不稳定。

4.3 实验设置

我们使用两个基础模型进行实验:Galactica - 6.7B(Taylor 等人,2022)和 CodeLLAMA - 7B(Roziere 等人,2023)。据报道,这两个模型在数学解题方面都有很强的性能,并且在近期关于推理任务的文献中常被采用(Yue 等人,2023;Luo 等人,2023)。

除了与基线比较,我们还在 GSM8K 上应用多数投票(Wang 等人,2023b)和奖励模型重新排序(Lightman 等人,2023)等常用技术。

超参数:在所有实验中,训练使用 8 个 A100 - 80GB GPU,借助 DeepSpeed(Rajbhandari 等人,2020;Rasley 等人,2020)零阶段 2 和 HuggingFace Accelerate(Gugger 等人,2022)完成。在 ReFT 的预热阶段,我们使用 AdamW(Loshchilov 和 Hutter,2017)优化器,预热比率为 10%。批量大小为 48,学习率为 1e - 5。最大长度设置为 1024。除在 MathQA MCQ 和 MathQA 数值上分别使用多达 5 轮次和 10 轮次外,预热阶段的轮次数在所有设置中均为 2。模型以 3e - 7 的学习率训练 300 轮次。遵循 Ziegler 等人(2019),PPO 中的 、、、 和 分别设置为 1、0.95、5、0.2 和 2。KL 系数 对于 P - CoT 设置为 0.01,对于 N - CoT 实验设置为 0.05。关于 ReFT 的更多超参数设置可在附录 B 中找到。

对于 SFT 基线,我们训练模型 40 轮次并选择性能最佳的检查点。选择此轮次数是为确保 SFT 收敛。对于离线 - ST 基线,我们使用 ReFT 预热阶段的检查点采样 CoT。使用 1.0 的生成温度和 1024 的最大长度,我们为每个问题采样 100 个 CoT,只保留那些答案正确的 CoT。遵循 Singh 等人(2023),我们随后对 CoT 进行二次采样,每个问题随机抽取 10 个唯一的 CoT,以平衡问题难度。微调轮次数设置为 20,足以确保训练收敛。如 §4.2 所述,在线 - ST 基线试图模仿 ReFT 的设置。我们有相同的预热过程,超参数设置大致与 ReFT 相同。

奖励模型重新排序:遵循(Cobbe 等人,2021a;Uesato 等人,2022),我们训练一个奖励模型(RM)来确定 CoT 的正确性。为构建 RM 训练数据,我们使用预热阶段的模型进行采样,为训练集中的每个问题获取 100 个 CoT。对 CoT 进行去重,并通过将提取的答案与真实答案比较获得二进制标签。

通常,奖励模型是一个从最佳 SFT 检查点初始化的语言模型(Cobbe 等人,2021a;Ouyang 等人,2022)。与基于结果的奖励模型(ORM)(Uesato 等人,2022)类似,奖励模型被训练预测表示“正确”或“不正确”解决方案的二进制标签。一旦输入通过奖励模型,就在最后一个词元的隐藏状态上使用线性分类器进行分类。最后,在候选者中选择具有最高“正确”分数的解决方案作为最终答案。我们使用批量大小为 24、最大长度为 700 和线性学习率调度(预热期为 10%,最大学习率为 1e - 6)训练 RM 模型 3 轮次。

评估:我们报告所有数据集上 N - CoT 和 P - CoT 的数值准确率。对于多数投票和重新排序(表 4),我们采样 100 个 CoT 进行评估。在投票中,选择计数占多数的有效答案作为计算准确率的最终答案。在重新排序中,我们选择得分最高的 CoT 并提取答案。

4.4 结果

ReFT 优于 SFT:表 2 比较了基线与所提出的 ReFT 在 GSM8K、SVAMP 和 MathQA 数据集上的性能。我们可以观察到,除在 MathQA MCQ N - CoT 上外,ReFT 始终比 SFT 取得更好的性能。具体而言,在 GSM8K N - CoT 和 P - CoT 上,使用 CodeLLAMA 的 ReFT 分别比 SFT 有近 10 分和 12 分的提升。平均而言,在所有数据集的 N - CoT 和 P - CoT 上,使用 CodeLLAMA 的 ReFT 分别实现 6.7 分和 7.4 分的提升。值得注意的是,ReFT 未使用额外注释或奖励模型。如此强大的结果证明了 ReFT 的稳健泛化能力(见分析 §5)以及通过强化学习进一步探索训练数据的巨大潜力(Lu 等人,2023)。离线自训练包括从初始策略采样数据进行微调。我们可以看到这个简单基线与 SFT 相比可提高性能(He 等人,2020;Gulcehre 等人,2023),但其提升远落后于 ReFT。这种比较表明在 ReFT 中“探索”对获得良好性能至关重要。尽管在线自训练使用 Galactica 实现了更多改进,但平均而言仍远落后于 ReFT。这一结果表明错误实例对引导模型更好地探索也非常重要。与自训练的比较还表明,所提出的基于策略采样和强化学习的方法优于标准数据扩充方法。

| 方法 | 规模 | GSM8K |
| SVAMP |
| MathQA MCQ |
| 平均值 |
|
| — | — | — | — | — | — | — | — | — | — |
|
|
| N - CoT | P - CoT | N - CoT | P - CoT | N - CoT | P - CoT | N - CoT | P - CoT |
| Galactica + SFT | 6.7B | 42.68 | 58.83 | 54.50 | 70.09 | 58.07 | 64.61 | 51.75 | 64.51 |
| — | — | — | — | — | — | — | — | — | — |
| Galactica + 离线自训练 | 6.7B | 42.60 | 60.72 | 57.90 | 72.30 | 60.75 | 67.04 | 53.75 | 66.69 |
| Galactica + 在线自训练 | 6.7B | 47.84 | 62.93 | 59.40 | 74.59 | 59.38 | 61.24 | 55.54 | 66.25 |
| Galactica + ReFT | 6.7B | 48.14 | 68.91 | 61.40 | 74.09 | 58.13 | 70.47 | 55.89 | 71.16 |
| CodeLLAMA + SFT | 7B | 43.59 | 63.68 | 58.09 | 75.40 | 56.01 | 64.79 | 52.56 | 67.96 |
| CodeLLAMA + 离线自训练 | 7B | 45.10 | 68.00 | 60.20 | 77.69 | 59.81 | 68.53 | 55.04 | 71.41 |
| CodeLLAMA + 在线自训练 | 7B | 44.66 | 67.85 | 58.60 | 77.40 | 56.95 | 68.85 | 53.40 | 71.37 |
| CodeLLAMA + ReFT | 7B | 53.30 | 75.28 | 64.50 | 79.19 | 60.13 | 71.83 | 59.31 | 75.43 |

表 2:在所有数据集上使用两个基础模型微调的 ReFT 和基线的值准确率

MathQA 的奖励操纵:我们对 MathQA MCQ 上的负面结果进行调查,表明 ReFT 在训练多选择题时遭受奖励操纵(Skalse 等人,2022)。图 3 展示了采样解决方案如何产生“不准确奖励”,从而影响强化学习训练。如我们所见,采样的 CoT 得到错误答案“172”,它不是“18”和“22”乘积的一半。然而,最终推理步骤仍将选项“C”预测为最终答案,因为模型总是从{A, B, C, D, E}中预测一个选项,而不管中间 CoT 的正确性。因此,这样一个误导性的 CoT 将获得正奖励“1”,误导模型将其视为正确的 CoT。潜在的奖励操纵现象严重干扰了模型训练(Everitt 等人,2021)。这也是我们为 MathQA N - CoT 选择具有更长预热步骤的检查点以减少奖励操纵影响的原因。

为进一步证明多项选择题的负面影响,我们对 Jie 和 Lu(2023)提出的 MathQA 变体(MathQA 数值(表 1))进行实验,该变体去除了问题中的选项,直接预测数值答案。表 3 展示了与基线的比较。我们可以观察到,使用 Galactica 和 CodeLLAMA 的 ReFT 始终优于基线。理想情况下,如果我们能为中间推理步骤获得更精细的奖励(例如,基于过程的奖励(Lightman 等人,2023)),我们可以减少 MathQA MCQ 上的奖励操纵影响。然而,开发可靠的基于过程的奖励模型成本高昂,需要对推理步骤进行大量手动注释。认识到这些挑战,我们将控制奖励操纵及其分析视为未来工作中需要解决的重要问题。

N - CoTGalacticaCodeLLAMA
SFT40.0837.32
离线自训练44.2341.24
在线自训练43.7838.06
ReFT45.2342.24

表 3:在 MathQA 数值基准上使用两个基础模型的 ReFT 和基线的值准确率

多数投票和重新排序使 ReFT 受益:遵循 Wang 等人(2023b);Uesato 等人(2022);Lightman 等人(2023),我们还进行多数投票和奖励模型重新排序,以表明 ReFT 可从这些常用技术中受益。具体而言,我们从 SFT 和 ReFT 策略中进行采样。我们为每个问题采样 100 个 CoT 解决方案,并使用 §4.3 中描述的奖励模型进行重新排序。表 4 中的结果表明,通过奖励模型重新排序,ReFT 在 GSM8K 上始终实现最佳性能。ReFT + 投票在所有设置中平均比 SFT + 投票显著高出 8.6 分。ReFT 重新排序比 SFT 重新排序高出 3 分以上。

与现有开源方法(Luo 等人,2023;Wang 等人,2023a;Yue 等人,2023)(表 4 底部)相比,我们最佳的 P - CoT 变体在 GSM8K 上达到 81.2 的最佳性能准确率。此外,这些方法主要包括从 ChatGPT 生成的额外数据,并在微调期间进行蒸馏。相比之下,我们通过挖掘现有训练数据的潜力并突破策略性能极限来改进策略本身。表 4 中报告的我们的最佳结果,即具有 P - CoT 设置的 CodeLLAMA + ReFT + 重新排序,甚至超过 GPT - 3.5 - turbo。然而,我们使用的模型仅为 7B 大小。

| 方法 | 规模 | GSM8K |
| 额外 SFT 数据 |
| — | — | — | — | — |
| N - CoT P - CoT |
|
|
|
|
| Galactica + SFT + 投票 | 6.7B | 52.8 | 62.9 | X |
| Galactica + ReFT + 投票 | 6.7B | 58.5 | 71.8 | X |
| Galactica + SFT + 重新排序 | 6.7B | 57.5 | 73.4 | X |
| Galactica + ReFT + 重新排序 | 6.7B | 59.2 | 76.4 | X |
| CodeLLAMA + SFT + 投票 | 7B | 53.5 | 68.0 | X |
| CodeLLAMA + ReFT + 投票 | 7B | 63.2 | 78.0 | X |
| CodeLLAMA + SFT + 重新排序 | 7B | 62.9 | 77.0 | X |
| CodeLLAMA + ReFT + 重新排序 | 7B | 66.0 | 81.2 | X |
| 其他基础模型 |
|
|
|
|
| WizardMath(Luo 等人,2023) | 7B | 54.9 |
| 96k) |
| WizardMath(Luo 等人,2023) | 13B | 63.9 |
| 96k) |
| MathCoder(Wang 等人,2023a) | 7B | 67.8 |
| 80k) |
| MAmmoTH - Coder(Yue 等人,2023) | 7B | 22.2 | 58.8 | (260k) |
| MAmmoTH - Coder(Yue 等人,2023) | 70B | 72.4 | 76.7 | (260k) |
| DeepSeekMath(Shap 等人,2024) | 7B | 88.2 | 86.7 | (776k) |
| GPT - 3.5 - turbo(Jie 等人,2023) | N.A. | 75.3 | 78.0 | N.A. |
| GPT - 4(OpenAI,2023;Zhou 等人,2023a) | N.A. | 93.0 | 97.0 | N.A. |

表 4:在 GSM8K 上 SFT 和 ReFT 的多数投票和奖励模型重新排序的解题准确率。我们还包括现有方法进行比较。

小模型实验:直观地说,探索可能导致小语言模型的不完美演示。我们使用 Galactica - 125M、Codeparrot - small 和 Codegen - 350M 对 P - CoT 数据进行实验。表 5 展示了 SFT 和 ReFT 之间的性能比较。令人惊讶的是,ReFT 在三个数据集上仍优于 SFT。这种改进证明了 ReFT 在探索合理程序过程中的稳健性。

方法GSM8KSVAMPMathQA MCQ
Galactica - 125M + SFT23.735.658.4
Galactica - 125M + ReFT29.839.460.7
Codeparrot - small + SFT13.825.755.3
Codeparrot - small + ReFT16.827.458.3
Codegen - 350M + SFT20.434.456.4
Codegen - 350M + ReFT28.439.359.1

表 5:使用 Galactica - 125M、Codeparrot - small 和 Codegen - 350M 对 P - CoT 进行的实验

消融研究:我们使用 CodeLLAMA 在 GSM8K P - CoT 上进行消融研究(表 6)。没有部分奖励时,ReFT 获得较低准确率 74.4,但仍远优于 SFT。如 §3.1 所述,这种部分奖励有助于减少训练期间稀疏奖励(Trott 等人,2019)的影响。此外,如果我们将 KL 系数 设置为 0,策略分布将容易崩溃并产生意外结果(即 0 准确率)。对策略探索的空间施加约束至关重要(Ouyang 等人,2022)。初始预热步骤本质上施加了此类约束,并允许策略在由 控制的范围内进一步探索。我们还尝试使用单独的值模型(Andrychowicz 等人,2021;Cobbe 等人,2021b),其中主体参数与策略模型初始化为相同。我们发现这种设置使策略在早期强化学习训练中更快收敛,但最终达到相当的性能。与共享值模型的原始设置相比,由于额外的前向传递,它的计算开销增加一倍,并且由于存储单独的值网络,内存成本也增加一倍。最后,在附录 C 中我们给出一个案例研究,展示 SFT 和 ReFT 生成的 P - CoT 如何演变。

模型设置准确率
CodeLLAMA + ReFT75.28
- 移除部分奖励74.40
- KL 系数 = 0崩溃
- 非共享值模型75.15

表 6:在 GSM8K P - CoT 上的消融研究

5. 分析

泛化

图 4 展示了使用 CodeLLAMA 作为基础模型在 GSM8K P - CoT 上训练 ReFT 时的平均奖励、评估准确率和 KL 散度。SFT 在接近第 40 轮时收敛并出现过拟合。然而,我们可以看到在第 40 轮时,ReFT 策略的平均奖励约为 80%至 90%,值准确率也在增加。此外,我们可以看到 KL 散度(图 4(c))在开始时非常大,然后在 0 到 10 之间保持合理值。稳定的 KL 散度表明我们的策略在包含适当程序的空间内进行探索。潜在的强化学习机制极大地提高了 ReFT 的泛化能力(Brown 等人,2020)。

定性评估

我们进行人工评估以定性评估 SFT 模型、预热检查点和 ReFT 模型的输出。评估使用 GSM8K 测试集中 50 个可被所有三个模型正确解决的问题,并采样解决方案。我们请四位不同的注释者根据以下标准对推理路径进行评分,每个评分范围为 0 到 1。

  • 逻辑:评估导致答案的逻辑是否正确。

  • 命名:评估变量是否传达适当且合理的语义。

  • 紧凑性:评估推理路径是否包含冗余信息。

方法逻辑命名紧凑性总体得分
SFT0.9860.9880.9942.967
预热0.9490.9820.9902.920
ReFT0.9920.9900.9962.982

表 7:在 GSM8K P - CoT 数据集上训练的三种方法的模型定性得分

满分 3 分表示在这三个维度上表现良好。为确保评估公正且可靠,我们严格遵循以下设置:(1)每个推理路径的来源(来自 SFT、预热或 ReFT)匿名化,以防止注释者偏见。(2)四位不同的注释者负责不同部分的样本。

如表 7 所示,尽管总体得分相当接近,但 ReFT 略优于 SFT,并优于预热变体。请注意,SFT 本质上是为从真实情况学习而训练的,因此可能得分较高。这种比较分析强调了 ReFT 在生成准确且语义连贯的推理路径方面的稳健性。

何时 ReFT 超越 SFT?

为进一步研究 ReFT 和 SFT 之间的关系,我们使用从 SFT 不同数量的预热步骤进行 ReFT 训练。图 5 展示了不同 ReFT 变体相对于 SFT 的值准确率。具体而言,如果预热步骤为 3,则策略从第 3 轮 SFT 检查点初始化。我们可以看到,所有 ReFT 策略在开始预热后性能立即下降,直到训练轮次达到约 8 次。这是因为共享值模型中的线性层是随机初始化的,可能需要几个轮次来调整分布。从第 30 轮开始,SFT 收敛,所有 ReFT 变体仍在改进。我们还可以看到所有变体都显著优于 SFT,并且任何特定的 ReFT 变体都没有明显优势。

6. 结论

我们引入强化微调(ReFT)作为微调模型解决数学问题的新方法。与 SFT 不同,ReFT 通过探索多个 CoT 注释以寻找正确答案来优化不可微目标,而不是依赖单个注释。

通过在三个数据集上使用两个基础模型进行大量实验,我们证明了 ReFT 在性能和泛化能力方面优于 SFT。此外,我们展示了使用 ReFT 训练的模型与多数投票(Wang 等人,2023b)和奖励模型重新排序(Cobbe 等人,2021a;Uesato 等人,2022)等技术的兼容性。

此外,与几个同等规模的公开可用开源模型相比,ReFT 在数学解题方面表现出卓越性能。这证明了 ReFT 方法的有效性和实际价值。

如何学习大模型 AI ?

由于新岗位的生产效率,要优于被取代岗位的生产效率,所以实际上整个社会的生产效率是提升的。

但是具体到个人,只能说是:

“最先掌握AI的人,将会比较晚掌握AI的人有竞争优势”。

这句话,放在计算机、互联网、移动互联网的开局时期,都是一样的道理。

我在一线互联网企业工作十余年里,指导过不少同行后辈。帮助很多人得到了学习和成长。

我意识到有很多经验和知识值得分享给大家,也可以通过我们的能力和经验解答大家在人工智能学习中的很多困惑,所以在工作繁忙的情况下还是坚持各种整理和分享。但苦于知识传播途径有限,很多互联网行业朋友无法获得正确的资料得到学习提升,故此将并将重要的AI大模型资料包括AI大模型入门学习思维导图、精品AI大模型学习书籍手册、视频教程、实战学习等录播视频免费分享出来。

在这里插入图片描述

第一阶段(10天):初阶应用

该阶段让大家对大模型 AI有一个最前沿的认识,对大模型 AI 的理解超过 95% 的人,可以在相关讨论时发表高级、不跟风、又接地气的见解,别人只会和 AI 聊天,而你能调教 AI,并能用代码将大模型和业务衔接。

  • 大模型 AI 能干什么?
  • 大模型是怎样获得「智能」的?
  • 用好 AI 的核心心法
  • 大模型应用业务架构
  • 大模型应用技术架构
  • 代码示例:向 GPT-3.5 灌入新知识
  • 提示工程的意义和核心思想
  • Prompt 典型构成
  • 指令调优方法论
  • 思维链和思维树
  • Prompt 攻击和防范

第二阶段(30天):高阶应用

该阶段我们正式进入大模型 AI 进阶实战学习,学会构造私有知识库,扩展 AI 的能力。快速开发一个完整的基于 agent 对话机器人。掌握功能最强的大模型开发框架,抓住最新的技术进展,适合 Python 和 JavaScript 程序员。

  • 为什么要做 RAG
  • 搭建一个简单的 ChatPDF
  • 检索的基础概念
  • 什么是向量表示(Embeddings)
  • 向量数据库与向量检索
  • 基于向量检索的 RAG
  • 搭建 RAG 系统的扩展知识
  • 混合检索与 RAG-Fusion 简介
  • 向量模型本地部署

第三阶段(30天):模型训练

恭喜你,如果学到这里,你基本可以找到一份大模型 AI相关的工作,自己也能训练 GPT 了!通过微调,训练自己的垂直大模型,能独立训练开源多模态大模型,掌握更多技术方案。

到此为止,大概2个月的时间。你已经成为了一名“AI小子”。那么你还想往下探索吗?

  • 为什么要做 RAG
  • 什么是模型
  • 什么是模型训练
  • 求解器 & 损失函数简介
  • 小实验2:手写一个简单的神经网络并训练它
  • 什么是训练/预训练/微调/轻量化微调
  • Transformer结构简介
  • 轻量化微调
  • 实验数据集的构建

第四阶段(20天):商业闭环

对全球大模型从性能、吞吐量、成本等方面有一定的认知,可以在云端和本地等多种环境下部署大模型,找到适合自己的项目/创业方向,做一名被 AI 武装的产品经理。

  • 硬件选型
  • 带你了解全球大模型
  • 使用国产大模型服务
  • 搭建 OpenAI 代理
  • 热身:基于阿里云 PAI 部署 Stable Diffusion
  • 在本地计算机运行大模型
  • 大模型的私有化部署
  • 基于 vLLM 部署大模型
  • 案例:如何优雅地在阿里云私有部署开源大模型
  • 部署一套开源 LLM 项目
  • 内容安全
  • 互联网信息服务算法备案

学习是一个过程,只要学习就会有挑战。天道酬勤,你越努力,就会成为越优秀的自己。

如果你能在15天内完成所有的任务,那你堪称天才。然而,如果你能完成 60-70% 的内容,你就已经开始具备成为一名大模型 AI 的正确特征了。

这份完整版的大模型 AI 学习资料已经上传CSDN,朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值