chatGPT预训练模型范例之GPT3系列模型的解密

目录

前言

一、GPT的背景

二、GPT的架构

那么如何实现零样本(zero-shot)学习呢?

这里我们还是主要来看一下 GPT-3 中所谓的 few-/one-/zero- shot 方式分别是什么意思?

三、GPT的应用

四、GPT3的局限性


前言

近年来,预训练模型在自然语言处理领域取得了重要突破,其中GPT系列(Generative Pre-trained Transformer )以其强大的生成能力和泛化性能引起了广泛关注。本文将从GPT系列的背景、架构、GPT3应用和局限性等方面进行浅谈,希望能为大家提供一个全面的了解。

图片

(各个大模型发布时间)

一、GPT的背景

  GPT系列都是OpenAI发布的预训练语言模型(Generative Pre-trained Transformer),其中包含GPT-1,GPT-2,GPT-3,GPT3.5和GPT4。其中,GPT-1是2018年发布的第一代模型,它使用了12个transformer decoder层,共有117M个参数;GPT-2是2019年发布的第二代模型,它使用了48个transformer decoder层,共有1.5B个参数;GPT-3是2020年发布的第三代模型,它使用了175B个参数 。GPT4和GPT3.5都是由OpenAI开发的大规模自然语言生成(NLG)模型,它们可以根据给定的文本输入生成相关的文本输出。GPT4预计将拥有超过100万亿个参数(1e+15),而GPT3只有1750亿个参数(1.75e+11)。 这意味着GPT4可以处理更多的数据,生成更长、更复杂、更连贯、更准确、更多样化和更有创造力的文本。

图片

(GPT系列参数量)

二、GPT的架构

  预训练研究最早起源于迁移学习,其核心思想是基于已有知识学习新知识,将预训练模型应用于解决具体任务。早期预训练模型主要使用有监督数据,如图像领域的ImageNet数据集。通过在ImageNet上预训练的图像分类模型(如ResNet50),可以在新的图像分类任务上实现显著的性能提升。然而,在NLP领域,文本与图像的性质不同,因此需要采用无监督学习方法训练预训练模型。NLP领域尝试使用无监督学习方法来训练预训练模型,这意味着模型在训练过程中不需要大规模有监督的数据集,而是通过学习大量无标注文本数据来捕捉语言的结构和语义信息。在这种情况下,预训练模型如GPT(Generative Pre-trained Transformer)就是 , 其中GPT-1和GPT-2只有解码器, GPT-1:基于 Transformer 架构,在文本生成领域表现突出架构上,GPT-1和 GPT-2 基于 Transformer 架构,但是仅保留了架构中的解码器(Decoder)部分。而GPT-3则是在GPT-2的基础上加入了编码器。

训练步骤上,分为两个阶段:

1)无监督预训练:采用多层 Transformer 模型的解码器为语言模型,进行基于大文本语料库的高容量无监督学习;

2)有监督微调:当下游的问题具有结构化特征,例如有序的句子对或文档、问题和答案的三元组,首先将其转换成特定的序列结构, 再根据针对性的数据集进行微调训练。GPT-1 在自然语言推理、问题回答、语义相似性和文本分类等方面,性能均优于绝大多数相似模型。

  其实,GPT-1模型的核心本质思想是利用大量的无标签文本数据进行预训练,从而学习到丰富的语言知识。预训练阶段,GPT模型通过自监督学习,使用masked language model任务,即预测被遮挡的单词。这样,模型可以在大量文本数据中学习到词汇、语法、句子结构等语言知识。在预训练完成后,GPT-1模型可以通过微调的方法应用于各种下游NLP任务,如文本分类、情感分析、命名实体识别等。预训练技术的优势在于通过统一的机制——即Pretrain + Finetune范式,解决各种自然语言处理任务,在GPT微调阶段,模型使用有标签的数据集进行训练,以便适应特定任务的需求。通过这种预训练和微调的方法,GPT模型可以在多种NLP任务中取得优异的表现。

图片

