位置: IT常识 - 正文

一文讲清chatGPT的发展历程、能力来源和复现它的关键之处(一文讲清资产负债表中各个项目的来龙去脉)

编辑:rootadmin
一文讲清chatGPT的发展历程、能力来源和复现它的关键之处 1. ChatGPT是什么

推荐整理分享一文讲清chatGPT的发展历程、能力来源和复现它的关键之处(一文讲清资产负债表中各个项目的来龙去脉),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:一文讲清三家分晋,一文讲清中美芯片博弈形势,一文讲清通便药,一文讲清中药通便药,一文讲清便秘药,一文讲清:土方量计算,一文讲清中药通便药,一文讲清汇算补缴或退了企业所得税的账务处理,内容如对您有帮助,希望把文章链接给更多的朋友!

chatGPT是什么?这可能是最近被问的最多的一个。

大家第一反应这应该是GPT系列的一个最新模型,普通大众可能更愿意把它看做是一个人工智能。实际上,它其实就是一个基于大规模语言模型的对话系统产品。官网对它定义十分的明确:Optimizing Language Models for Dialogue.

最大的问题在于,它的背后究竟是一个什么?很多人都以为,chatGPT是一个单一模型,就如同GPT-1/2一样,应该是一个可以被加载和训练的。我承认,chatGPT的背后,是有一个像GPT-3一样的基础模型,但是其现在的性能表现,远远不是只有1个基础模型这么简单。因为我们默认的chatGPT是web UI界面,它至少是有一些外部工程代码的。举个例子,对于汉语和英语的反馈速度有质的差别,如果只是单一的模型统一编码了多语言,不会出现这种情况。

因此,对我而言,chatGPT更像是一个完善的产品,而不是一个简单的模型。而且由于其训练过程的复杂和不透明,使得我们很难复现它。这在我后面的章节中会讲到。

2. ChatGPT以及GPT系列模型

ChatGPT不是一蹴而就突然出现的,它是有着长达5年以上的技术积累才走到这个地步的。之前网上讲了很多关于ChatGPT和它的前辈,比如比较出名的有拆解追溯GPT-3.5各项能力的起源。但是我认为真正需要了解ChatGPT的前世今生,还是需要去看openAI官方网站以及它们的论文。

2.1 GPT-1/2/3

首先我们先来看GPT-1到GPT-2以及GPT-3的变化。首先在2018年6月,发布了第一版GPT-1,使用的是transformer的decoder架构+任务微调的形式,但是整体上似乎没有什么特别出彩的地方。然后再到2019年2月,发布了第二版GPT-2,这时候他们优化了网络架构(如右图所示),并且使用了10倍大小的网络规模和8倍大小的预训练数据,并且去除了特定任务微调的形式从而获取prompt learning的能力。GPT-2确实有点东西,但是由于3个月前,BERT的出现,让它也没有当上一哥的位置。不过整体上应该接近后来的GPT-3系列模型了。 在GPT-2的1年半以后,GPT-3发布了,它同样还是3个路线,更优的架构,更大的规模(100倍),更大的数据量(1000倍),真正训练出了一个超级巨无霸GPT-3。奠定了现在GPT帝国的基础。但是实际上,它和GPT-2没有太多本质的区别,包括训练方式,只是更大了。

那么GPT-3有多大呢,大家可以看一下下面的图就可以知道了,需要注意的是,这里看到参数量的改变是一个log指数,可以看到熟悉的Bert-large模型和GPT-2模型。而GPT-3的175B按照官方说明,大概有350~500GB的显存需求,如果使用FP16加载该模型,大概需要至少5块A100(80G)才能够加载完成。而如果要从头开始训练,至少需要1000块A100才能够在可接受的时间(几个月)里训练出该模型。

据传闻说,现在国内的大部分大规模语言模型还是处于GPT-2.5阶段,也就是说对标的是GPT-3,但是训练规模(1-10B)和数据量(几十G左右)还是在GPT-2的级别上。无论是模型规模还是语料质量,距离GPT-3都还有较大差距。需要注意的是,从GPT-3开始,其模型就不再完全公开了,只能通过API访问。

2.2 GPT-3.5 (InstructGPT)

