ChatGPT的前世今生

作者🕵️‍♂️:让机器理解语言か

专栏🎇:NLP(自然语言处理)

描述🎨:让机器理解语言,让世界更加美好!

寄语💓:🐾没有白走的路,每一步都算数!🐾

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

前言

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

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

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

注:FineTune: 基于预训练模型(Pre-trained mode)进行的微调(Fine Tune )。

Q:finetune 就是微调的意思,那为什么要微调呢,为什么不能自己重新训练一个网络呢?

A:因为我们没那么多样本,没那么高超的技术使神经网络合理且有用,因此我在训练好的模型的基础上只训练其中一个或几个层,而把其他层的参数都冻结起来。相对于你从头开始训练(Training a model from scatch),微调为你省去大量计算资源和计算时间,提高了计算效率,甚至提高准确率

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

一、还得从 Bert 说起

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

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

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

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

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

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

二、GPT 初代

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

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

4c60c91304f8a355e906eae264b44b8d.png
Transformer结构

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

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

语言是一个显式存在的东西,但大脑是如何将语言进行理解、转化和存储的,则是一个目前仍未探明的东西。因此,大脑理解语言这个过程,就是大脑将语言编码成一种可理解、可存储形式的过程,这个过程就叫做语言的编码。相应的,把大脑中想要表达的内容,使用语言表达出来,就叫做语言的解码

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

623aa4dfad2a96334c637a67ca6ea4c8.png
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 的基础上,又添加了多个任务扩增了数据集和模型参数,又训练了一番。

afa7f5f8946d0464d00348d06d053c4d.png
GPT-2学习效果图

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

四、GPT-3

大模型中的大模型

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

91b2496d5f4101e4a287bbd85008dfc8.png
训练中使用的计算总数

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这也才过去没几年。

注:条件随机场Conditional Random Field,CRF)是自然语言处理的基础模型,广泛应用于中文分词、命名实体识别、词性标注等标注场景

in-context learning(上下文学习)

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

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

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

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

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

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

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

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

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

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

如果想让模型回答问题:

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

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

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

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

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

ea3f247eda4fe94c1167f700e8b8184c.png

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

088bd16a68d8c8f9449b971ce8c35dd4.png

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

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

a198927d2159c46813821e9aac2e9bf8.png

这个表格彷佛在嘲讽我:哎,你没钱,你就看不着这种优质的效果,你气不气?

五、chatGPT

charGPT 模型上基本上和之前都没有太大变化,主要变化的是训练策略变了。