(Transfomer模型架构)

  GPT-1 首先提出了在无监督的大规模预料上进行预训练,再在下游任务上进行微调的训练范式。至于为什么使用 Transformer 模型,而非 RNN,作者指出:Transformer 模型有更结构化的记忆(more structured memory),能够更好地处理文本中的长距离(long-term)依赖关系,从而能更好地抽取出句子层面和段落层面的语义信息,因此在迁移学习中,Tranformer 学习到的特征更加稳健。在迁移学习时,GPT-1 设计了各种任务相关(task-specific)的输入表示。

  GPT-2在GPT的基础上增加了数据和模型规模,采用了zero-shot学习设定,即在预训练完成后不需要任何下游任务的标注数据进行微调,而是直接进行预测。在方法没有大创新的情况下,通过 “大力出奇迹”,得GPT-2在预训练阶段可以学习到更丰富的语言知识。这种方法的优势在于,模型可以在没有标注数据的情况下解决各种下游任务。这对于那些难以获取标注数据的任务来说,具有很大的实用价值。然而,zero-shot学习设定也存在一定的局限性,如模型可能在某些任务上的性能不如经过微调的模型。

那么如何实现零样本(zero-shot)学习?

图片

(GPT3.5和GPT4零样本学习与精确度关系坐标图)

在GPT-2中,我们要实现零样本学习,即没有任何调整过程。因此,在构造输入时,我们不能使用预训练阶段未出现过的特殊符号。幸运的是,自然语言处理具有很强的灵活性,我们只需将任务需求告诉模型,如果有足够的预训练文本支持,模型应该能理解我们的要求。以机器翻译为例,要使用GPT-2进行零样本机器翻译,只需将输入文本构造为“将英语翻译成中文,[英文文本],[中文文本]”。例如:“将英语翻译成中文,[machine learning],[机器学习]”。 这种做法就是日后鼎鼎大名的 prompt。

图片

这里我们还是主要来看一下 GPT-3 中所谓的 few-/one-/zero- shot 方式分别是什么意思?

如下图所示,GPT-3中的零样本、样本和少样本学习方式与常规微调方式有所不同。

微调方式的小样本学习需要根据给定的下游任务样本和标注构造损失函数,反向传播梯度,更新模型权重,然后进行预测。GPT-3完全没有采用这种方式。

图片

(零样本、样本和少样本学习基本定义)

零样本学习(zero-shot):给定任务描述,如“将英语翻译成法语”,然后直接给出问题,要求模型给出答案。这种方式与GPT-2一致。

样本学习(one-shot):给定任务描述,然后给一个例子,包括问题和答案,如“sea otter => loutre de mer”,之后再给出问题,将整个文本作为输入,要求模型给出答案。这种方式期望模型利用预训练阶段海量的文本数据积累和Transformer的自注意力机制,理解问题和示例,然后仿照示例给出预测。 笔者认为这种方式可行的根本原因是自然语言的灵活性和生成式模型的创造性,使得我们能够直接与模型进行交互,告诉模型要做什么任务和任务示例。在计算机视觉领域,类似的事情似乎很难实现。

少样本学习(few-shot):与样本学习类似,只是给的示例更多。

GPT-3 中的任务设定很惊艳,但是细想之下,也是无奈之举并且也有缺点。一方面,模型规模实在太大,微调来更新权重参数不可行,只好采用 few-shot 的方式。另一方面,模型权重不能更新,每次理解下游任务之后不能保存下来,也就是说每次做同一个下游任务都要给同样的例子。还有,下游任务的示例也不能太多,因为模型可能无法处理过长的输入序列。如果在我们的实际下游任务中确实有不少可供学习的样本,GPT-3 恐怕不是一个好的选择。所以,虽然 GPT-3 能做到的事情似乎听起来更接近 “人工智能”,但是相关的跟进工作并不多。这应该是作者们充分挖掘模型能力,规避模型缺点,扬长避短设计出的任务设定,这种思路值得学习。

三、GPT的应用

这里主要讲讲关于GPT-3在多种自然语言处理任务上表现出色,包括:

1.文本生成:GPT-3在文本生成方面具有很强的能力,可以生成连贯、自然的文本。这使得它在新闻报道、故事创作、诗歌创作等领域具有广泛的应用潜力。例如,新闻机器人可以利用GPT-3生成新闻稿,作家可以使用GPT-3来创作故事或诗歌,提高创作效率。

2.问答系统:GPT-3在问答系统方面表现出色,能够理解用户提出的问题并给出准确的答案。这使得GPT-3在客户服务、教育等场景中具有很大的应用价值。例如,企业可以使用GPT-3构建智能客服系统,提高客户满意度;教育机构可以利用GPT-3开发智能教学辅助工具,帮助学生解答疑问。

