首页 > 其他分享 >GPT

GPT

时间:2023-03-21 19:56:01浏览次数:26  
标签:训练 模型 微调 任务 GPT 数据

GPT

继 BERT 之后,研究者们注意到了大规模预训练模型的潜力,不同的预训练任务、模型架构、训练策略等被提出。但 BERT 类模型通常存在两大缺点:一是过分依赖有标签数据;二是存在过拟合现象。

GPT1

传统NLP模型面临的两大缺点:

  1. 需要大量标注数据,高质量的标注数据往往很难获得
  2. 根据一个任务训练的模型很难迁移到其他任务

GPT使用了预训练模型,有一下难点:

  1. 无监督学习的优化函数,不同任务有不同的优化目标,没有通用的优化函数
  2. 如何将学习到的文本表示传递到子任务上,nlp的子任务差距较大,没有一致的迁移方式

 

无监督预训练

基于语言模型训练的,给定无标签序列 U={u1, u2, ... un} 最大化下一个词的概率

k为窗口大小,P是条件概率,Φ为模型参数

使用12个transformer解码器堆叠,然后通过全连接得到输出的概率分布

n是层数,We是词嵌入矩阵,Wp是位置嵌入矩阵

有监督微调

得到预训练模型后通过全连接层和softmax得到预测结果,微调目标就是最大化标签概率:

预测标签的概率:

优化目标:

微调时同时使用词预测和序列分类效果更佳

任务相关输入

使用开始符、分割符、终止符用于区分任务

数据集

7000本未发表的书:

  1. 更长的上下文依赖
  2. 因为没发布,所以更能验证泛化能力

规模

12层transformer,每层12个头768维,有约1.17亿参数。
同等级参数下被bert打败。

特点

bert使用非标准的语言模型,使用“完形填空”可看见上下文信息;
gpt使用“预测未来”,只使用上文信息;
相同的语料gpt能获取的信息更少,但是gpt要完成的任务更加困难。

性能

在部分任务上得到了最好结果,比LSTM更加稳定。
GPT-1有很强的泛化能力,能很好的迁移到其他任务中去。
未经微调的模型也有效果但是不显著,GPT-1是简单领域专家,而非通用NLP机器人。

 

 

GPT2

旨在训练一个泛化能力更强的词向量模型,网络架构上在每个self-attention后添加一个Layer Normalization,没有过多的创新。作者认为单一领域数据集上的单一任务训练的流行是当前系统中观察到的缺乏泛化的主要原因。

核心思想

根据上文预测下文可表示为

因此语言模型可表示为
有监督任务可表示为

任何有监督任务都是语言模型的一个子集,当模型的容量非常大且数据量足够丰富时,仅仅靠训练语言模型的学习便可以完成其他有监督学习的任务。

zero-shot

无需修改就可以应用于下游任务,这要求不能使用预训练时没有使用过的符号,如开始、分割、终止符
如:(translate to french, english text, french text) (answer the question, documnet, question, answer) 开头词语为提示符prompt,代替了gpt1中的符号

数据集

名为WebText的Reddit的高赞文章,约800万篇文章,累计40G。

模型参数

  • 同样的字节对编码构建字典,大小50,257
  • 滑动窗口大小512
  • batchsize为512

总结

表现不优异,但是与有监督模型的效果很接近。

GPT-2的最大贡献是验证了通过海量数据和大量参数训练出来的词向量模型有迁移到其它类别任务中而不需要额外的训练。

GPT-2表明随着模型和数据量的增大潜能还能进一步开发。

 

GPT3

GPT-3将模型大小增加到1750亿个参数,在子任务上做微调的代价过大,故在作用到子任务上时不使用任何的梯度更新和微调

预训练模型存在问题

  1. 大量有标签数据用于微调
  2. 微调时使得预训练模型与任务相关数据可能过拟合,当目标任务在微调数据中没出现时泛化性不见得就很好
  3. 人类不需要大量数据用于有监督学习

in-context learning

不进行微调,而是给出<输入 - 标签>示例即可预测。