强化学习(Reinforcement Learning

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

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

35a7c171b6daf05d573787c598d7a2b6.png
NLP + 强化学习

强化学习之所以能比较容易地应用在围棋以及其它各种棋牌游戏里,原因就是因为对于 alpha Go 而言,环境就是围棋,围棋棋盘就是它的整个世界。

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

0d059e875aacde6f41d60bfc26f999a9.png

底下回答一片唱衰,原因就是因为,NLP 所依赖的环境,是整个现实世界,整个世界的复杂度,远远不是一个19乘19的棋盘可以比拟的。无法设计反馈惩罚和奖励函数,即 reward 函数。除非人们一点点地人工反馈。

哎,open-ai 的 chatGPT 就把这事给干了。

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

3bb5c654c93d61ed058cd535f13d0e94.png

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

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

d03f21d259f475ed323cc33c65796a5e.png

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

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

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

7d9e893446d08d90cd2338a3d0e703a4.png

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

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

chatGPT 功能一览

  • 能回答知乎上的问题338e3a9d11bf816ece53b76fec66d579.png

  • 你别想耍它876322154383e6d453245dd43b2e1b6d.png

  • 能回答困难的问题e414a87ad9ec567aa2debe753b4fbe6b.png

  • 能理解乱序文本6b6651a76b9597ec19e58b577f048f74.png

  • 会做高数1c9206aa4e4a41c66d2e7ec200684cb3.jpeg

  • 知道自己是程序,不会做你女票4762237912cbae14d551ea0fcdabc7d6.png

  • 还能处理程序 bug

24df6562a9eed76b6b2ed781e07dd2db.jpeg

六、影响

NLP 领域的影响

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

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

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

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

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

63edfaeb2d78c130387b61cb1660945a.png

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

另一些影响

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

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

2cbf6da248296cbe82f000113b3b55ce.png

当然,完全不仅仅是程序界。据说 GPT-4 正在做图文理解,那么,对于教师、医生、咨询师、等等等等,各行各业,是不是都是一个巨大的冲击?所谓专业领域的知识门槛,也将被模型一步踏平。到时候,可能人类真的要靠边站了,除了某些高精尖的行业精英。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/870.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

无需GPU无需网络“本地部署chatGPT”(更新StableVicuna)

想当初图像生成从DELL到stable diffusion再到苹果的移动部署过了两三年吧 聊天bot才发展几个月就可以边缘部署了,如果苹果更新silicon,npu和运存翻倍,争取apple watch也能本地内置,最快ios18 mac、ipad、iPhone能内置吧 又是一个平…

说说最近的潮流ChatGPT

最近这个ChatGPT可谓是火遍全网,基本占据各个平台的热搜,如 “ChatGPT让苹果急了”“美国89%的大学生都是用ChatGPT做作业”,网友笑称终于有个懂我的AI了,再也不是“人工智障了” 这个ChatGPT到底神奇在哪里??? 官方给出的答…

苹果公司限制员工使用AI工具ChatGPT和GitHub Copilot

​关注文章下方公众号,即可免费获取AIGC最新学习资料 导读:苹果公司最近发布了一份内部备忘录,禁止员工使用生成式AI平台(包括ChatGPT和GitHub的Copilot等)用于工作任务。 本文字数:600,阅读时…

询问ChatGPT的高质量答案艺术——提示工程指南

目录 前言一、提示工程简介二、提示技巧2-1、生成法律文件2-2、添加提示技巧 三、角色扮演3-1、智能手机产品描述3-2、添加角色扮演 四、标准提示4-1、写一篇有关于新智能手机的评论4-2、添加标准提示、角色提示、种子词提示等等 五、示例很少、或者没有示例5-1、生成一个手机配…

视界 | ChatGPT横空出世,谷歌苹果都“急”了

最近ChatGPT简直火出圈了。 这是一款人工智能聊天机器人,网络上传得神乎其神。在传说中,ChatGPT会写诗、改论文、编程序、写文章、看病......,甚至还会写券商的行业分析报告,简直无所不能。 据说许多打工人已经在担心自己的饭碗…

chatGPT对经济的影响

公众号文章:chatGPT对经济的影响 问答 chatGPT对经济的影响是什么 请你扮演一位大学生,要做一场关于“chatGPT对经济的影响“的报告,请你详细讲述PPT制作构思以及开场白 好的,作为一位大学生,我非常荣幸能够在这里向…

把ChatGPT的所有插件整理成中文后!真要说卧槽了..

大家好,我是五竹。 ChatGPT如约向用户开放了联网功能和众多插件,五竹从上周开始满怀着热情等待着,看别人的测评效果都快把我羡慕哭了。最终等来的却是Plus账号给封了,而且至今也没有续上,只能说非常无奈。算了&#x…

ChatGPT的申请之路(2)

https://chat.openai.com/ 1、账号已经申请成功,选择Login 2、选择Continue with Apple 3、输入苹果ID 4、输入密码 5、继续 6、ChatGPT的画面终于出来了,红框为输入信息框 7、聊天示例 8、换中文试试

【ChatGPT 实践 1】Mac、Iphone、Ipad 集成 ChatGPT

环境准备 1 个 ChatGPT 账号 步骤概述 这里以 Mac 为例: 1、点击下面链接,添加 爱玩 快捷指令 https://www.icloud.com/shortcuts/2f6afbd6660e48e18a587bc90ede3932 (可能出现打不开的情况,比如 部分 Iphone 设备&#xff…

接入ChatGPT应用被苹果阻止更新,要求改成17限

萧箫 发自 凹非寺量子位 | 公众号 QbitAI ChatGPT开放API消息才出来,就有应用安排上了。 然而,苹果却把这次更新阻止了! 理由是人工智能可能会产生不适合所有受众的内容: 要么增加内容过滤功能,要么把APP适用人群改到1…

ChatGPT开源系列

目录 进化树 从GPT-4 可以看出未来 LLM 的哪些趋势?未来的研发方向和优化策略是什么? 模型 Stanford Alpaca 可以借鉴的点 llama.cpp 验证阶段已完成 nebullvm-chatllama(待定) 可以借鉴的点 OpenChatKit 可以借鉴的点&a…

ChatGPT飙升苹果商店榜首,每周订阅需7.99美元,结果是个假的???

衡宇 发自 凹非寺量子位 | 公众号 QbitAI ChatGPT出App版了,苹果商店下载就能使用?? 打开美国Apple Store搜索,下载后软件内每周付费7.99美元,即可享受与它无次数限制畅聊。 不过别忙着付费! 这个ChatGPT C…

OpenAI推出iOS版ChatGPT,支持语音输入

北京时间5月19日凌晨,OpenAI重磅推出iOS版ChatGPT。 据介绍,iOS版ChatGPT供免费使用,并在不同设备上同步聊天历史。 同时,它还集成了开源语音识别系统Whisper,可以实现语音输入。 另外,ChatGPT Plus用户在i…

AI在狂飙,ChatGPT-4可直接在iPhone上使用啦

今天凌晨,OpenAI 正式在 App Store 推出了 ChatGPT 的 iOS app,瞬间冲上苹果商店免费榜第二名,效率榜第一名。 于是兴致勃勃的去下载体验了一番。整体不错,以后手机使用官方的 ChatGPT 更方便啦!而且使用 GPT4 不再麻…

“我在 iPhone 上,创建了个 ChatGPT 快捷方式,这也太万能了……”

【CSDN 编者按】由 ChatGPT 提供支持的神奇快捷方式 S-GPT。 原文链接:https://medium.com/macoclock/heres-a-chatgpt-powered-shortcut-for-ios-that-will-blow-your-mind-c6aeebb77e00 未经允许,禁止转载! 作者 | Nikhil Vemu 译者 | 弯月…

ChatGPT为一位英语女教师做了这件事

文 / 高扬(微信公众号:量子论) 今天有位网友加我微信,是某中学的英语老师,通过“量子论”公众号知晓了ChatGPT的一些有趣玩法,询问是否有办法帮她做个提示词,依据一个单词生成配套学习资料。 即…

ChatGPT专业应用:英文语法纠错

正文共 381 字,阅读大约需要 1 分钟 英语学习者必备技巧,您将在1分钟后获得以下超能力: 英文语法纠错 Beezy评级 :B级 *经过简单的寻找, 大部分人能立刻掌握。主要节省时间。 推荐人 | Linda 编辑者 | Yolanda ●此图…

更好地提问ChatGPT_常用prompt表

对常见的用途,记录该表以便获得ChatGPT更高质量的回复。 类别目的提问方式要点文案写作周报、日报、年终总结本周我做了以下几件事情:出差客户办事处、交流演示、初步数据分析。请帮我写一份周报要点形式列举工作内容。可以说明职位,以便工作…

​使用ChatGPT进行文章降重​

#ChatGPTTOC 使用ChatGPT进行文章降重 在ChatGPT引领的技术爆炸时期,如何使用它对文章进行降重? 推荐一个实测简单有效的方法,只需两步: 简单来说就是先进行关键点提取再进行关键点扩写。 关键点提取 提炼出这段话的关键点和结论…

通过ChatGPT快速学习英语

我一直想提高自己的英语水平,这样看youtobe的时候也不至于经常要看字幕。现在借助ChatGPT,我们是不是可以让它生成一个专属的英语私教教练呢?事实上,还真可以。 具体方法如下: 设置单词库 设置场景,生成对…