3.文本摘要:GPT-3在文本摘要任务上表现优异,能够从原始文本中提取关键信息,生成简洁、准确的摘要。这对于处理大量文本信息、提高阅读效率具有重要意义。例如,研究人员可以利用GPT-3对学术论文进行摘要,快速了解论文主要观点;企业可以使用GPT-3对商业报告进行摘要,提高决策效率。

4.机器翻译:GPT-3在机器翻译任务上表现出强大的能力,可以实现高质量的多语言翻译。这对于跨语言沟通、国际合作具有重要价值。例如,企业可以利用GPT-3进行多语言翻译,促进跨国业务发展;政府可以使用GPT-3提供多语言信息服务,方便国际交流。

5.代码生成:GPT-3在代码生成方面具有很强的能力,可以根据自然语言描述生成相应的代码。这对于提高编程效率、降低开发门槛具有重要意义。例如,软件开发者可以利用GPT-3根据需求描述生成代码,提高开发效率;非专业人士可以使用GPT-3生成简单的代码,实现个性化需求。

四、GPT3的局限性

尽管GPT-3在多个任务上表现出色,但仍存在一些局限性:

一方面,模型规模过大,微调更新权重参数不可行,只能采用少样本学习方式。另一方面,模型权重不能更新,每次理解下游任务后不能保存,每次做同一个下游任务都要给相同的例子。此外,下游任务的示例不能太多,因为模型可能无法处理过长的输入序列。如果实际下游任务中有大量可供学习的样本,GPT-3可能不是最佳选择。

因此,尽管GPT-3能做的事情更接近“人工智能”,但相关跟进工作并不多。充分挖掘模型能力,规避模型缺点,扬长避短设计出的任务设定,这种思路值得学习。

GPT-3作为预训练模型的范例,包括最近爆火的chatGPT背后的GPT3.5都展示了自然语言处理领域的巨大潜力,ChatGPT 是基于 GPT3.5 的基础模型框架,核心变化在于通过真实的调用数据以及人类反馈的强化学习进行训练。ChatGPT3.5 主要用于自然语言处理、机器翻译等任务,而 ChatGPT3.5 拥有更强大的强度,可用于更复杂的语言分析,比如情感分析、语法结构分析。所以,ChatGPT 和 GPT3.5 是同一系列的产品,但 ChatGPT 是在 GPT3.5 的基础上进行了改进和优化。GPT3.5相对于GPT3提升了对话能力、文本能力、图像能力、代码能力、数学运算能力等一系列算法。在某些领域,GPT-4比GPT-3.5更可靠、更有创意,并且能够处理更细微的指令,这对一些行业的公司销售、内容审核和编程业务产生了较大影响。ChatGPT 背后的GPT3.5采用基于人类反馈的强化学习(RLHF)来不断微调预训练语言模型(LLM),旨在让模型能够更好地理解人类的命令和指令含义,如生成小作文、回答知识问题和进行头脑风暴等。该方法不仅让模型学会判断哪些答案是优质的,而且可以确保生成的答案富含信息、内容丰富、对用户有帮助、无害和不包含歧视信息等多种标准。因此,RLHF是一种有效的方法,可以帮助LLM不断提升性能和适应各种用户需求。

然而,对比GPT-4,GPT4可以更准确地解决用户的问题,具有更广泛的常识和解决问题的能力,更具创造性和协作性。可以接受图像作为输入,并生成说明文字、分类和分析答案。还能够处理超过25000个单词的文本,允许长文内容创建、扩展对话以及文档搜索和分析等用例。它的高级推理能力超越了,在大多数专业测试以及相关学术基准评测中,GPT-4的分数高于GPT3。

GPT系列的预训练技术的发展确实推动了人工智能应用的落地。目前,AI技术已从感知智能时代迈向认知智能时代。近期备受关注的Stable Diffusion和ChatGPT等模型在各自领域展示了令人惊艳的效果。我们期待AI技术在未来能够从认知智能时代进入AGI(通用人工智能)时代,为人类带来更多便利和价值。

福利:
包含:Java、云原生、GO语音、嵌入式、Linux、物联网、AI人工智能、python、C/C++/C#、软件测试、网络安全、Web前端、网页、大数据、Android大模型多线程、JVM、Spring、MySQL、Redis、Dubbo、中间件…等最全厂牌最新视频教程+源码+软件包+面试必考题和答案详解。

福利:想要的资料全都有 ,全免费,没有魔法和套路

关注公众号:资源充电吧

点击小卡片关注下,回复:学习

  • 19
    点赞
  • 21
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 3
    评论
ava实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),可运行高分资源 Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

充电君

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值