位置: IT常识 - 正文

一文读懂ChatGPT模型原理(一文读懂谢娜张杰购房跳单事件始末)

编辑:rootadmin
一文读懂ChatGPT模型原理

推荐整理分享一文读懂ChatGPT模型原理(一文读懂谢娜张杰购房跳单事件始末),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:一文读懂苏丹局势最新进展,一文读懂苏丹局势最新进展,一文读懂谢娜张杰购房跳单事件始末,一文读懂美联储6月议息会议,一文读懂美联储6月议息会议,一文读懂美联储6月议息会议,一文读懂美联储6月议息会议,一文读懂 ofd 文件格式:国产 pdf,关键,重要,内容如对您有帮助,希望把文章链接给更多的朋友!

(本文是ChatGPT原理介绍,但没有任何数学公式,可以放心食用)

前言

这两天,ChatGPT模型真可谓称得上是狂拽酷炫D炸天的存在了。一度登上了知乎热搜,这对科技类话题是非常难的存在。不光是做人工智能、机器学习的人关注,而是大量的各行各业从业人员都来关注这个模型,真可谓空前盛世。

我赶紧把 OpenAI 以往的 GPT-n 系列论文又翻出来,重新学习一下,认真领会大规模预训练语言模型(Large Language Model)的强大之处。

可能很多深度学习相关从业人员的感受和我一样,大家之前对 LLM 的感受依然是,预训练+finetune,处理下游任务,依然需要大量的标注数据和人工干预,怎么突然间,ChatGPT 就智能到如此地步?

接下来,我简要梳理一下 OpenAI 的 GPT 大模型的发展历程。

一、还得从 Bert 说起

2018年,自然语言处理 NLP 领域也步入了 LLM 时代,谷歌出品的 Bert 模型横空出世,碾压了以往的所有模型,直接在各种NLP的建模任务中取得了最佳的成绩。

Bert做了什么,主要用以下例子做解释。

请各位做一个完形填空: ___________和阿里、腾讯一起并成为中国互联网 BAT 三巨头。

请问上述空格应该填什么?有的人回答“百度”,有的人可能觉得,“字节”也没错。但总不再可能是别的字了。

不论填什么,这里都表明,空格处填什么字,是受到上下文决定和影响的。

Bert 所作的事就是从大规模的上亿的文本预料中,随机地扣掉一部分字,形成上面例子的完形填空题型,不断地学习空格处到底该填写什么。所谓语言模型,就是从大量的数据中学习复杂的上下文联系。

二、GPT 初代

与此同时,OpenAI 早于 Bert 出品了一个初代 GPT 模型。

它们大致思想是一样的。都基于 Transformer 这种编码器,获取了文本内部的相互联系。

Transformer结构

编解码的概念广泛应用于各个领域,在 NLP 领域,人们使用语言一般包括三个步骤:

接受听到或读到的语言 -> 大脑理解 -> 输出要说的语言。

语言是一个显式存在的东西,但大脑是如何将语言进行理解、转化、存储的,则是一个目前仍未探明的东西。因此,大脑理解语言这个过程,就是大脑将语言编码成一种可理解、可存储形式的过程,这个过程就叫做语言的编码。

相应的,把大脑中想要表达的内容,使用语言表达出来,就叫做语言的解码。

在语言模型中,编码器和解码器都是由一个个的 Transformer 组件拼接在一起形成的。

Transformer编码器组成的 Encoder-decoder模型

这里不展开讲 Transformer 里的内部结构,仅仅讲一下 Bert 和 GPT 的区别。

两者最主要的区别在于,Bert 仅仅使用了 encoder 也就是编码器部分进行模型训练,GPT 仅仅使用了 decoder 部分。两者各自走上了各自的道路,根据我粗浅的理解,GPT 的decoder 模型更加适应于文本生成领域。

GPT 初代其实个人认为(当然普遍也都这么认为)略逊色于 Bert,再加上宣传地不够好,影响力也就小于 Bert。

我相信很多的 NLP 从业者对 LLM 的理解也大都停留在此。即,本质上讲,LLM 是一个非常复杂的编码器,将文本表示成一个向量表示,这个向量表示有助于解决 NLP 的任务。

三、GPT-2

自从 Bert 炸街后,跟风效仿的改进模型也就越来越多了,比如 albert、roberta、ERNIE,BART、XLNET、T5 等等五花八门。

