更新于 2026年7月26日

我们都知道很多大模型在训练过程中都会使用到强化学习来对大模型进行微调,而在这一过程中又会用到一个叫做奖励模型(Reward Modeling)的东西来对大模型的输出结果进行评估,然后再基于强化学习来对大模型的参数进行微调。

那什么又是奖励模型呢?为什么需要奖励模型呢?

在接下来的这篇文章中,我们将会以 InstructGPT [1] 和 LLaMa 2 [2] 模型为例,来介绍什么是奖励模型、它是如何来的、为什么需要奖励模型、以及如何训练一个奖励模型等方面来给大家简单介绍一下奖励模型的基本原理。

为了说清楚这个问题,我们不得不带大家下来回顾一下大模型训练的核心流程。

一说到大模型的训练流程,我想大家肯定都知道预训练、微调、奖励模型、人类反馈强化学习这些术语,但是它们的历史发展到底是如何进行的呢?

经常看我们文章的朋友可能都知道,我们在介绍每一项技术的时候一定都会介绍它所出现的原因和动机,下面我们就以各项技术在大模型中出现的顺序来梳理整个大模型的发展。

关键字:大模型、奖励模型、人类反馈强化学习、GPT、LLaMA

1. 大语言模型起源#

现在我们口中常说的“大模型”其实是“大语言模型”的简称,对于大语言模型(Large Language Model, LLM)这一术语的由来,我们查阅了一些资料并没有找到是谁最先提出,但是它的出现大约是在2018年左右,也就是在 BERT [3] 和 GPT-1 [4]提出的那一年左右。

我们都知道在先前的语言模型中都是基于传统的统计学或深度学习(参数规模小)的方式来表征文本中的语义信息,而这两种方法无论是从效果上来看还是从多任务的角度来看都没能取得颠覆式的进展,直到 GPT-3 的出现。

更多关于传统语言模型的介绍,可以参见「9.1 自然语言处理基础:NLP 任务、流程与建模对象」中的内容。

对于 GPT-3 为什么能取得颠覆式的效果除了有 Transformer 的加持以外,另一个非常重要的原因就是“大”,即参数规模的大。

图 1. 大模型参数规模变迁
图 1. 大模型参数规模变迁

如图1所示便是2018年前后深度学习模型参数规模的变迁情况。从 Transformer-big 的 0.215B 到 Bert-Large 的0.34B,模型的参数规模逐步开始增“大”,一直到 GPT-1、GPT-2、GPT-3 的出现,“大”模型这个词便开始频繁出现在各大论文中。又因为这些大模型都是以语言模型为主,所以大语言模型这个词诞生了,所以慢慢地“大模型”这个词就成为了大语言模型的专属简称。

当然,随着模型的发展大模型不仅仅只是局限于语言模型领域了,而是逐步扩展到了多模态领域。

所以,大模型其实就是在传统深度学习模型的基础之上扩大了模型的参数规模而已。

2. 大语言模型变迁#

对于大语言模型的追溯最早可能是 GPT-1(这里掌没有严格考证,你可以把本节内容可以看作是对 GPT 系列模型变迁的梳理),它的提出也正式标志着语言模型的发展迈向了一个新阶段。

现在回过头来看,我们甚至怀疑当 GPT-1 提出来的时候,OpenAI 甚至都已经想好了 GPT-2、GPT-3 将要做的事情,因为稍后你会发现每一代模型的提出不管效果怎么样,但是从方向上来看那都是一代一个台阶,都是标志性的方向。

2.1 Zero-Shot 时代#

我们都知道,在传统的深度学习方法中(RNN、CNN)标注数据总是一件成本高昂的事情,但与此同时却又存在着海量的非标注数据我们却不能有效利用,例如互联网文本、各类书籍语料等等。

