关于机器学习:Generative-AI-新世界文本生成领域论文解读

1次阅读

共计 7719 个字符,预计需要花费 20 分钟才能阅读完成。

在上一篇《Generative AI 新世界:过来、当初和将来》中,我做为一名已经屡次穿梭过市场周期的从业者,对 Generative AI 的倒退历程、目前的热点方向、以及对将来的畅想做了一个梳理,心愿能够帮忙大家理清这个新周期的一些底层逻辑,例如常识底座、利用蓝图、以及倒退方向和潜在时机等方面的内容。

亚马逊云科技开发者社区为开发者们提供寰球的开发技术资源。这里有技术文档、开发案例、技术专栏、培训视频、流动与比赛等。帮忙中国开发者对接世界最前沿技术,观点,和我的项目,并将中国优良开发者或技术举荐给寰球云社区。如果你还没有关注 / 珍藏,看到这里请肯定不要匆匆划过,点这里让它成为你的技术宝库!

就在我在筹备这个专题系列的下一篇内容时,就在这个月,一个更酷炫的“学霸”型文本生成模型 GPT-4 正式公布了!依据 GPT-4 的官网技术报告,这个“学霸”型文本生成模型曾经能够以各种炫技高分通过各种标准化考试了。例如:

  • GRE Verbal:靠近满分
  • 律师入学考试 LSAT (Law School Admission Test):进入前 10% 左右
  • 律师执照考试 UBE (Uniform Bar Exam):进入前 10% 左右
  • SAT Reading & Writing:进入前 7%
  • SAT Math:进入前 10% 左右
  • ……

Source:https://cdn.openai.com/papers/gpt-4.pdf?trk=cndc-detail

技术报告中还举例展示了 GPT-4 的具体解题剖析过程,例如用户间接给一张考试题的照片,让 GPT-4 一步步思考作答。如下图所示:

GPT-4 模型看图之后,一板一眼地解答如下:

对于 GPT-4 更多细节,咱们还会在本文的第四节中更具体地做出介绍。

文本生成

文本生成(Text Generation)畛域的提高真堪称是突飞猛进。为了更好这个畛域的这些激动人心的技术提高,让咱们一起来深刻探索下文本生成畛域的次要几篇论文:InstructGPT,RLHF,PPO,GPT-3,以及 GPT-4。

1 InstructGPT 论文概述

咱们将以一个文本生成(Text Generation)的经典论文(InstructGPT)来解读目前在该畛域的 SoTA 模型结构设计和训练方法。

Paper Source: https://arxiv.org/pdf/2203.02155.pdf?trk=cndc-detail

咱们先来看看 InstructGPT 论文的摘要。

这张图片显示了我通读这篇论文摘要时的一些评论和笔记。

我记录的次要大纲是:

  1. 论文的总体想法(Fine-tune human feedback)
  2. 他们是如何收集数据集的?(收集了问题和答案)
  3. 他们如何微调数据集?(在 GPT-3 上有监督式学习)
  4. 他们为什么称之为“InstructGPT”?(在人工评估中 …)
  5. 后果(只有 GPT-3 的 1% 模型参数然而 InstructGPT 的后果更好)

InstructGPT 的论文共有 68 页,我想重点介绍的亮点是:来自人类反馈的强化学习(简称为 RLHF)。

2020 年的论文“Learning to summarize with human feedback”,能够认为是最早开始钻研 RLHF 的论文之一,曾经开始钻研探讨 GPT-3 和 RLHF 的联合:

Source: https://arxiv.org/abs/2009.01325?trk=cndc-detail

1.1 RLHF 的训练过程

RLHF 的训练过程能够合成为三个外围步骤:

  • 步骤一:预训练语言模型:采纳有监督的策略微调
  • 步骤二:收集数据并训练处分模型
  • 步骤三:通过强化学习微调 LM

首先,咱们将理解这三个步骤别离须要的数据集起源、数据集大小等重要信息。为什么要先去剖析这三个大步骤中的数据集起源呢?

东方有句驰名的谚语:“The devil is in the details.”翻译成中文就是:“魔鬼藏在细节里”。在人工智能畛域里,优质的数据和数据起源,在同样的钻研办法的作用下,后果可能相差很大,即:差一点,差很多。

因而,对于数据起源的钻研,在我浏览论文中习惯里,是我最提前关注器重的局部之一。

  • Paper Source: https://arxiv.org/pdf/2203.02155.pdf?trk=cndc-detail
  • RLHF (Reinforcement Learning from Human Feedback):https://huggingface.co/blog/rlhf?trk=cndc-detail

