ChatGPT 原来是这样工作的(下)

大家好,上期我们讲到研发人员正在研究解决语言模型中的一致性问题。ChatGPT 使用了人类反馈来指导学习过程,对其进行训练。所使用的具体技术是 RLHF。

那么ChatGPT 是如何利用人类反馈来解决一致性问题的呢? 今天我们就接着来讲一讲。

从人类的反馈中进行强化学习 Reinforcement Learning from Human Feedback

方法总体包括三个不同的步骤:

有监督的调优

预训练的语言模型在相对少量的已标记数据上进行微调,用以学习给定提示列表生成输出的监督策略(即SFT模型) 也就是基线模型(Baseline Model)。

模拟人类偏好

标注者们对相对大量的 SFT 模型输出进行投票,通过这种方式创建一个由比较数据组成的新数据集。在此数据集上训练新模型,这被称为训练奖励模型(Reward Model,RM);

近端策略优化(PPO)

训练奖励模型用于进一步微调和改进SFT模型。这一步骤的输出结果就是所谓的策略模型(Policy Model).

步骤1只进行一次,而步骤2和步骤3可以重复迭代:在当前最佳策略模型上,收集更多的比较数据,用于训练新的奖励模型,然后训练新的策略。


下面我们分别对每一步进行讲解:

步骤1:监督调优(SFT)模型

第一步是收集数据,用来训练监督策略模型,即SFT模型。

数据收集:标注人员按要求,选择提示列表中预期的输出项。对于 ChatGPT,使用了两种不同的提示来源:一些是直接使用标注人员或研发人员准备的,另一些是从 OpenAI 的 API 请求中(即从 GPT-3 用户那里)获取的。虽然整个过程费时且消耗很大,但得到的结果是相对较小且高质量的数据集(大概有 12-15k 个数据点),可用于调优预训练的语言模型。

模型选择:ChatGPT 的开发人员选择了 GPT-3.5 系列的预训练模型,代替了对原始 GPT-3 模型进行调优。主要是由于其使用的基线模型是最新版的 text-davinci-003,GPT-3模型,主要在编程代码方面进行了调优。

因此,为了创建像ChatGPT这样的通用聊天机器人,开发人员决定在“代码模型”之上进行调优而不是纯文本模型。

由于此步骤的数据量有限,在此过程获得的SFT模型可能输出的文本仍有一定概率不太受用户关注,并且通常会出现不一致的情况。这里的问题是监督调优学习的可扩展性成本很高

为了克服这个问题,使用的策略是让人工标注者对SFT模型的不同输出进行排序,以创建奖励模型,而不是要求人工标注者创建一个更大的精选数据集,这是一个缓慢且代价很高的过程。


步骤2:奖励模型(RM)

这一步的目标是直接从数据中学习目标函数。该函数的目的是根据人类的期望程度,对 SFT 模型输出结果进行评分。这强烈地反映了人类标注者的具体偏好及他们共同遵循的准则。最后,这个过程将从数据中得到一个可以自动模仿人类偏好的系统

它的工作原理是:

选择提示列表,SFT模型为每个提示生成多个输出(介于4和9之间)。

标注者将输出结果从最好到最差排序。结果是一个新的按标签排序的数据集。该数据集的大小大约是SFT模型所用精选数据集的10倍。

新数据用于训练奖励模型(RM)。该模型将SFT模型的输出结果作为输入,并按优先顺序对其进行排序。

对于标注者来说,对输出进行排序要比从头开始打标注要容易得多,这个过程可以更有效地扩展。实际上,这个数据集是从30-40k个提示中,选择生成的,并且在排序阶段会向每个标注者显示不同的数据组合输出。


步骤3:近端策略优化(PPO)

强化学习被应用于通过优化训练奖励模型来调优 SFT 策略。所使用的特定算法称为近端策略优化(PPO),而调优模型称为近端策略优化模型。

什么是 PPO?该算法的主要特点如下:

PPO 是一种用于在强化学习中训练代理 的算法。它被称为「on-policy」算法,因为它直接学习和更新当前策略,而不是像 DQN 的「off-policy」算法那样从过去的经验中学习。这意味着PPO正在根据代理人所采取的行动和所收到的奖励,不断的调整策略;

PPO 使用信任域优化方法来训练策略,这意味着它将策略的变化限制在与前一策略的一定范围内,以确保稳定性。这与其它策略梯度方法不同,后者有时会对策略进行大规模更新,从而破坏学习的稳定性;