基于这样的动机,2018年6月OpenAI 以 Transformer 中解码器为基础提出了一种通过自然语言生成方式来进行建模的预训练语言模型(Generative Pretrained Transformer, GPT),而这也是第1代 GPT 模型即 GPT-1 [4]。GPT-1 模型的核心思想在于它首先使用生成式任务在大规模未标记的文本语料上进行预训练,使模型学习到通用的结构、语法、语义等信息;然后在下游任务上通过有监督的方式进行参数微调以实现模型的迁移运用,并且通过特定的输入方式实现了模型结构调整的最小化。

注:这里虽然使用的是未标记的文本语料上进行预训练,但实际上还是有监督建模,具体可以参见文章「看图秒懂自监督、有监督、无监督到底有什么区别?」

图 2. GPT-1 网络结构图
图 2. GPT-1 网络结构图

如图2所示便是 GPT-1 的网络结构示意图,总结起来就一句:终结传统 NLP 中一任务场景一网络结构的做法,提出统一的多任务网络结构,通过预训练+微调的范式来进行建模。这里需要注意的是 GPT-1 的提出时间是要早于 BERT 的,只是 BERT 当时比 GPT-1 的效果更好所以大家更熟知的是 BERT 中的“预训练 + 微调”。

虽然在 GPT-1 中基于预训练模型的微调方法已经极大限度上减少了对网络结构的修改,但是在不同的下游任务中依旧需要在原有网络的基础上再加入一个线性层,因此,在引入了新的模型参数后还是需要通过少量标注数据来对这部分模型参数进行微调,这在 OpenAI 看来是不能接受的。

基于这样的动机,2019年2月 OpenAI 在 GPT-1 模型的基础之上提出了 GPT-2 模型[5] 。GPT-2 模型最大的一个改进点就是没有再针对每个下游任务进行有监督微调,而是使用同一个预训练语言模型依靠它自身学习到的生成能力来完成不同的下游任务。

尽管最后 GPP-2 在各项下游任务中的表现还远不如现当时各任务场景下的有监督模型,但现在回过头来看至少在方向上是正确的,并且当时 OpenAI 研究发现随着模型规模的扩大其表现结果有还有明显的增长趋势,而这也为后续的 GPT-3 埋下了伏笔。

之所以 OpenAI 认为不需要再针对每个任务设计最后的网络层,是因为 OpenAI 团队认为只要训练语料足够大,里面自然就包含了各类任务场景,模型自身也就能够学会,最终希望让 AI 的行为更像人类的思考方式。

2.2 Few-Shot 时代#

虽然从模型新意度上看 GPT-2 相较于 GPT-1 有了本质的改变,但是从模型最后的表现结果来看 GPT-2 并没有取得显著的进步。不过尽管如此,当时的 OpenAI 依旧相信摒弃传统的建模方式才是语言模型正确的发展方向,当然其信心来源于 OpenAI 发现随着模型规模的扩大模型在下游任务中的表都有着明显地提升[6],此时模型的最大规模已有170亿参数 [7]。

基于这样的动机,OpenAI 于2020年5月又提出了参数规模高达 1750 亿的 GPT-3 模型[6]。从整体上看,GPT-3 在模型结构和训练方法上与 GPT-2 一样,仅仅只是非常直接地扩大了模型的参数量、数据集的大小和丰富度,同时上下文窗口也从 GPT-2 中的 1024 增加到了 2048 的长度。

GPT-3 模型除了在规模上更加激进,最重要的是它提出了一种不需要对模型参数进行更新的上下文情境学习(In-Context Learning)方法。GPT-3 模型不再像 GPT-2 那样在下游任务中完全不给模型任何样例进行学习,而是给定少量标注样本让模型知道该如何完成这一任务。因为即使是人类也做不到在不看任何示例的情况下而完成一项之前从未见过的新任务。

图 3. Zero-shot、One-Shot和Few-shot原理示意图
图 3. Zero-shot、One-Shot和Few-shot原理示意图