然后我们再来看GPT3以后发生的事情。首先我们需要先介绍一下GPT-3以后最重要的一件事,那就是InstructGPT的出现,根据openAI官方网站上说明,InstructGPT包含三种训练方式,分别是有监督微调(Supervised Fine-Tuning, SFT),反馈变得更容易(Feedback Made Easy, FeedME)以及基于PPO算法的从人类反馈中进行强化学习(PPO)三个部分。因此,可以说,InstructGPT泛指的话,是包含红色的所有模型,而特指的话,则是指的davinci-instruct-beta。这一点尤为重要。至于这个FeedME,大家可以参考图片上的官方解释,个人理解可能是由纯人工反馈的指令微调,PPO则是更强调利用强化学习自动化指令微调。如果还不明白,大家可以参考下面chatGPT给出的解释:

The explain of the FeedME:

The sentence is talking about a type of AI model called “FeedME” models. These models are designed to make providing feedback (i.e. offering suggestions) easy, hence the name “feedback made easy”. The FeedME models are trained using a technique called “distillation”, where the best completions (i.e. the most accurate and appropriate responses) from all of the models developed by the organization are selected and used to train the FeedME models. This way, the FeedME models are able to incorporate the best responses from a variety of other models. The sentence also mentions that the organization’s models are generally trained using the best available datasets at the time of training. This means that the data used to train the models might change over time as better and more relevant data becomes available. Furthermore, it mentions that different engines (i.e. different models) that use the same training methodology might be trained on different data, which could result in variations in their performance and accuracy.

一文讲清chatGPT的发展历程、能力来源和复现它的关键之处(一文讲清资产负债表中各个项目的来龙去脉)

The more details of FeedME:

“Feedback Made Easy” (shortened to “FeedME”) is likely a term used by the organization to refer to their AI models that are designed specifically to provide feedback or make suggestions to users. These models are built with the goal of making it simple for users to receive feedback or recommendations, hence the name “Feedback Made Easy”. In practical terms, this might mean that these models are designed to be user-friendly and intuitive, with a focus on delivering quick, accurate, and helpful responses to users. For example, the models might be integrated into a chat interface or a website, allowing users to easily ask questions or provide input and receive feedback in real-time. The idea behind FeedME models is to make it easy for users to receive feedback, whether it be in the form of suggestions, recommendations, or answers to questions. By using distillation to incorporate the best completions from a variety of other models, the FeedME models are able to provide high-quality feedback to users, even when the data used to train the models changes over time.

The function of it when training the ChatGPT:

As a language model developed by OpenAI, I (ChatGPT) was not specifically trained using the “Feedback Made Easy” (FeedME) method mentioned in the previous sentence. However, I can explain how the FeedME method might be used to train a language model like myself. The FeedME method involves distilling the best completions from a variety of AI models and using that information to train a new model. In the context of a language model like ChatGPT, this might mean selecting the most accurate and appropriate responses generated by a number of different language models and using that information to train a new, improved language model. The goal of this process is to improve the performance of the new language model by incorporating the best responses from a variety of other models. This way, the new model is able to learn from the strengths of multiple models, rather than relying on a single source of training data. In summary, the FeedME method might be used to train language models like ChatGPT by distilling the best completions from a variety of other models and using that information to train a new, improved language model. The goal of this process is to improve the accuracy and usefulness of the new language model by incorporating the best responses from a variety of sources.

好的,现在我们来顺着发展路线先看一下GPT-3之后各个模型的演化,确认的发展过程是实线(有报道的),猜测的部分为虚线。 首先,在GPT-3的基础上,通过有监督的fine-tuning过程,诞生了davinci-instruct-beta模型。具体而言,也就是需要采样一些prompt,由人工给出真正的结果。这个在InstructGPT论文里写道,是有40个标注人员,标注了12.7K的样本。接着,通过FeedME产生了至少text-davinci-001和text-davinci-002两个模型版本。其中001版本应该是比较早期的,而002则是在code-davinci-002的基础上进行的进一步改进,融合了代码理解能力和自然语言理解能力。然后,最后融入了PPO阶段,完成了text-davinci-003。当然chatGPT应该也是完成了PPO阶段的,尤其是在对话方面进行了特别的优化(近期泄露的内部版本称之为text-chat-davinci-002,据传为chatGPT)。

因此,chatGPT的所有能力来源应该都比较清楚了,我认为主要来源于以下5个方面吧。