PPO 使用价值函数,来估计给定状态或操作的预期返回。价值函数用于计算优势函数,它代表预期回报和当前回报之间的差异。然后,通过比较当前策略采取的操作与前一个策略本应采取的操作,使用优势函数更新策略。这使 PPO 可以根据所采取行动的预估值,对策略进行更智能的更新。

在这一步中,PPO 模型经由 SFT 模型初始化,且价值函数经由奖励模型初始化。该环境是一个「bandit environment」,它会产生随机显示提示, 并期望对提示做出响应。给出提示和响应后,它会产生奖励(由奖励模型决定)。SFT 模型会对每个 token 添加 KL 惩罚因子,以免奖励模型的过度优化。


性能评估 Performance Evaluation

因为模型是根据人工标注的输入进行训练的,所以评估的核心部分也基于人工输入的。也就是说通过让标注者对模型输出的质量评分来实现的。为避免训练阶段标注者判断的过度拟合,测试集使用了未在培训数据中体现的,来自其它 OpenAI 用户的提示。

该模型基于三个标准进行评估:

有用性:判断模型遵循用户指令以及推断指令的能力。

真实性:判断模型在封闭领域任务中有产生虚构不存在事实的倾向。

无害性:标注者评估模型的输出是否适当,是否包含诋毁受保护的类别,或者包含歧视的内容。该模型也有衡量偏见和毒性内容的数据集。

该模型还针对传统 NLP 任务(如问答、阅读理解和摘要)的零样本学习性能进行了评估,开发人员发现,其中有一些比 GPT-3 要差一些,这是一个「Alignment Tax」的例子,其中基于RLHF的校准程序,是以降低某些任务的性能为代价的。

这些数据集的性能回归可以通过称为预训练混合的技巧大大减少:在 PPO 模型培训期间,经由梯度下降训练,通过混合 SFT 模型和 PPO 模型的梯度来更新梯度计算。


方法的缺点 Shortcomings of the methodology

该方法的一个非常明显的局限性是,在使语言模型与人类意图保持一致的过程中,用于调优的模型数据会受到各种复杂的主观因素的影响,主要包括:

生成 demo 数据的人工标注者的偏好;

设计研究并编写标签说明的研究人员

由开发人员编写或由OpenAI客户提供的可选的提示。

在模型评估中,奖励模型培训时所包含的标注者偏差(通过排名输出)

特别是ChatGPT作者指出的一个明显的事实,即参与培训过程的标注人员和研发人员,可能并不代表语言模型的所有潜在最终用户。


除了这一明显的「内生」限制之外,该方法还有的一些其它缺点和需要解决的问题:

缺乏对照研究

比较数据缺乏基本事实

人类的偏好并不一致

奖励模型(RM)的即时稳定性测试

其它问题

好了ChatGPT的原理就讲到这里了,相信随着算法的不断进步,ChatGPT也会发展的更先进,更贴近我们对人工智能的需要,未来会在越来越多的领域实际应用。


--END--

大家如果有想讨论的内容,欢迎留言!关注我,请帮忙点赞分享,您的支持是我们最大的动力!

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 204,189评论 6 478
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 85,577评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 150,857评论 0 337
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,703评论 1 276
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,705评论 5 366
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,620评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,995评论 3 396
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,656评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,898评论 1 298
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,639评论 2 321
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,720评论 1 330
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,395评论 4 319
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,982评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,953评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,195评论 1 260
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 44,907评论 2 349
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,472评论 2 342

推荐阅读更多精彩内容

  • ChatGPT 发布以来,蹿红的速度比马斯克设计的火箭还快。据报道,ChatGPT在开放试用的短短几天里,就吸引了...
    城北楠哥阅读 338评论 0 0
  • 关于ChatGPT的一些解读 阅读蕴藏着无尽可能,有益于明理、增信、崇德、力行,让人生绽放光彩。 在近10 年 A...
    醉爱琳儿阅读 216评论 0 0
  • ChatGPT技术报告 ChatGPT是一个由OpenAI开发的大型语言模型,是GPT(Generative Pr...
    keeeeeenon阅读 739评论 0 1
  • hi,我是熵减,见字如面。 本文是关于ChatGPT 背后核心技术实现的一个通俗白话版,不涉及到的AI具体实现的技...
    熵减黑客阅读 263评论 0 1
  • 简介 2022年11月,OpenAI推出了一款AI聊天机器人程序,其强大的问答能力瞬间引爆全网关注度。 组成部分:...
    臻甄阅读 1,709评论 0 0