如图3所示便是上下文情境学习的原理示意图,此时我们不再追求模型能够提前知晓一切,而是先给它看一个或多个示例,然后再来回答对应问题。

你看,这不就是类似于人类的思考学习方式吗?

可以发现,GPT-3 解决问题时的思路体现在两个方面:① 用更大的语料让模型学到更多的知识;② 通过情境学习来进一步提升模型在下游任务中的效果。 正因如此,GPT-3 才让 OpenAI 在生成式预训练这条路上站稳了跟脚。

简单总结,相较于 GPT-2,GPT-3 的行为模式向着人类思考方式迈进了一大步!

2.3 人类反馈强化学习时代#

尽管 GPT-3 相较于 GPT-2 有了大幅的提升,但是它依然不够完美。

由语言模型本身的建模方式可知,它的目标函数是通过前 $k$ 个词来预测第 $k+1$ 个词,而这也就决定了它难以根据用户输入的指令来生成对应有用的内容,因为两者的目标函数显然并不相同。简单来说就是模型知道得很多,但并不能理解用户的真实意图。例如用户输入提示“地球到底是圆的还是平的”,那么模型生成的结果可能是:

结果1: 地球到底是圆的还是平的 ,结果很近热:“大约三分之一受访者认为不确定,好在大部分人认为地球是圆的……

结果2: 地球到底是圆的还是方的 。其实,迄今为止,地球上生活的人仍然有人相信地球是方的。在这里,我不讨论的地……

为什么会出现这样的结果呢?那是因为这样的描述确存在于训练语料中,所以当用户输入“地球到底是圆的还是平的”这个提示时模型并不能理解其背后真实的意图,也就是不知道用户希望得到哪个回答。因此,我们需要将模型的输出和用户的真实意图进行对齐(Alignment)。

基于这样的动机,2022 年 3 月 OpenAI 在 GPT-3 模型的基础上加入人类反馈强化学习微调得到了 InstructGPT 模型 [1]。从名字也可以看出,它的核心目的就是为了让模型能够理解用户所输入的指令。

在正式介绍 InstructGPT 模型的思想之前,我们先来简单介绍一下强化学习的基本思想以及 InstructGPT 中所提出来的基于人类反馈的强化学习。

2.3.1 强化学习思想#

强化学习(Reinforcement learning, RL)是机器学习中的一个领域,它强调智能体(Agent)如何基于复杂环境(Environment)而采取相应行动(Action),以取得最大化的预期收益 [9]。强化学习是除了监督学习和非监督学习之外的第 3 种机器学习方法,它的灵感来源于心理学中的行为主义理论,即有机体如何在环境给予的奖励或惩罚刺激下,逐步形成对刺激的预期,产生能获得最大利益的习惯性行为。

图 4. 强化学习原理示意图
图 4. 强化学习原理示意图

如图4所示便是强化学习的原理示意图。对于图示中的智能体(狗)来说,它接收到外部环境的变化(训练员扔出木棍);然后采取相应的行动(原地不动、衔回来或衔走等);接着外部环境会根据智能体的行动给予对应的反馈(奖励或惩罚);最后智能体再次根据环境的变化采取相应行动并以此迭代整个过程,直到智能体通过与环境的互动逐渐学到一个优秀的策略,以在后续给定的任务中取得最大的奖励值。

2.3.2 人类反馈强化学习#

人类反馈强化学习(Reinforcement Learning from Human Feedback, RLHF)是基于强化学习的一种改进算法,其核心思想是先通过人类反馈信息来训练一个奖励模型(Reward Modeling),然后通过该奖励模型对智能体的行为进行评估,最后智能体根据反馈信号来调整自己的策略 [10]。

图 5. 人类反馈强化学习原理示意图
图 5. 人类反馈强化学习原理示意图

如图5所示便是人类反馈强化学习的原理示意图。与传统的强化学习相比,人类反馈强化学习最大的不同在于它会利用人类的反馈信息来对智能体的行为进行评估并给予指导以帮助智能体更有效地学习。而在强化学习中,智能体只能通过与环境的互动进行学习,并根据环境的奖励信号调整策略而没有直接的人类反馈信息参与。