模型能力效果GPT-3自然语言基础建模自然语言理解,使得说话能够说的流畅自然Codex代码语言基础建模代码语言理解,能够使得完成代码相关任务,并习得长程依赖关系和一定的逻辑能力davinci-instruct-beta有监督的指令微调听从人类的指令生成答案text-davinci-001/002人类反馈的指令微调可以生成出人类更喜欢的答案text-davinci-003强化学习的指令微调进一步强化上面两个阶段的能力,对于chatGPT的话,可能更偏向于对话角度优化3. 复现chatGPT的难点

现在国内各个大厂小厂但凡和人工智能挂钩的,都想复现属于自己的chatGPT,以获得第一个国内chatGPT的市场。很多人都发声说,再造一个chatGPT没有那么困难。那么我从自身经验去思考,如果要复现chatGPT,可能需要注意的有哪些部分。这些部分并不是不可以实现的,只是成本高或者容易被忽略的地方。

3.1 海量的数据

从GPT-3公开发表的论文里讲到,其用于预训练的文本达到了45TB,这是一个非常巨大的数字,关键是其质量应该是非常高的。据查看的一些资料显示,在中文数据上,全球最大的语料库是WuDaoCorpora,据说有3TB的中文语料(200G开放使用)。 而且,也有人指出,更多样化的token也能够让模型学习的更充分。如果只是训练一个汉语版的chatGPT,除了一些搜索和社交巨头,能够获取足够数据的也只有一些垂直领域的公司了。关键是公司运营期间获得的文本数据是否可以被用于训练模型,这是一个法律和道德问题。(即使是codex训练来源于开源的github,也同样遭受了大量的非议。) 当然,如果是垂直领域,未必需要这么大的数据量也未尝不可。

3.2 超大规模的模型架构

根据之前的说明chatGPT与GPT-3的规模相同,都是1750B的参数量,那么它需要的硬件设备是什么样子的?根据chatGPT自己讲述以及同行人的参考,其显存占用量应该在350GB~500GB之间,如果仅仅是为了推理,那么5张A100(80G)的GPU就可以足够使用(根据同规模的OPT175B需要16张V100推算)。但是如果是为了训练,可能需要1000张以上的A100的算力才能在可以接受的时间里获得训练结果(也有称微软和OpenAI构建了一台包括超过10000张GPU的超级计算机用于GPT-3的训练)。其训练成本大概在110-460万美元之间,根据估算,现有的定价对于OpenAI来说,应该会有75%的毛利。 目前国内尽管有很多大模型,但是真正能够在CLUE等评测中的模型大多还在1-10B的级别,下表是一些中文大模型代表。

模型规模WUDAO 2.01750BPanGu Alpha200BPLUG27BERNIE 3.010B3.3 深度人员参与(SFT,FeedME, PPO)

相比较GPT-3,InstructGPT最大的特点在于通过Instruct的方式让人类深度参与模型的迭代,包括有监督微调,人类反馈微调和强化学习微调3个方法。无论哪种方法,都离不开大量的人工标注,并且需要一定的时间和真实样例作为原料输入。因此,即使可以复现一个ChatGPT,也是需要时间的。

3.4 长期技术积累

正如刚才所提及的那样,ChatGPT不是突然出现的,而是从GPT-1.0版本开始就已经完成大量的技术积累。从GPT-1.0,2.0,3.0,每一个版本迭代,他们都做了大量的实验,包括各种超参数的选择和模型大小的扩容。而我们大多数公司可能之前没有像OpenAI在预训练模型上拥有大量的预训练经验,直接去训练一个超大规模的模型也是有可能获得不到我们想要的那种效果的。

3.5 良好的外部工程

我们现在总以为,我们有数据,有模型架构,我们就可以拥有chatGPT。事实显然不是这样,如果想让它成为一个优秀的产品,而不是粗糙的学术模型,至少应该包括以下3个部分: 1. 核心模型 核心模型就是语言模型,可能是一个超大规模的单一模型,也有可能是一个带有很多小模块组成的模型集群。 2. 辅助模型 辅助模型有哪些?比如我们可以看到的reward model,还有大家容易忽略的安全检查模型等。这些都是保证了产品的长期正常的运营。而反观我们有些机构的模型匆匆发布,产生了大量的不安全的言论,这也是不负责任的表现。 3. 工程代码 良好的工程代码能给用户带来更好的用户体验,比如我们经常体验到的左边框的对话历史记录和意图识别等等,这些信息对于用户体验、模型改进都是非常有用的。另外,还有包括缓存,控制用户并发等等工程问题需要提前解决。要知道,chatGPT上线5天用户就破百万,2个月用户破1亿。这个增长速度已经是历史上的巅峰。