1.2 训练数据的起源

1/ SFT 数据集:

  • 数据集大小:13K
  • 这个数据集是由 [Prompt, Text] 对组成的样本。数据一部分来自应用 API 提交的用户数据,另一部分来自专门的标注人员(Labeler)。

2/ RM 数据集:

  • 数据集大小:33K
  • 先让模型生成一批候选文本,而后通过标注人员(Labeler)依据生成数据的品质对这些生成内容进行排序打分作为 RM 模型的标注。

3/ PPO 数据集:

  • 数据集大小:31K
  • PPO 数据没有进行人工标注,它均来自用户通过 API 提交的数据。这里有不同用户提供的不同品种的工作,其中占比最高的包含生成工作(45.6%),问答(12.4%),头脑风暴(11.2%),对话(8.4%)等等。

1.3 训练阶段一:预训练语言模型上的策略微调

数据起源

用于训练处分模型的 Prompt 数据个别来自于一个事后的数据集,比方某个 LLM 模型的 Prompt 数据则次要来自那些调用 GPT API 的用户。这些 prompts 会被丢进初始的语言模型(步骤一的模型)里来生成文本。

训练方法

如图所示。首先,咱们须要选一个经典的预训练语言模型作为初始模型。OpenAI 在其第一个 RLHF 模型 InstructGPT 中用的小规模参数版本的 GPT-3。这些语言模型往往见过大量的 [Prompt, Text] 对,输出一个 prompt(提醒),模型往往能输入还不错的一段文本。

Source: https://arxiv.org/pdf/2203.02155.pdf?trk=cndc-detail

预训练模型也能够在人工精心撰写的语料上进行微调,但这一步不是必要的。例如,OpenAI 在人工撰写的优质语料上对预训练模型进行了微调。不过,这种人工撰写的优质语料个别老本是十分高的。

人工微调的大抵操作是:在数据集中随机抽取问题,由专门的标注人员给出高质量答案,而后用这些人工标注好的数据来微调模型。标注人员依据提醒 (prompt) 编写品质牢靠的输入响应 (demonstrations)。这里采纳的是 Supervised Fine-Tuning(SFT)模型,即有监督的策略来进行微调。微调之后,模型在遵循指令 / 对话方面失去优化,但不肯定合乎人类偏好。

Source: https://huggingface.co/blog/rlhf?trk=cndc-detail

第一步实现之后,咱们须要基于这个初始语言模型产出的数据来训练一个 处分模型(reward model,简称 RM)。接下来,就会引入人类的反馈信号了。

1.4 训练阶段二:训练处分模型(Reward Model)

训练一个处分模型(RM)的指标是让模型的输入在人类看来体现不错。即,输出是一个 prompt(模型生成的文本),输入是一个代表文本品质的标量数字。

Source: https://arxiv.org/pdf/2203.02155.pdf?trk=cndc-detail

数据起源:

用于训练处分模型的 Prompt 数据个别来自于一个事后的数据集,OpenAI 的 Prompt 数据则次要来自那些调用 GPT API 的用户。这些 prompts 会被丢进初始的语言模型(步骤一的模型)里来生成文本。

训练方法

如下图所示,标注人员的工作则是对初始语言模型生成的文本进行排序。说到这里有人可能会问:为啥不间接让标注人员对文本进行打分呢?

Source: https://huggingface.co/blog/rlhf?trk=cndc-detail

这是因为钻研人员发现不同的标注员,因为其教育背景、生存经历和家庭环境等的不同,打分的偏好会有很大的差别,而这种差别就会导致呈现大量的噪声样本。若改成标注排序,则发现不同的标注员的打分一致性就大大晋升了。

接下来,再应用这个排序后果来训练处分模型。对于多个排序后果,两两组合,造成多个训练数据对。处分模型(Reward Model)承受输出后,给出评估答复品质的分数。对于一对训练数据,通过调节参数使得高质量答复的打分比低质量的打分要高。处分模型学会了为评分高的响应计算更高的处分,为评分低的答复计算更低的处分。

1.5 训练阶段三:通过强化学习微调大模型

这一阶段整体采纳强化学习(Reinforcement Learning)形式,应用在阶段二里训练好的处分模型(Reward Model)做为该强化学习的处分模型,通过 PPO 算法优化模型策略。PPO(Proximal Policy Optimization,近端策略优化)是一种用于在强化学习中训练 agent 的策略,这里被用来再次微调在阶段一中提及的有监督微调(SFT)大模型。

Source: https://arxiv.org/pdf/2203.02155.pdf?trk=cndc-detail