可以发现,在基于强化学习框架中的奖励模型的作用就是对智能体行为的优劣进行评判。

接着我们再来看奖励模型在 InstructGPT 训练流程中的具体位置。

2.3.3 InstructGPT 训练流程#

InstructGPT 是基于 GPT-3 模型微调而来,且同时加入了人类反馈强化学习来优化模型,并最终得到了1.3B、6B 和 175B 这 3 个模型。对于每个模型来说,首先会根据对应参数规模的 GPT-3 模型通过有监督方法(Supervised Fine-Tuning, SFT)进行微调;然后再利用标注好的指令数据训练得到一个奖励模型(Reward Modeling, RM)对微调后 GPT-3 模型的输出进行打分;最后利用强化学习根据奖励模型对微调后的 GPT-3 模型的评分进行优化,以此得到InstructGPT模型。

不过最终 InstructGPT 所有3个版本的模型在训练过程中使用到的RM模型都是基于 6B 的 GPT-3 训练而来,因为作者研究发现基于 175B 的 GPT-3 训练得到的RM模型输出结果并不稳定且需要较多的计算资源。

图 6.  InstructGPT 训练原理示意图
图 6. InstructGPT 训练原理示意图

如图6所示便是 InstructGPT 训练过程的原理示意图,其中第2步便是训练奖励模型的过程,训练完成以后它将被用于强化学习中来对主模型进行优化,当然我们还可以用一个更加通用的流程图来进行展示,如图7所示。

图 7. 大模型训练流程图
图 7. 大模型训练流程图

如图7所示,便是常见的大模型训练流程,更多相关内容我们将在后续文章中陆续介绍。

行文至此,我们总算是把奖励模型在整个大模型训练过程中的作用给介绍清楚了。

在下一篇文章,我们将会开始正式介绍奖励模型的建模原理。

3. 第一性原理与总结#

这里,如果我们再回过头来看 GPT 系列模型的发展脉络,你会惊奇地发现好像每一步都是那么的浑然天成环环相扣。

我们相信这一定不是巧合,而是一种思想在进行指导——先找到事物的本质确定好方向,然后再去一步步解决遇到的问题,而不是依靠现有的经验来确定事物的发展方向

例如,如果坚守传统深度学习的建模方式并以它为经验,那你就会认为 OpenAI 一开始选择的路线就是不对的,因为不管是从结果本身来看还是从建模方式来看,你都会觉得针对每个任务场景来调整模型参数是一个更好的选择。

因为在此以前我们对于生成式模型的固有印象便是,基于概率采样的结果难以做到其准确性。例如给它一篇报告让它总结,里面很多涉及到数据描述的内容可能生成出来都是错误的。

但是,你一定也深知往这条路走下去,离通用人工智能好像还有很远很远……

可是,假如我们从事物的本质出发,我们就应该想到通用人工智能就应该像人类一样的方式去思考呀,尽管当时可能无法用现有的技术去解决这些问题,但至少方向是正确的。

3.1 第一性原理#

写到这里就想到了马斯克的第一性原理就是——从根本规律出发,而不是照搬经验,用科学和逻辑推演出全新的解决方案。

在 SpaceX 出现以前火箭的发射成本居高不下,其中一个关键原因就是火箭不能回收。

按照当时人们在火箭发射领域的经验来看,降低成本的方式只能是结构轻量化、整合生产与供应链以及调整任务与商业模式等等。虽然这些方式也能够一定程度降低发射成本,但是在马斯克看来这并没有从根本上解决问题。

马斯克按照自己的第一性原理分析,既然发射成本高的核心原因就是火箭不能回收,那最后解决这一问题的方向一定是做到回收火箭,至于如何回收那就是下一步技术上需要克服的难题。