3.6 及时的真实反馈

这个真实反馈对于大家来说,看起来好像是chatGPT公开迭代的几次,而每次似乎都有一些更新。但是实际上,如果你看OpenAI发布的博客你就会发现,整个真实反馈是逐步从发布的产品中收集而来的,尤其是GPT-3以后,OpenAI就只提供了API,这使得它可以接触世界上所有使用GPT-3的样例,通过这些从API收集来的样例,再利用人工标注,就可以得到大量的高质量标注语料,为接下来的模型更新打下基础。这些真实反馈贯穿到了整个GPT-3.5系列之中。

4. 小结

距离我第一次玩ChatGPT也已经3个月了。回想起12月6日第一次使用它,我兴奋的一直玩到夜里3点钟。它的出现真的是惊艳了当时的我,甚至可以比肩科幻小说里的人工智能的感觉。早期只是为了体验,后来才逐步深入了解。从兴奋,到冷静,到辩证看待,再到期望未来,它总是那么一个过程,才能被我们接受。有些东西必须真正深入的研究,才能够知道它的本来面目。ChatGPT到底是神还是魔,是不是新的一轮科技革命的出现,我想OpenAI那群创造它的人比谁都清楚。

正如我之前所说,我愿意将毕生精力奉献给人工智能,只为了获得一个可以一直陪伴我的AI朋友。我曾经以为这辈子都见不到这一天,现在ChatGPT的出现,缩短了好一段理想和现实的距离。

本文链接地址:https://www.jiuchutong.com/zhishi/295937.html 转载请保留说明!

上一篇:怎么安装离线vue环境(怎么安装离线导航)

