ChatGPT背后的工作原理
介绍
- ChatGPT是OpenAI发布的最新语言模型,能以不同样式、不同目的生成文本,并且在准确度、叙述细节和上下文连贯性上具有更优的表现。
- OpenAI使用监督学习和强化学习的组合来调优ChatGPT,其中的强化学习组件使ChatGPT独一无二。OpenAI使用了「人类反馈强化学习」(RLHF)的训练方法,该方法在训练中使用人类反馈,以最小化无益、失真或偏见的输出。
GPT-3
非一致模型,基于来自互联网的大量文本数据进行训练,能够生成类似人类的文本,但它们可能并不总是产生符合人类期望的输出。它们的目标函数是词序列上的概率分布,用来预测序列中的下一个单词是什么。一致性问题表现为:
- 提供无效帮助:没有遵循用户的明确指示。
- 内容胡编乱造:虚构不存在或错误事实的模型。
- 缺乏可解释性:人们很难理解模型是如何得出特定决策或预测的。
- 内容偏见有害:一个基于有偏见、有害数据训练的语言模型可能会在其输出中出现这种情况,即使它没有明确指示这样做。
语言模型训练策略
- Next-token-prediction
- masked-language-modeling
一般来说,这些训练策略可能会导致语言模型在一些更复杂的任务中出现不一致,因为一个仅被训练来预测文本序列中的下一个词的模型可能不一定会学习其含义的某些更高级表征。因此,该模型很难推广到需要对语言更深入理解的任务。
RLHF
ChatGPT 基于最初的 GPT-3 模型,但为了解决模型的不一致问题,使用了人类反馈来指导学习过程,对其进行了进一步训练。方法总体上包括三个不同步骤:
- 有监督的调优:预训练的语言模型在少量已标注的数据上进行调优,以学习从给定的 prompt 列表生成输出的有监督的策略(即 SFT 模型);
- 模拟人类偏好:标注者们对相对大量的 SFT 模型输出进行投票,这就创建了一个由比较数据组成的新数据集。在此数据集上训练新模型,被称为训练回报模型(Reward Model,RM);
- 近端策略优化(PPO):RM 模型用于进一步调优和改进 SFT 模型,PPO 输出结果是策略模式。
步骤 1 只进行一次,而步骤 2 和步骤 3 可以持续重复进行:在当前最佳策略模型上收集更多的比较数据,用于训练新的 RM 模型,然后训练新的策略。
监督调优模型
- 数据收集:选择一个提示列表,标注人员按要求写下预期的输出。对于 ChatGPT,使用了两种不同的 prompt 来源:一些是直接使用标注人员或研究人员准备的,另一些是从 OpenAI 的 API 请求(即从 GPT-3 用户那里)获取的。虽然整个过程缓慢且昂贵,但最终得到的结果是一个相对较小、高质量的数据集(大概有 12-15k 个数据点),可用于调优预训练的语言模型。
- 模型选择:GPT-3.5 系列中的预训练模型,text-davinci-003
这里的问题是监督学习步骤具有高可扩展性成本。
为了克服这个问题,使用的策略是让人工标注者对 SFT 模型的不同输出进行排序以创建 RM 模型,而不是让人工标注者创建一个更大的精选数据集。
训练回报模型
这一步的目标是直接从数据中学习目标函数。该函数的目的是为 SFT 模型输出进行打分,这代表这些输出对于人类来说可取程度有多大。这强有力地反映了选定的人类标注者的具体偏好以及他们同意遵循的共同准则。最后,这个过程将从数据中得到模仿人类偏好的系统。
- 选择 prompt 列表,SFT 模型为每个 prompt 生成多个输出(4 到 9 之间的任意值);
- 标注者将输出从最佳到最差排序。结果是一个新的标签数据集,该数据集的大小大约是用于 SFT 模型的精确数据集的 10 倍;
- 此新数据用于训练 RM 模型 。该模型将 SFT 模型输出作为输入,并按优先顺序对它们进行排序。
对于标注者来说,对输出进行排序比从头开始打标要容易得多,这一过程可以更有效地扩展。
PPO模型微调SFT模型
强化学习被应用于通过优化 RM 模型来调优 SFT 模型。近端策略优化(PPO),近端策略优化模型。 PPO 可以根据所采取行动的估计价值对策略进行更明智的更新。PPO 模型由 SFT 模型初始化,价值函数由 RM 模型初始化。该环境是一个「bandit environment」,它会产生随机 prompt 并期望对 prompt 做出响应。对于给定的 prompt 和响应,它会产生相应的回报(由 RM 模型决定)。SFT 模型会对每个 token 添加 KL 惩罚因子,以尽量避免 RM 模型的过度优化。
局限性
- 会受到各种错综复杂的主观因素的影响
- 缺乏对照研究
相关论文
- Training language models to follow instructions with human feedback(https://arxiv.org/pdf/2203.02155.pdf) InstructionGPT
- Learning to summarize from Human Feedback (https://arxiv.org/pdf/2009.01325.pdf) RLHF
- PPO(https://arxiv.org/pdf/1707.06347.pdf) PPO
- Deep reinforcement learning from human preferences (https://arxiv.org/abs/1706.03741)
Original link: http://example.com/2023/02/22/About-ChatGPT/
Copyright Notice: 转载请注明出处.