最后,SpaceX 从首次提出垂直回收构想算起,到成功实现火箭着陆总共经历了约 24 次相关实验。

图 8. 猎鹰 9 号第 20 次飞行的第一级在将 11 颗Orbcomm OG2 卫星送入轨道后,首次成功降落在卡纳维拉尔角空军基地1 号着陆区的地面平台上。
图 8. 猎鹰 9 号第 20 次飞行的第一级在将 11 颗Orbcomm OG2 卫星送入轨道后,首次成功降落在卡纳维拉尔角空军基地1 号着陆区的地面平台上。[8]

这足以见得,抓住事务本质的重要性。

3.2 总结#

最后,我们再来简单总结一下 OpenAI 所提出的这4篇开创性论文。

GPT-1 的论文题目是 Improving Language Understanding by Generative Pre-Training,旨在论证语言模型的发展应该朝着生成式预训练这个方向发展;GPT-2 的论文题目是 Language models are unsupervised multitask learners ,旨在论证语言模型的学习应该仅依赖于无监督的学习过程;GPT-3 的论文题目是 Language models are few-shot learners,旨在论证语言模型可以像人一样通过简单的样例来学习每个下游任务的行为模式,而这也是我们人类解决问题的方式;InstructGPT 的论文题目是 Training language models to follow instructions with human feedback,旨在论证整个语言模型的训练流程范式。

每一篇论文都代表着一个新的技术,可以说,OpenAI 这4篇论文为整个大模型今后的发展奠定了深厚的基础,它几乎为大模型的训练提供了一个标准化的流程,也就是图7中所示的流程,以至于后续大模型的训练几乎都是在这一框架下进行的,哪怕是有更好的效果也是在这样一个框架下进行的。

你会发现,后续大模型提出时所公开的论文其标题大多数都是 “Technical Report” 这样的描述,可见其影响的深远。

引用#

[1] Ouyang L, Wu J, Jiang X, et al. InstructGPT: Training language models to follow instructions with human feedback[J]. Advances in neural information processing systems, 2022, 35: 27730-27744 .

[2] Touvron H, Martin L, Stone K, et al. Llama 2: Open foundation and fine-tuned chat models[J]. arXiv preprint arXiv:2307.09288, 2023.

[3] Devlin J, Chang M W, Lee K, et al. Bert: Pre-training of deep bidirectional transformers for language understanding[J]. arXiv preprint, 2018, arXiv:1810.04805.

[4] Radford A, Narasimhan K, Salimans T, et al. Improving language understanding by generative pre-training[J]. 2018.

[5] Radford A, Wu J, Child R, et al. Language models are unsupervised multitask learners[J]. OpenAI blog, 2019, 1(8): 9.

[6] Brown T, Mann B, Ryder N, et al. Language models are few-shot learners[J]. Advances in neural information processing systems, 2020, 33: 1877-1901.

[7] Rosset C, Turing-NLG: A 17-billion-parameter language model by Microsoft, Published February 13, 2022.

[8] https://en.wikipedia.org/wiki/Falcon_9_first-stage_landing_tests?utm_source=chatgpt.com

[9] https://zh.wikipedia.org/wiki/强化学习

[10] https://en.wikipedia.org/wiki/Reinforcement_learning_from_human_feedback

阅读 --

10.13 GPT-1模型

经过10.2节和10.6节内容的介绍,我们对基于多头注意力机制的网络模型已经有了深刻的认识。根据10.6节内容可知,BERT模型本质上只是一个基于Transformer编码器的网络结构,它通过多层多头注意力机制来对输入序列进行编码并完成后续 …

4.1 基本概念

在本节中,我们首先介绍了什么是机器学习这一基本概念,并引述了计算机领域中两位大师分别对机器学习一词的定义;然后介绍了机器学习算法中的四种基本分类,即有监督学习、无监督学习、半监督学习和强化学习,并同时介绍了它们之间的区别;最后介绍了机器学习 …