这一阶段利用第二阶段训练好的处分模型,靠处分模型打分来更新预训练模型参数。在数据集中随机抽取问题后,应用 PPO 模型生成答复,并用上一阶段训练好的 RM 模型计算处分,给出品质分数,而后用这个处分来持续更新 PPO 模型。处分顺次传递,由此产生策略梯度,通过 强化学习的形式更新 PPO 模型参数。但这次和阶段二不同的中央是:这次不再让人类来打分排序,而是让阶段二训练好的处分模型去给模型的预测后果进行打分排序。

Source: https://huggingface.co/blog/rlhf?trk=cndc-detail

就这样,应用一个初始的语言模型来生成文本,以及应用一个处分模型来判断模型生成的文本是否优质(投合人类偏好)。如此一直反复第二和第三阶段,通过迭代会训练出更高质量的 InstructGPT 模型。咱们将来自于 人类反馈的强化学习简称为 RLHF(reinforcement learning from human feedback),即应用人类的偏好作为处分信号来微调模型。

就这样,应用一个初始的语言模型来生成文本,以及应用一个处分模型来判断模型生成的文本是否优质(投合人类偏好),而后一直生成、评估、优化,如此循环进行。简略来说,就是机器代替人类做排序的工作。这是一个十分重要的提高。

2 PPO 论文概述

Proximal Policy Optimization(PPO)是 Actor-Critic 的升级版,利用 KL 间隔(通过一系列近似化简的模式形容,理论实质上是概率分布的差别)来动静掂量学习率是否过大。

PPO paper: https://arxiv.org/pdf/1707.06347.pdf?trk=cndc-detail

在前一章节中,咱们提到了 InstructGPT 在 RLHF 训练的阶段三,是通过 PPO 算法进一步优化策略模型的。InstructGPT 在论文中,有更具体地形容他们是如何应用 PPO 算法的形容,如下图所示:

Source – InstructGPT paper: https://arxiv.org/pdf/2203.02155.pdf?trk=cndc-detail

一句话概括,PPO 算法提出的一种解决 Policy Gradient 不好确定动作幅度的问题。因为如果动作幅度过大,机器人会重复横跳,不易收敛;但如果动作幅度太小,想要实现训练,那就得等到天荒地老。PPO 利用 New Policy 和 Old Policy 的 KL 间隔,限度了 New Policy 的更新幅度,如果 KL 间隔过小,就让 KL 正则项的权重减小,让机器放开膀子大胆干;如果 KL 间隔过大,就让 KL 正则项权重增大,让机器收紧步调悠着点。

举一个爬山的例子来类比。咱们人类爬山的时候,在抉择下一步时,在较平安的靠近高山的区域,咱们会放心大胆地步子迈大一些;而在一些比拟平缓有危险的区域时,咱们会尽量悠着点。PPO 算法我集体了解就是利用了人类的这种思维。

因为 Generative AI 的这波浪潮,咱们预计强化学习(Reinforcement Learning)畛域也会引发一波学习浪潮。如果您想在实践中更好地认知强化学习实践,包含 PPO 算法的一些实际细节,您能够应用亚马逊云科技的 DeepRacer 服务。如下图所示:

亚马逊云科技 DeepRacer 简介:https://aws.amazon.com/cn/deepracer/?trk=cndc-detail

在亚马逊云科技的 DeepRacer 服务中,缺省的训练算法就是 PPO。如下图所示:

3 GPT-3 论文概述

如果您对 GPT-3 十分感兴趣,您还能够参考 GPT-3 的次要论文。不过须要提醒您的是,对于 GPT-3 的模型有不少,其参数从 1B 到 175B 不等。因而其 GPT-3 相干的论文最次要的也有五篇,如图所示:

Papers of GPT-3: https://platform.openai.com/docs/model-index-for-researchers?…

另外,如果您是一位刚开始学习机器学习不久的新人,如果一开始就浏览 GPT-3 的论文的话,会十分吃力。GPT 的很多架构细节是在 GPT-1、GPT-2 中探讨的。所以我建议您的学习路线会是:Transformer -> GPT -> GPT-2 -> GPT-3。

以下对基于 GPT-3 模型的倒退路线,做一个大抵的梳理。总体而言分为以下两个倒退路线:

  • 代码 / 推理方向(例如:Codex)
  • 了解人类偏好方向(例如:InstructGPT)

3.1 代码 / 推理方向:GPT-3 + 代码训练