最初的时候,预训练任务仅仅是一个完形填空任务就可以让语言模型有了极大进步,那么,很多人就想,给 LLM 模型出其它的语言题型,应该也会对模型训练有极大的帮助。

想要出语言题型不是很简单么,什么句子打乱顺序再排序、选择题、判断题、改错题、把预测单字改成预测实体词汇等等,纷纷都可以制定数据集添加在模型的预训练里。很多模型也都是这么干的。

既然出题也可以,把各种NLP任务的数据集添加到预训练阶段当然也可以。那就把机器翻译、文本摘要、领域问答统统往预训练里加。

这个过程也和人脑很像,人脑是非常稳定和泛化的,既可以读诗歌,也可以学数学,还可以学外语,看新闻,听音乐等等,简而言之,就是一脑多用。

我们一般的 NLP 任务,文本分类模型就只能分类,分词模型就只能分词,机器翻译也就只能完成翻译这一件事,非常不灵活。

GPT-2 主要就是在 GPT 的基础上,又添加了多个任务,扩增了数据集和模型参数,又训练了一番。效果如下:

GPT-2学习效果图

既然多个任务都在同一个模型上进行学习,还存在一个问题,这一个模型能承载的并不仅仅是任务本身,“汪小菲的妈是张兰”,这条文字包含的信息量是通用的,它既可以用于翻译,也可以用于分类,判断错误等等。也就是说,信息是脱离具体 NLP 任务存在的,举一反三,能够利用这条信息,在每一个 NLP 任务上都表现好,这个是 元学习(meta-learning)。

四、GPT-3大模型中的大模型

首先, GPT-3 的模型所采用的数据量之大,高达上万亿,模型参数量也十分巨大,学习之复杂,计算之繁复不说了,看图吧。

GPT-3 里的大模型计算量是 Bert-base 的上千倍。统统这些都是在燃烧的金钱,真就是 all you need is money。如此巨大的模型造就了 GPT-3 在许多十分困难的 NLP 任务,诸如撰写人类难以判别的文章,甚至编写SQL查询语句,React或者JavaScript代码上优异的表现。

首先 GPT-n 系列模型都是采用 decoder 进行训练的,也就是更加适合文本生成的形式。也就是,输入一句话,输出也是一句话。也就是对话模式。

对话

我们是如何学会中文的?从0岁开始,听、说,也就是对话。

我们是如何学外语的?看教材,听广播,背单词。唯独缺少了对话!正是因为缺少了对话这个高效的语言学习方式,所以我们的英语水平才如此难以提高。

对于语言模型,同理。对话是涵盖一切 NLP 任务的终极任务。从此 NLP不再需要模型建模这个过程。比如,传统 NLP 里还有序列标注这个任务,需要用到 CRF 这种解码过程。在对话的世界里,这些统统都是冗余的。

其实 CRF 这项技术还是蛮经典的,在深度学习这块,CRF这也才过去没几年。sigh……

in-context learning

以往的预训练都是两段式的,即,首先用大规模的数据集对模型进行预训练,然后再利用下游任务的标注数据集进行 finetune,时至今日这也是绝大多数 NLP 模型任务的基本工作流程。

GPT-3 就开始颠覆这种认知了。它提出了一种 in-context 学习方式。这个词没法翻译成中文,下面举一个例子进行解释。

用户输入到 GPT-3:你觉得 JioNLP 是个好用的工具吗?

GPT-3输出1:我觉得很好啊。

GPT-3输出2:JioNLP是什么东西?

GPT-3输出3:你饿不饿,我给你做碗面吃……

GPT-3输出4:Do you think jionlp is a good tool?

一文读懂ChatGPT模型原理(一文读懂谢娜张杰购房跳单事件始末)

按理来讲,针对机器翻译任务,我们当然希望模型输出最后一句,针对对话任务,我们希望模型输出前两句中的任何一句。显然做碗面这个输出句子显得前言不搭后语。

这时就有了 in-context 学习,也就是,我们对模型进行引导,教会它应当输出什么内容。如果我们希望它输出翻译内容,那么,应该给模型如下输入:

用户输入到 GPT-3:请把以下中文翻译成英文:你觉得 JioNLP 是个好用的工具吗?

如果想让模型回答问题:

用户输入到 GPT-3:模型模型你说说,你觉得 JioNLP 是个好用的工具吗?