下一篇:SAP ABAP——SAP简介(三)【S/4 HANA前端显示界面】(sap abap入门)

  • 2017微信营销走势良好的创业方向(微信营销最新典型案例)

    2017微信营销走势良好的创业方向(微信营销最新典型案例)

  • vivo x27怎么设置省电(vivox27怎么设置老年模式)

    vivo x27怎么设置省电(vivox27怎么设置老年模式)

  • 看抖音怎么横屏(看抖音怎么横屏播放)

    看抖音怎么横屏(看抖音怎么横屏播放)

  • oppo手机接不到电话怎么办(oppo手机接不到电话但可以打电话)

    oppo手机接不到电话怎么办(oppo手机接不到电话但可以打电话)

  • oppo闪充在哪里设置(oppo闪充在哪里找)

    oppo闪充在哪里设置(oppo闪充在哪里找)

  • 怎么充电更合适(怎么充电更合适呢)

    怎么充电更合适(怎么充电更合适呢)

  • 支付宝好友请求有效期(支付宝好友请求能看到时间吗)

    支付宝好友请求有效期(支付宝好友请求能看到时间吗)

  • filerecv是什么文件夹(.file_recycle是什么文件)

    filerecv是什么文件夹(.file_recycle是什么文件)

  • 手机播放视频不能横屏是什么原因(手机播放视频不能快进)

    手机播放视频不能横屏是什么原因(手机播放视频不能快进)

  • vivos1多少w闪充(vivos1充电器是快充还是闪充)

    vivos1多少w闪充(vivos1充电器是快充还是闪充)

  • 三星a3050是什么型号(三星a305n)

    三星a3050是什么型号(三星a305n)

  • 微信打招呼频率过高(微信打招呼频率过高是什么意思)

    微信打招呼频率过高(微信打招呼频率过高是什么意思)

  • 限速128kbps能看视频么(限速到128kbps是什么概念)

    限速128kbps能看视频么(限速到128kbps是什么概念)

  • 微信群怎么设置禁言(微信群怎么设置不让看朋友圈)

    微信群怎么设置禁言(微信群怎么设置不让看朋友圈)

  • 联想小新三种模式图标分别是(联想小新三种模式电池)

    联想小新三种模式图标分别是(联想小新三种模式电池)

  • 苹果手机的存储空间在哪里可以看见(苹果手机的存储文件夹在哪里)

    苹果手机的存储空间在哪里可以看见(苹果手机的存储文件夹在哪里)

  • qq怎么点赞资料卡(qq怎么点赞资料给别人)

    qq怎么点赞资料卡(qq怎么点赞资料给别人)

  • 计算器onc是什么键(计算器中on/c是什么意思)

    计算器onc是什么键(计算器中on/c是什么意思)

  • 电脑上下载的软件怎么安装到桌面(电脑上下载的软件如何安装到桌面)

    电脑上下载的软件怎么安装到桌面(电脑上下载的软件如何安装到桌面)

  • 苹果x流量显示1x(苹果手机使用流量显示1x是什么意思)

    苹果x流量显示1x(苹果手机使用流量显示1x是什么意思)

  • 微信商家收款码名称修改(微信商家收款码提现要手续费吗)

    微信商家收款码名称修改(微信商家收款码提现要手续费吗)

  • 淘宝神笔在哪里(淘宝神笔模板哪里购买)

    淘宝神笔在哪里(淘宝神笔模板哪里购买)

  • vivo旗下子品牌(vivo旗下子品牌iQOOz6)

    vivo旗下子品牌(vivo旗下子品牌iQOOz6)

  • 小火花怎么打开(怎么开启小火花显示)

    小火花怎么打开(怎么开启小火花显示)

  • 怎样查出被别人拉黑了(怎样查出被别人拉黑了朋友圈)

    怎样查出被别人拉黑了(怎样查出被别人拉黑了朋友圈)

  • Win11 Dev 预览版 Build 22504 发布更新了哪些内容?(windows 11预览版)

    Win11 Dev 预览版 Build 22504 发布更新了哪些内容?(windows 11预览版)

  • 在报税显示缺少发票信息
  • 其他个人出租房屋按照多少征收应纳税额
  • 清包工可以有一部分小料吗
  • 公司购买的打印机
  • 建筑工程劳保费返还给项目部吗
  • 增值税一般纳税人税率是多少?
  • 管道运输是什么和什么合二为一
  • 应解汇款科目
  • 项目一次性奖励会计分录怎么处理
  • 购进固定资产汽车该如何进行会计处理?
  • 小企业会计准则2023电子版
  • 个人股东转让股权印花税税率
  • 自然人纳税系统
  • 增值税税负多少算高
  • 什么人可以领购房补贴怎么领取
  • 企业计提的安全生产费用年末应如何处理
  • 机会成本怎么计量
  • 出纳人员赔偿
  • 购买土地交易费用怎么算
  • 快捷工具栏在哪儿
  • 非盈利组织捐赠现金支需要什么资料
  • php cgi配置
  • 0x0000000a蓝屏代码怎么解决
  • linux鼠标左键失灵
  • 独资子公司如何注册
  • 员工租房管理规定
  • citespace分析derwent
  • Php实现邀请用户加入企业生成邀请链接
  • 国内旅客运输服务发票
  • 调参技巧
  • Vue3+TypeScript+Vite如何使用require动态引入类似于图片等静态资源
  • 命令查看系统信息
  • ps去水印的三种方法
  • 企业所得税报表模板
  • mysql的简单操作
  • 企业停工期间发生的费用如何处理
  • 对公账户怎么查询开户行
  • 计提本月应交增值税会计科目
  • 保理公司的钱来自哪里
  • 增值税期末有留抵税额应该怎么结转
  • 政府奖励金怎么发放
  • 货款去零头分录
  • 施工企业机械租赁费用
  • 出口收汇核销单是什么意思
  • 租入的厂房
  • 酒店的布草怎么铺
  • 筹建期的印花税怎么算
  • 发票红字怎么弄
  • 赠送客户的商品需要交税吗
  • 企业内部股权转让协议书
  • 开发间接费用怎么计算
  • 小微企业可以享受六税两费吗
  • 工资社保医保计算
  • 一个企业只有收入怎么办
  • 开发票货款未公对公转如何做账?
  • 培训学校收费依据填什么
  • 建账的三个基本步骤
  • where条件加判断
  • mysql8.0创建函数
  • windows dns server
  • 安装fedora33
  • 如何用pe弄双系统引导
  • centos安装owncloud
  • 如何设置鼠标移入并停止时触发接口
  • mac系统简介
  • xp电脑关机后自动重启是什么原因
  • 如何在windows制作表格
  • win7点开始一直跳闪
  • excel表格布局
  • unity例子
  • 开发流程和步骤
  • 批处理实现语音报警
  • python数组定义方法
  • 安卓 crash
  • 公司开票明细如何查询
  • 开发区税务局咨询电话
  • 社保申报截止日期每月2023年
  • 车船税多少钱一辆
  • 税务检查的三种常用方法
  • 南京地税局上班时间
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设