位置: 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基础类型)

  • 路由器设置不正确(路由器设置不能上网)(路由器设置不正常怎么办)

    路由器设置不正确(路由器设置不能上网)(路由器设置不正常怎么办)

  • 快手V10.2.30版本(快手v9.2.30)

    快手V10.2.30版本(快手v9.2.30)

  • 网易云如何查看已购专辑(网易云如何查看听歌次数)

    网易云如何查看已购专辑(网易云如何查看听歌次数)

  • Word删除文章中的所有空行怎么操作(word删除文章中的所有空行)

    Word删除文章中的所有空行怎么操作(word删除文章中的所有空行)

  • 微信服务器保留几年记录(微信服务器保留几年聊天记录)

    微信服务器保留几年记录(微信服务器保留几年聊天记录)

  • 快手流量是什么意思啊(快手流量包怎么买)

    快手流量是什么意思啊(快手流量包怎么买)

  • 新版抖音怎么看音浪(新版抖音怎么看互动消息记录)

    新版抖音怎么看音浪(新版抖音怎么看互动消息记录)

  • 快手推广保证金一定要交吗(快手推广保证金是什么意思)

    快手推广保证金一定要交吗(快手推广保证金是什么意思)

  • 苹果xr耐摔吗(xr的屏幕耐摔吗)

    苹果xr耐摔吗(xr的屏幕耐摔吗)

  • 华为手机有放大功能和望远镜功能吗(华为手机有放大器吗在哪里)

    华为手机有放大功能和望远镜功能吗(华为手机有放大器吗在哪里)

  • xr无面容有什么影响(无面容xr为什么这么便宜)

    xr无面容有什么影响(无面容xr为什么这么便宜)

  • 苹果手机打电话没声音免提打不开(苹果手机打电话就没信号怎么回事)

    苹果手机打电话没声音免提打不开(苹果手机打电话就没信号怎么回事)

  • i58400和i59400区别(i58400和9400差多少)

    i58400和i59400区别(i58400和9400差多少)

  • 华硕路由器亮红灯(华硕路由器亮红灯啥意思)

    华硕路由器亮红灯(华硕路由器亮红灯啥意思)

  • 京东自营和京东国际自营有什么区别(京东自营和京东物流的区别)

    京东自营和京东国际自营有什么区别(京东自营和京东物流的区别)

  • 云充吧可以在外地还吗(云充吧使用方法)

    云充吧可以在外地还吗(云充吧使用方法)

  • oppo手机有nfc功能吗(oppo手机有nfc功能如何替代门禁卡)

    oppo手机有nfc功能吗(oppo手机有nfc功能如何替代门禁卡)

  • 1000kbps的网速是几兆(1000kb网速快吗)

    1000kbps的网速是几兆(1000kb网速快吗)

  • 海思kirin980是什么处理器(海思krirn970)

    海思kirin980是什么处理器(海思krirn970)

  • 京东激活了win怎么退货(京东电脑已经激活系统能退吗)

    京东激活了win怎么退货(京东电脑已经激活系统能退吗)

  • 华为gt2手表上市时间(华为watch gt2发售)

    华为gt2手表上市时间(华为watch gt2发售)

  • airpods坏了能修吗(airpods损坏维修)

    airpods坏了能修吗(airpods损坏维修)

  • 荣耀9x有没有nfc(荣耀80gt nfc)

    荣耀9x有没有nfc(荣耀80gt nfc)

  • 腾讯校友网怎么没了(腾讯校友录登录)

    腾讯校友网怎么没了(腾讯校友录登录)

  • 视频会议系统的主要功能

    视频会议系统的主要功能

  • Hosts文件的作用(windows hosts文件在哪)

    Hosts文件的作用(windows hosts文件在哪)

  • anote.exe是什么进程 anote进程是什么意思(an exit)

    anote.exe是什么进程 anote进程是什么意思(an exit)

  • 网速很慢是什么原因导致的(网速慢是什么情况)

    网速很慢是什么原因导致的(网速慢是什么情况)

  • 聊一聊浏览器打印 - window.print(浏览器你)

    聊一聊浏览器打印 - window.print(浏览器你)

  • 此战成硕,我成功上岸西南交通大学了~~~

    此战成硕,我成功上岸西南交通大学了~~~

  • 申报个税后发生扣工资
  • 汇算清缴需要做分录吗
  • 车船税保险公司会不会多收
  • 支票退票怎么做账务处理
  • 利润为负数利润增长率怎么算
  • 收据盖公章要注意哪些
  • 出售投资性房地产时,按其账面价值结转到主营业务成本
  • 员工报销会计分录怎么做
  • 税控盘未按时抄报处罚
  • 工程项目因故终止施工的建设单位应办理手续0
  • 餐费开专票有什么影响
  • 其他收益是否缴纳个税
  • 怎么计提企业所得税
  • 以前年度损益调整贷方余额表示什么
  • 发票显示上传失败
  • 企业收入准则的主要内容
  • 金税盘报税的服务费怎么抵扣增值税?
  • 客户到款打到子公司账上如何转回
  • 如何申请残疾人
  • 上月暂估入账的原材料的发票已经送到财务部
  • 补交上一年度的所得税怎么做账
  • ie浏览器打开后显示已停止工作
  • 腾讯电脑管家中有没有红色警戒下载玩
  • 什么是文件扩展名dws
  • 贷款本息转本金
  • 发票明细与实际不符是什么行为
  • 何为职工
  • 财政补助收入的支付制度包括
  • csinsmnt.exe进程的作用介绍 csinsmnt是什么进程
  • vue项目页面写在哪里
  • php 配置
  • 合规检查中检查不了的设备
  • 没有报税盘
  • php的!
  • java基础笔试题在线考
  • 残保金工资总额是计提还是实发
  • 基建拨款会计分录
  • 房企预缴税款会退税吗
  • 公司股权转移怎么办理
  • 试生产期间发生事故后重新
  • 微小企业开票一天可以开多少钱
  • 深圳增值税普通发票和专用发票的区别
  • sql条件查询语句怎么写
  • 普惠性幼儿园是公立还是私立的?
  • 农产品收购发票可以不抵扣吗
  • 库存商品盘盈怎么做账
  • 维护费抵减增值税会计科目
  • 营业外支出科目核算的内容
  • 如何理解会计的本质
  • 如何计算债券实际收益
  • 安全费用支付
  • 收到技术服务费的账务处理
  • 票已收到、款未付会计分录
  • 代发工资业务流程
  • 生产成本是直接成本吗
  • 招标付款条件及比例
  • 办理分公司的流程样本
  • MySQL数据库中把表中的一个字段重命名
  • MySQL 5.7.18 release版安装指南(含有bin文件版本)
  • Win Server 2008 r2 开启 Aero 桌面主题的方法
  • windows2003硬盘分区
  • win7系统cpu占用率过高怎么办
  • xp系统蓝屏解决
  • uca1
  • centos最小化安装配置网络
  • 腾讯tp驱动
  • iphone服务器
  • Win10应用程序无法正常启动0xc000007b
  • dos打开usb端口
  • js中的filter方法和map方法
  • js数组操作函数
  • nodejs基础教程
  • js倒计时结束操作
  • 查询同一网段下的其他ip
  • javascript消息对话框
  • 天津国税局电子税务局
  • 如何在网上查看自己的征信
  • 超豪华小汽车需要在什么环节纳税
  • 工商税务登记流程视频
  • 水利基金要收滞纳金吗
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设