OK,这样模型就可以根据用户提示的情境,进行针对性的回答了。

这里,只是告知了模型如何做,最好能够给模型做个示范:

用户输入到 GPT-3:请把以下中文翻译成英文:苹果 => apple; 你觉得 JioNLP 是个好用的工具吗?=>

其中 苹果翻译成 apple,是一个示范样例,用于让模型感知该输出什么。只给提示叫做 zero-shot,给一个范例叫做 one-shot,给多个范例叫做 few-shot。

不能再给多了!一个是,咱们没那么多标注数据,另一个是,给多了不就又成了 finetune 模式了么?

在 GPT-3 的预训练阶段,也是按照这样多个任务同时学习的。比如“做数学加法,改错,翻译”同时进行。这其实就类似前段时间比较火的 prompt。

这种引导学习的方式,在超大模型上展示了惊人的效果:只需要给出一个或者几个示范样例,模型就能照猫画虎地给出正确答案。注意啊,是超大模型才可以,一般几亿参数的大模型是不行的。(我们这里没有小模型,只有大模型、超大模型、巨大模型)

这个结果曲线图展示了用175 billion 的参数得到了优质的效果。彷佛在嘲讽我:哎,你没钱,你就看不着这种优质的效果,你气不气?

五、ChatGPT

终于说到了主角,能看到这里的,可以关注一下 JioNLP 公众号吗?我写的也够累的。

ChatGPT 模型上基本上和之前 GPT-3 都没有太大变化,主要变化的是训练策略变了,用上了强化学习。

强化学习

几年前,alpha GO 击败了柯洁,几乎可以说明,强化学习如果在适合的条件下,完全可以打败人类,逼近完美的极限。

强化学习非常像生物进化,模型在给定的环境中,不断地根据环境的惩罚和奖励(reward),拟合到一个最适应环境的状态。

NLP + 强化学习

强化学习之所以能比较容易地应用在围棋以及其它各种棋牌游戏里,原因就是因为对于 alpha Go 而言,环境就是围棋,围棋棋盘就是它的整个世界。模型就是不断根据棋盘的状态以及输赢状况调整策略,战胜了柯洁。

而几年前知乎上就有提问,NLP + 强化学习,可以做吗?怎么做呢?

底下回答一片唱衰,原因就是因为,NLP 所依赖的环境,是整个现实世界,完全无法设计反馈惩罚和奖励函数。除非人们一点点地人工反馈。

哎,OpenAI 的 ChatGPT 就把这事给干了。

不是需要人工标反馈和奖励吗?那就撒钱,找40个外包,标起来!

这种带人工操作的 reward,被称之为 RLHF(Reinforcement Learning from Human Feedback)。

具体操作过程就是下图的样子,采用强化学习的方式来对模型进行训练。已经抛弃了传统的 LM 方式。

这里重点是第二步中,如何构建一个 reward 函数,具体就是让那40名外包人员不断地从模型的输出结果中筛选,哪些是好的,哪些是低质量的,这样就可以训练得到一个 reward 模型。

通过 reward 模型来评价模型的输出结果好坏。

讲真,这个 reward 模型,《黑客帝国》的母体 matrix 既视感有木有??!!

只要把预训练模型接一根管子在 reward 模型上,预训练模型就会开始像感知真实世界那样,感知reward。

由此,我们就可以得到这个把全世界都震碎的高音!(误,模型)

ChatGPT 功能一览

ChatGPT 原理介绍完了,再来看看它能干啥工作?

能回答知乎上的问题

你别想耍它

能回答困难的问题

能理解乱序文本

会做高数

知道自己是程序,不会做你女票

还能处理程序 bug

六、影响NLP 领域的影响

个人认为,NLP 领域的一些里程碑性的技术重要性排序如下:

ChatGPT > word2vec > Bert (纯个人看法)

ChatGPT 的关注度已经很大程度让人们感觉到,什么天猫精灵、小爱同学等等人工智障的时代似乎过去了。只要模型足够大,数据足够丰富,reward 模型经过了更多的人迭代和优化,完全可以创造一个无限逼近真实世界的超级 OpenAI 大脑。

当然,ChatGPT 依然是存在回答不好的情况的,比如会重复一些词句,无法分清楚事实等等。

而且,ChatGPT 目前看,它是没有在推理阶段连接外部信息的。