代码 / 推理方向的倒退工夫线如下:

  1. 2020 年 5-6 月,GPT-3 论文“Language Models are Few-Shot Learners”;
  2. GPT-3 的最大规模的版本,1750 亿参数的 API Davinci,此时的 GPT-3 还只能写一些简略的代码和做一些简略的数学题;
  3. 2021 年 7 月,Codex 论文“Evaluating Large Language Models Trained on Code”,其中初始的 Codex 是依据 120 亿 参数的 GPT-3 变体进行微调的,且通过对 159GB 的 Python 代码进行代码训练,它开始具备较强的代码 / 推理能力。

该方向的次要论文有:Codex 等。

3.2 了解人类偏好方向:GPT-3 + 指令学习 + RLHF

了解人类偏好方向的倒退工夫线如下:

  1. 2020 年论文“Learning to summarize with human feedback”,开始钻研 GPT-3 和 RLHF 的联合;
  2. 2022 年 3 月,遵循人类指令学习的论文“Training language models to follow instructions with human feedback”公布,即是后面咱们介绍的 InstructGPT 论文;

该方向的次要论文有:InstructGPT 等。

4 GPT-4 论文概述

2023 年 3 月 GPT-4 也正式以 Model as a Service 的形式在对外提供服务。以下依据其提供的一些技术报告,以及其它第三方的材料,对 GPT-4 模型做概述如下。

Source:https://cdn.openai.com/papers/gpt-4.pdf?trk=cndc-detail

GPT-4 是一个大型多模态模型(输出图像和文本,输入文本输入)。其中 GPT 是生成式预训练模型的缩写。大型多模态模型能够宽泛用于对话零碎、文本摘要和机器翻译。

GPT-4 实际上是在 2022 年 8 月实现训练的,直到 2023 年 3 月 14 日才公布。在公布之前,始终在对该模型进行对抗性测试和改良。GPT-4 的内容窗口能反对多达 32,000 个 token(相当于 24000 单次或 48 页文本),如下图所示:

Source: https://lifearchitect.ai/gpt-4/?trk=cndc-detail

比拟乏味的是 GPT-4 曾经能看懂一些图梗了,不仅仅只是善于做对话机器人。以下图为例,输出一张由三张图片拼成的图,用户问:“这张图有什么奇怪的中央?请一张图一张图地形容”。

GPT-4 会别离形容每张图 中出现的现象内容,并指出 图中把一个大而过期的 VGA 接口插入一个玲珑的古代智能手机充电端口 是件幽默滑稽的事件

Source:https://cdn.openai.com/papers/gpt-4.pdf?trk=cndc-detail

以及在各类考试畛域曾经展现出“学霸”或者“考试小王子”的后劲:

  • SAT: 1410/1600 (94th percentile, top 6%).
  • Uniform Bar Exam (MBE+MEE+MPT): 298/400 (90th percentile, top 10%).
  • AP: Advanced Placement high school exams in biology, calculus, macroeconomics, psychology, statistics and history: 100% (5/5).
  • MMLU: 86.4% (previous SOTA=75.5% for Flan-PaLM).

Source: https://lifearchitect.ai/gpt-4/?trk=cndc-detail

GPT-4 甚至能够可能读懂一些来自人类的风趣漫画深层次的外延,这一点的确让我感到有些意外和惊喜。以下示例是让 GPT-4 解释这张漫画。GPT-4 认为它讥刺了统计学习和神经网络在进步模型性能方面的差别。

Source: https://cdn.openai.com/papers/gpt-4.pdf?trk=cndc-detail

更多对于 GPT-4,以及其它文字生成畛域 State-of-the-art 的论文解读,咱们也会严密跟进这个畛域的新变动和新进展,将来和大家一起探讨解读。

在下一篇内容中,咱们还将通过三个对于大语言模型(LLMs)部署、编译优化、分布式训练等方面的入手实际案例,具体探讨亚马逊云科技在为反对这些大语言模型(LLMs)的编译优化、分布式训练等方面的停顿和奉献,敬请期待。

请继续关注 Build On Cloud 微信公众号,理解更多面向开发者的技术分享和云开发动静!

往期举荐

开发者生态

架构模型最佳实际

亚马逊的开源文化

作者黄浩文
亚马逊云科技资深开发者布道师,专一于 AI/ML、Data Science 等。领有 20 多年电信、挪动互联网以及云计算等行业架构设计、技术及守业治理等丰盛教训,曾就任于 Microsoft、Sun Microsystems、中国电信等企业,专一为游戏、电商、媒体和广告等企业客户提供 AI/ML、数据分析和企业数字化转型等解决方案咨询服务。

文章起源:https://dev.amazoncloud.cn/column/article/641c329888a71363110…

正文完
 0