根据给出的示例数分为:

  • zero shot:只使用无标签数据训练,直接使用得到的模型
  • few shot:每个子任务提供10~100训练样本,但是模型不一定能够处理长序列,所以并不一定比 one shot 好
  • one shot:只有一个子任务样本,不修改模型,而是希望通过自注意力机制使得能够从中抽取信息(GPT3采用)

相应的,每次预测都要先输入一个序列

模型

zhuanlan.zhihu.com/p/350017443

数据集

45TB的训练数据,高达1200万美元的训练费用

局限

  1. 不能很好的生成长文本
  2. 结构和算法的局限性,transformer解码器不能看到下文
  3. 对每个要预测的词都是等权重的,无法分辨是否重要
  4. 没有接触过视频音频等其他领域
  5. 样本有效性,GPT3使用了几乎全网络的文本
  6. 无法解释

总结

在所有任务上取得很好成绩。

 

标签:训练,模型,微调,任务,GPT,数据
From: https://www.cnblogs.com/zhh567/p/17182907.html

相关文章

  • CVPR 2023 | GPT-4与文心一言同台竞技,居然是为了自动驾驶UniAD工作!
    以下文章来源于OpenDriveLab ,作者OpenDriveLa00  前言都说ChatGPT是自然语言处理中技术大魔王,国内百度的文心一言是国内技术一霸,那自动驾驶中的技术魔王,你听过说吗?另外......
  • 使用 ChatGPT 模型实现 JavaScript 加密解密技术
    以下是一个使用ChatGPT模型实现混淆加密解密的案例代码。该代码使用JavaScript编写,并且使用了TensorFlow.js库来加载和执行ChatGPT模型。代码的目的是将输入的文本......
  • 昨天OpenAI GPT-4,今天微软Copilot,轮番上阵碾压谁?
    ​来源:《飞哥说AI》公众号作者|高佳创意|李志飞微软Copilot横扫Office全系产品,正式改名为Microsoft365,其野心昭然。微软全家桶自带AI智能驾驶模式,意味着Windows全AI系列新......
  • steamship上GPT4 API免费用,简单三步无需OpenAI账号
    零、会编程开发的可以用来开发一个GPT4应用,如在线网页或客户端。一、打开steamship网站简单注册自己的账户,操作很快,只账户基础信息。https://www.steamship......
  • GPT-4 来了!GPT-4 介绍与 API 申请
    自从老王接触了ChatGPT后就开始关注OpenAI这个人工智能项目了,前段时间最新的GPT-4架构也推出了,并且开放了申请渠道。本文分享下GPT-4是什么,有哪些更新,以及如何申请......
  • ChatGPT|一文读懂GPT-4!
    前言大家好,今天早上一早醒来,发现各大科技圈公众号平台开始刷屏OpenAI发布的新模型GPT4.0,看这个版本号就已经知道又是一大波特性的更新。于是立马起来开始学习!GPT-4......
  • 如何使用ChatGPT玩游戏
    如果您正在寻找一种有趣且引人入胜的方式来消磨时间,那么绝对应该查看ChatGPT。您只需使用这个OpenAI平台与机器人聊天,就可以玩很多游戏。我们将介绍您可以使用的十大......
  • OpenStack使用ISO镜像安装虚拟机制作镜像模板(本文底稿原创,由ChatGPT润色)
    在OpenStack云平台中,使用ISO镜像安装虚拟机是非常常见的一种方式。本文将介绍如何在OpenStack中使用ISO镜像创建一个虚拟机,并将其制作成模板。第一步,我们需要将ISO镜像上......
  • 基于GPT-2预训练模型chat 演示-代码说明
    基于GPT-2预训练模型chat演示-代码说明代码路径:shibing624/gpt2-dialogbot-base-chinese·HuggingFace代码说明:4.MMI模型训练与生成_哔哩哔哩_bilibili1文本预处理......
  • springboot 接入 ChatGPT
    介绍lucy-chat是接入OpenAI-ChatGPT大模型人工智能的Java解决方案,大模型人工智能的发展是不可阻挡的趋势,我们环境无法创造工具,但是也要更好的使用工具,该包简化了接......