模型知道自己的回答边界,知道自己只是一个没有情感的回答工具。那么,试想 OpenAI 把外部信息也导入到 ChatGPT 里,那是怎样的一副图景。

另一些影响

我看到 ChatGPT 居然可以写代码,还能帮我改代码,debug,作为程序员,我不禁深深陷入了沉思。

据说,debug 程序员网站 stackoverflow,已经下场封杀 ChatGPT 了。

当然,完全不仅仅是程序界。据说 GPT-4 正在做图文理解,那么,对于教师、医生、咨询师、等等等等,各行各业,是不是都是一个巨大的冲击?所谓专业领域的知识门槛,也将被模型一步踏平。

有人讲 google 将被替代,我认为也就还好吧,没准 google 此时此刻,NLP+强化学习也已经在路上了。

本文由 mdnice 多平台发布

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

上一篇:马尼亚河的卫星图像,马达加斯加 (© NASA Earth Observatory image by Joshua Stevens, using Landsat data from the US Geological Survey)(马尼亚岛的降水特点)

下一篇:TS基础了解一(ts基础类型)

  • iqoo8pro开发者模式怎么打开(iqoo5pro开发者模式)

    iqoo8pro开发者模式怎么打开(iqoo5pro开发者模式)

  • 小米手环6微信支付怎么用(小米手环6微信通知怎么设置)

    小米手环6微信支付怎么用(小米手环6微信通知怎么设置)

  • 微信如何切换另一个账号登录(怎么切换另外一个微信)

    微信如何切换另一个账号登录(怎么切换另外一个微信)

  • 华为nova9不带充电器吗(华为nova9不带充电器怎么充电)

    华为nova9不带充电器吗(华为nova9不带充电器怎么充电)

  • 华为Mate 40支持人脸解锁吗(华为mate40支持无线充电功能吗)

    华为Mate 40支持人脸解锁吗(华为mate40支持无线充电功能吗)

  • 手机忘记解锁图案怎么办(手机忘记解锁图案了怎么办vivo)

    手机忘记解锁图案怎么办(手机忘记解锁图案了怎么办vivo)

  • 手机上alt是哪个键

    手机上alt是哪个键

  • 安卓手机能定位吗(安卓手机能定位蓝牙耳机吗)

    安卓手机能定位吗(安卓手机能定位蓝牙耳机吗)

  • 拍抖音用什么软件制作视频(拍抖音用什么软件拍摄是最好的)

    拍抖音用什么软件制作视频(拍抖音用什么软件拍摄是最好的)

  • gtx570相当于什么显卡

    gtx570相当于什么显卡

  • 华为p40hd怎么关(华为p40prohd怎么关闭)

    华为p40hd怎么关(华为p40prohd怎么关闭)

  • 音频dac是什么意思(音频dac工作原理)

    音频dac是什么意思(音频dac工作原理)

  • 计算机网络的目标是实现(计算机网络的目的是)

    计算机网络的目标是实现(计算机网络的目的是)

  • 苹果系统如何停止请求更新(苹果系统如何停止安装)

    苹果系统如何停止请求更新(苹果系统如何停止安装)

  • 转转申请退款能成功吗(转转申请退款能立马到账吗)

    转转申请退款能成功吗(转转申请退款能立马到账吗)

  • 天猫预售提醒怎么取消(天猫预售提醒消息在哪里看)

    天猫预售提醒怎么取消(天猫预售提醒消息在哪里看)

  • 喜马拉雅可以包月吗(喜马拉雅包包是什么牌子)

    喜马拉雅可以包月吗(喜马拉雅包包是什么牌子)

  • qq解除关系对方知道吗(qq解除关系对方还能和我说话吗)

    qq解除关系对方知道吗(qq解除关系对方还能和我说话吗)

  • 如何把通讯录导到新手机上(如何把通讯录导入苹果手机)

    如何把通讯录导到新手机上(如何把通讯录导入苹果手机)

  • 京东买家怎么删除评价(京东买家怎么删除赠品)

    京东买家怎么删除评价(京东买家怎么删除赠品)

  • rgb转cmyk后偏色严重(rgb转cmyk颜色变了)

    rgb转cmyk后偏色严重(rgb转cmyk颜色变了)

  • beatssolo3怎么重置(beatssolo3怎么重新连接)

    beatssolo3怎么重置(beatssolo3怎么重新连接)

  • 陌陌卸载了聊天记录能查吗(陌陌卸载了聊天记录怎么找回)

    陌陌卸载了聊天记录能查吗(陌陌卸载了聊天记录怎么找回)

  • 华为mate10怎么截屏(华为mate40e怎么截屏)

    华为mate10怎么截屏(华为mate40e怎么截屏)

  • 在excel中,数值型数据其默认水平对齐方式为(在excel中,数值数据默认的对齐方式是)

    在excel中,数值型数据其默认水平对齐方式为(在excel中,数值数据默认的对齐方式是)

  • bootcamp安装win7(bootcamp安装win7鼠标不能用)

    bootcamp安装win7(bootcamp安装win7鼠标不能用)

  • 在滴滴上丢东西怎么办(在滴滴丢了东西怎么办)

    在滴滴上丢东西怎么办(在滴滴丢了东西怎么办)

  • 小米8勿扰模式怎么设置(小米8勿扰模式在哪里)

    小米8勿扰模式怎么设置(小米8勿扰模式在哪里)

  • 收到所得税退税会计怎么记账
  • 自然人独资公司有章程吗
  • 发票没有纳税人识别号能开吗
  • a企业给关联公司借款怎么做账
  • 企业所得税汇算清缴申报表
  • 会员卡收费怎么办理
  • 驾校挂靠车辆账务处理?
  • 预付账款下月做什么科目
  • 个人开具建筑服务发票
  • 税收缴款书税务收现专用的用途
  • 旅游公司发票企业能报销吗
  • 融资租赁租金收入计税基础
  • 资产管理人该如何称呼
  • 调整暂估有差价怎么办
  • 销售净利率怎么求
  • 银行端现金缴税凭证
  • 申报个税按计提工资还是实际发放
  • 红字发票信息表是销方还是购方开
  • 免税企业进项怎么处理
  • 怎样启动powerpoint
  • 年末利润分录
  • 计划成本法存货成本的确定
  • 年终奖发放与补发的区别
  • 涉税服务实务重点总结
  • 登记会计账簿的注意事项
  • 固定资产转卖怎么开票
  • 增值税账务处理 一般纳税人
  • 资本公积金为什么不能用于弥补亏损
  • 待转销项税额会计分录
  • 报销差旅费退回余款填什么凭证
  • antd:ConfigProvider+getPopupContainer解决筛选框遮挡问题(及其他浮层问题)
  • tcpdump 监听指定端口
  • 企业内部研究开发项目开发阶段的支出
  • mongodb视频教程
  • 公司法人和经理的区别
  • 处置固定资产净收益属于利得吗
  • 签发转账支票需要的单据
  • mysql怎么替换某个值
  • 财政专户资金支出
  • 餐饮行业分录大全
  • 软件开发过程付什么费用
  • 植物售卖
  • 补提当年折旧会计分录
  • 代开发票取得的收入如何入账?
  • 境外企业向境内企业提供劳务
  • 待转销项税借方余额是什么意思
  • 收银电脑怎么录商品
  • 资产减值损失属于费用类吗
  • 总分包模式和总承包模式
  • 小规模纳税人发票可以抵扣吗
  • 一次性压缩洗脸巾
  • SQL Server Bulk Insert 只需要部分字段时的方法
  • 如何用win7
  • qq远程协助点不动
  • 拒绝访问.exe出错
  • 如何快速让你的钱变多
  • unetbootin教程
  • csrss.exe是什么进程 2个
  • 怎么才能更好的优化我的电脑
  • Win10 Mobile 10572快速配置更新推送 Win10 Mobile 10572升级体验
  • windows开发是什么
  • centos bbrplus
  • win10怎么切任务管理
  • win7 64位系统使用dos命令快速提高u盘传输速度的技巧
  • window10外接摄像头怎么启用
  • win10个性化颜色在开始任务栏选不了
  • androidstudio listview
  • cocos2dx游戏有哪些
  • unity怎么创建空对象
  • three.js入门指南
  • Metaio in Unity3d 教学--- 三. 使用ID Marker作为扫描目标
  • java教程 视
  • 1988年中华人民共和国印花税票五元
  • 朝阳区地方税务局官网
  • 大米包装有二道封口线正常吗
  • 费减备案合格后怎么操作?
  • 国税系统公务员调动
  • 四川地税务局官网
  • 土地增值税如何入账
  • 国家税务总局每家公司都可以注册吗
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设