前沿重器[31] | 理性聊聊ChatGPT

前沿重器

栏目主要给大家分享各种大厂、顶会的论文和分享,从中抽取关键精华的部分和大家分享,和大家一起把握前沿技术。具体介绍:仓颉专项:飞机大炮我都会,利器心法我还有。(算起来,专项启动已经是20年的事了!)

2022年的文章合集,累积起来有60w字,在这:CS的陋室60w字原创算法经验分享-2022版。

往期回顾

  • 前沿重器[26] | 预训练模型的领域适配问题

  • 前沿重器[27] | 从遗忘问题到预训练轻量化微调

  • 前沿重器[28] | 前沿的向量召回都是怎么做的

  • 前沿重器[29] | ERNIE-Search:向交互式学习的表征式语义匹配代表作

  • 前沿重器[30] | 聊综述-预训练模型在信息检索中的应用

最近的ChatGPT可谓是非常火,但是目前看的信息来看都更像是一些外宣类的文章,对于一些技术的讲解和解读,却是比较少的,这对于在做技术的我们来说其实挺尴尬,为了让大家更好地理解这个模型,给大家讲一些ChatGPT的技术细节以及我的理解和分析,而不是看热闹就完了。

懒人目录:

  • 简单说说原理。

  • 有关里面的细节讨论。

  • 优点和缺点。

  • 他真就那么强吗?

简单说说原理

先叠甲,我本身不是做对话生成的,对这块比较陌生,再者对prompt也不是很擅长,所以聊的可能会有不对,大家轻喷。

说实话,现在知乎百度搜的内容,基本都是新闻和一些简述,很硬核的文章是真的难找,这里给大家一些推荐吧,这些事我看的比较好的材料,大家可以参考:

  • ChatGPT会取代搜索引擎吗?https://zhuanlan.zhihu.com/p/589533490,张俊林前辈的大作。

  • InstructGPT与Instruction Tuning: 管中窥豹ChatGPT,https://zhuanlan.zhihu.com/p/589734619。

  • ChatGPT内核:InstructGPT,基于反馈指令的PPO强化学习.https://zhuanlan.zhihu.com/p/589747432

  • ChatGPT/InstructGPT详解:https://zhuanlan.zhihu.com/p/590311003

剩下还有不少,我都会放在最后的参考里。

有这些资料,基本能够理解这个chatgpt的基本原理和技术点了。

这里我还是简单聊一下,主要思路是根据张俊林前辈的来会更好理解一些吧,主要是3个阶段。

  • 通过人工标注等方式,使用监督学习的模式对GPT3模型(对这个是chatGPT模型的base)进行初步训练(有监督微调,SFT),从而得到一个初步能够理解语言的模型,尤其是prompt的模式。

  • 训练回报模型,或者说打分模型,这是一个强化学习专用的概念(缺课的去补补哈),这个打分模型是用来给“提示-答案”这个组合打分的,使用的数据和阶段1类似,用模型生成的可选项,进行人工标注,最后构造pair wise的learning to rank任务训练得到。

  • 第三阶段则是使用强化学习,即阶段2的回报模型reward来对模型进行训练。模型生成结果,reward进行打分,然后reward能够往前传递,这里有提到一个概念就是PPO(Proximal Policy Optimization[5]),是强化学习的一种策略,详情可看(Proximal policy optimization algorithms)。

可见,2阶段的回报模型是3阶段优化的关键,当且仅当这个回报模型足够的好,后续训出来的模型才是可靠的。

有关里面细节的讨论

强化学习

首先是强化学习,这点其实是我自己比较想聊的,毕竟在知乎,就是不久前其实就有不少的声音在说强化学习并不适合在NLP任务上使用,但在这里,强化学习似乎存在一定的,甚至比较大程度的贡献,说打脸应该没什么毛病,至少这个实验验证来看还是能用的,至于用得好不好,比其他策略好还是差,可能有待进一步实验。

在部分观点看来,强化学习的贡献似乎不是一个关键因素[1],强化学习强调的是用这个回报函数构造强化学习来进行调优,然而换个看起来比较下位的策略,就是基于这个回报函数,构造训练数据来直接finetuning模型,可能也能取得更好的效果,其实本质是调整为更为朴素的反向传播,可能也能取得类似的效果。

没试验过,不好说结论,但好像多少是有些道理的,具体可能要做消融之类的才能够充分验证吧。

过度训练的偏移

在阶段3的训练过程中,可能会逐步偏离两个出发点的核心,分别是阶段1的有监督微调和阶段2的汇报模型背后的分布,对于前者,此处是对训练目标增加了一个通用的语言模型指标,一定程度保证模型的通用型,而后者,则是采用KL散度惩罚项的方式,惩罚那些模型生成的和汇报模型数据分布不一致的部分[4]。

有关数据集的问题

数据应该是这篇文章,乃至背后的内核InstructGPT,其成功很大程度依赖一个关键因素,那就是数据,这个数据构造里面也是大有说法。

首先是阶段1,即有监督学习的数据,其实是人工标注的,标注的内容是,根据内容编写prompt来得到的,具体包括以下几种情况:

  • 简单任务:标注者给出一个简单的提示,并且还要确保提示的多样性。

  • Few-shot任务:单个指示,有多个query-response对。

  • 用户相关的:从接口中获取用例(实际对话的例子),标注者通过用例编写提示。

而在阶段2,其实就是要训练一个可靠的回报函数,这批数据的产生来源是模型,模型会生成一批候选样本,标注者会对他们进行排序,这个排序的背后其实就是打分了。

阶段3没有进行人工标注,是直接用GPT-3API的用户数据,对应不同的任务的数据,包含生成、问答等。

我们可能会猜想数据和任务的设计可能会很复杂,然而现在看来,好像比想象要简单一些,标注任务其实是简单的,然而对标注人员的挑战其实不小,例如对prompt的编写。

有关优缺点的讨论

挺多文章都有聊过这套模型和方案的优缺点,我这里汇总一下吧,基本上是参考了[4]和[7]的,带了一些自己的见解。

首先是优点:

  • 相比他们的base,即GPT3,具有更强的泛化和生成能力,最终预测的结果会有更真实,这点毋庸置疑了,大家都有去试这个东西,多少有些感受。

  • 我想大家也有发现,模型似乎有更强的coding能力,对一些简单的任务,他是能生成可用可执行的代码的,这个点似乎在GPT3上也有体现,据说是因为本身这类数据也有在训练数据里。

有关安全性这点,有些文章会提到它的安全性有提升,但是在实际体验上,模型似乎还是会因为诱导,说一些妈见打或者是容易被封的言论的,这个特别指出,我自己是不太想把这个放在优点里吧。

至于缺点,其实还挺多的,这有待各位大神进一步深入研究。

  • 首先还是大模型的问题,这个是大模型共有的问题,长期关注我的朋友都有发现,这个问题仍然是大问题,要解。相似相关的论点其实在车万翔老师的文章里也有提到[7],这其实会衍生很多问题,这点有时间我也会展开聊一下,此处先不赘述。

  • 在通用任务上的能力会下降。这个可能是意料之中的事,毕竟他把任务专注到了特定的内容上了,别的领域或者任务就可能会出现效果下降的情况,前面有提到在损失函数上加上惩罚,这个能一定程度上有优化吧,但这其实还是专注任务和通用性之间的权衡罢了。

  • 安全性问题仍旧存在,这点还是不好控制。

  • 模型对prompt的过度敏感,这个可能和数据量有关吧,这个本身人工标注生成就有限,模型的训练只能依赖这个,很难避免,后续更好的方式还有待提出吧。

  • 对长结果、详细结果的倾向性。

  • 生成模型老生常谈的“一本正经的胡说八道”的问题,这个背后的原因很大程度和知识的原因有关,毕竟模型现在已经具备输出流畅结果的能力了,但和诺问题和知识挂钩,例如鲁迅的生卒年之类的问题,如果接触不到,自然就回答不了或者回答不对,此时模型会很直接的随便写个时间了。

  • 这里其实人工标注的依赖比较明显,毕竟其实NLP场景,尤其是对话系统,其实很少有什么好的用户反馈路径,导致我们无法闭环获取可供训练的可靠数据。类似搜索、推荐可能还有点击数据,偶尔可能会吐槽一下数据质量问题,但是对话系统,很多时候是真的没有。

他真有那么强吗

鉴于现在全网在吹,各种热度(em...包括我也在蹭),但是我还是想泼点冷水吧。我分几个角度来聊。

这只是一次模型的外宣罢了

GPT其实吃过一次亏的,众所周知,GPT其实发布在BERT之前,BERT却取得了很大的热度,与之类似的还有ELMO这种里程碑式的技术被淹没,正面的例子也有prompt之前无人问,在综述出来后天下知,除了本身的效果原因,很大程度原因我自己更希望归结于一个优秀的外宣,其内核InstructGPT的发布时间是3月份,很多博客的原理解读其实都是围绕这篇论文来讲的,然而却在12月份火了起来,很大程度上和这个API接口的发布有关,他被搭建成一个可供用户交互的产品被发布出来,用的人多觉得有趣,而且很多人其实对这个领域不了解,用这个感觉很流畅就开始觉得很厉害了。

很多人可能试了几个就觉得牛,但其实本质上牛的点可能不见得是InstructGPT牛导致的:

  • 流畅性这点,生成领域的不多说,现有技术基本能达到,差距可能只有在大的数据集下用统计指标测才可以分出高下。

  • 试了几个就说牛,只能说是比较外行了。。。抛开统计指标谈效果没什么意义对吧。

  • 有关coding的问题,考据到GPT3似乎就已经一定程度具备了,只是大家没有试罢了,具体效果不知道多好就不知道了。

所以我首先想说的,这个东西之所以火,很大程度是因为这次成功的产品化和成功的外宣,当然,背后的技术也撑得起这次的外宣,从而形成了团队、模型、产品的多方面成功。而作为技术人而言,也可能不只是技术人,想做的更有深度的话,在尝试完之后就该开始思考内部的技术细节以及我们能不能逼近和超越或者在他们基础上做一些什么别的事情。

再叠个甲,我没说技术不行,但是只把火或者是出头归结于技术,是肯定局限了的。

闭环问题

rumor最近发了一篇有关ChatGPT的闭环问题的文章(只有我一个人对ChatGPT感到蕉绿吗?),诚然对话系统的一个很痛的问题,就是闭环问题,对话系统在很多场景是真的没法闭环,哪怕是一些客服系统有“满意or不满意”之类的让用户填的东西,但是用户多半不填,量太少撑不住,所以归结起来我们很难得到闭环数据,先别说质量问题了。

然而ChatGPT做到了吗,我的观点是,前进了一步但是还不算做到。前进一步,是真的在用了生成,结合回报函数来进行迭代优化,但未算做到是因为他仍旧依赖了人工标注数据,这个数量可能在这个问题下比较少,但是泛用性约束在此,而且是在比较关键的1和2阶段,而且还不只是标注那么简单,而是去写prompt,这对标注人员能力要求似乎还更高了,再者,他这只是针对一个任务,而在多任务下,通用任务下,他的效果其实反而有所降低,这点其实在前面的文章里有提到。

也可能是我对闭环的要求比较高吧,一个反馈信息可以盘活整个系统,但是偏偏这个反馈,对话系统还是无法从根本上绕开标注这个用来做反馈优化的步骤。

端到端or非端到端

工业界会更倾向于非端到端的模式来做,原因很多,这个我最近的文章正好就在聊这个(心法利器[78] | 端到端任务的拆解设计),主要是出于可控性、可维护性、安全性等原因吧,例如chatapi因为很多原因,大家对安全性的容忍度很高,但是到了很多实际产品中,安全性的问题可以被上升到很大程度,所以一定需要加以控制,而这种控制模型不见得能做得很好,所以很多时候我们会搭建一个生成模块后,会辅以一个安全模块来监控。

一本正经的胡说八道

这个问题其实是生成领域里经常谈到的问题了,对于一些模型不知道的知识,模型在回答策略上更倾向于说一些通顺但逻辑上不对的话,不像人有更为丰富的对话策略(例如搪塞、反问或者直接拒绝回答),这里有好多衍生点:

  • 让模型尽可能可以多获取或者多学习丰富的知识,但是学无止境,现阶段技术可能无法做得到。

  • 模型可能需要具备更新知识的能力。

  • 模型需要有意识地识别出什么问题能回答,回答的对不对等,其实有这个意识就已经是一个大突破了。

  • 生成模型在对话策略的选择上,可以更为丰富,这点其实也是为什么非端到端的形式能成为主流的原因,因为策略上是可控的。

chatGPT会有替代传统搜索吗

我觉得要分开看,这要把他区分为把chatgpt当做产品看,还是当做技术看。

如果是当做产品看,这个产品无疑是替代不了搜索的,一个很简单的道理,搜索需要多样性,这给一个答案的样子,很难满足很多多样化的搜索需求。这个本质更像是一个对话产品,一个功能相对丰富但是形态比较简单的对话产品,他只有文本回复,而没有更加多模态的回复(当然期待一手GPT4能做更多事情了),例如商品搜索、音乐搜索,这些事目前的他也做不到,所以说替代真的为时尚早。

至于当做技术来看,我自己是觉得,会成为一种比较新颖的方式吧,在一些问答之类的场景下,他能给出精准而又详细的回复,是可以当做是检索结果之一的,最终的筛选排序,可以进行综合判断,例如置信度高才出来,否则不出,其实也是不错的。而更深层次,这里的数据处理方式、训练策略等,这些东西可能会被借鉴,最终用在搜索里吧。

chatGPT会替代程序员吗

不会吧不会吧,不会真有人觉得程序员的工作只有写代码吧。

按照我的经验,对于一个熟练的程序员,写代码本身其实是时间最少也是最后的工作,难点在于,要写什么代码,写在哪以及怎么写,这也就是前期的技术方案确定,这件事对目前的AI来说还太难了,他可能可以帮你实现一个冒泡排序,但是他绝对不能告诉你该在哪里写,为什么要写。

对于现在的AI,顶多只是个生成器罢了,而且,最近也有消息流出Stack Overflow禁止 ChatGPT,上面说的一本正经的胡说八道的问题在程序员这个领域会被放大的,因为他说的话我们也无法完全判别对错,只有去尝试才会知道,踩坑了就真的坑。

怎么说呢,我们手里有技术,不该把这事当做一个危机,而应该是一个机会吧。

参考

[1] ChatGPT会取代搜索引擎吗?https://zhuanlan.zhihu.com/p/589533490
[2] InstructGPT与Instruction Tuning: 管中窥豹ChatGPT,https://zhuanlan.zhihu.com/p/589734619
[3] ChatGPT内核:InstructGPT,基于反馈指令的PPO强化学习.https://zhuanlan.zhihu.com/p/589747432
[4] ChatGPT/InstructGPT详解:https://zhuanlan.zhihu.com/p/590311003
[5] Proximal policy optimization algorithms
[6] 哈工大车万翔:自然语言处理范式正在变迁:https://mp.weixin.qq.com/s/FoY888g9nv5mw2kz4IWY5A
[7] 只有我一个人对ChatGPT感到蕉绿吗?https://mp.weixin.qq.com/s/vKiy2zEPWa9FL4BFJpUgcQ
[8] Training language models to follow instructions with human feedback:https://arxiv.org/abs/2203.02155

b516f7e4bd463d54fec34dc524ec9243.png

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

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

相关文章

好文转载 基于chatgpt开发QQ机器人

格言:自立才能自主,靠人更须靠己。有志之人立长志,无志之人常立志。千里之行,始于足下;艰难困苦,玉汝于成。少壮不努力,老大徒伤悲。✊✊✊ 📫 如果您觉得文章里有错误的地方&#x…

chatgpt赋能python:Python访问QQ:实现跨平台即时通讯的利器

Python 访问 QQ:实现跨平台即时通讯的利器 介绍 QQ是目前国内最广泛使用的即时通讯软件之一,其强大的功能和用户群体优势使其成为了广大网民沟通交流的首选工具。但是,由于QQ使用了闭源协议,因此无法对其进行深度的二次开发&…

观点丨Fortinet谈ChatGPT火爆引发的网络安全行业剧变

FortiGuard报告安全趋势明确指出“网络攻击者已经开始尝试AI手段”,ChatGPT的火爆之际的猜测、探索和事实正在成为这一论断的佐证。攻守之道在AI元素的加持下也在悄然发生剧变。Fortinet认为在攻击者利用ChatGPT等AI手段进行攻击的无数可能性的本质,其实…

ChatGPT火出圈,英语老师如何用起来?

原文:ChatGPT火出圈,英语老师如何用起来? 人工智能对话聊天机器人ChatGPT从去年11月底推出后就在社交媒体上走红,到今天注册人数已经超过了一亿。 小编想,最近许多朋友的生活中,可能也是或多或少都被 Chat…

ChatGPT火爆来袭,携手参与为开源助力

前言: Hello大家好,我是Dream 。最近语言模型ChatGPT在网络上一阵大火,ChatGPT 以惊人的速度问世,在技术圈中引起了广泛讨论。在 GitHub 上近期还诞生了多个 ChatGPT 相关的开源项目,数量之多令人瞠目结舌,…

Python 第一难保,要看 ChatGPT 火不火?TIOBE 6 月榜单发布!

整理 | 郑丽媛 出品 | CSDN(ID:CSDNnews) 本周,6 月 TIOBE 编程语言排行榜已更新,一起来看看这个月各大编程语言有何最新变化吧! Python 会保持第一吗? 编程语言的流行度,除却易用性…

ChatGPT火爆科研圈,登上《Nature》《Science》正刊

ChatGPT火出圈了,几乎涉及到各行各业的每个领域,科研圈更甚。 《Science》期刊主编H. HOLDEN THORP发表关于ChatGPT的社论: “ChatGPT is fun, but not an author”。 “ChatGPT 很好玩,但不是作者” 文章指出,许多担忧…

ChatGPT 火爆,程序员会不会被取代?答案都在这里!

作者 | 王启隆、唐小引 出品 | CSDN(ID:CSDNnews) “技术日新月异,人类生活方式正在快速转变,这一切给人类历史带来了一系列不可思议的奇点。我们曾经熟悉的一切,都开始变得陌生。” ——约翰 冯 诺依曼&…

ChatGPT 火爆,最全 prompt 工程指南登 GitHub 热榜,标星 4.7k!

转自 | 新智元 编辑 | 好困 Aeneas 如何才能让大规模语言模型输出自己想要的结果?现在,一本超全超详提示工程指南来了,GitHub已标星4.7k。 提示工程,可以说是玩转ChatGPT、DALLE 2等等这类AI模型的「必修课」。 但这个「提示」&am…

生成式 AI:百度“文心一言”对标 ChatGPT?什么技术趋势促使 ChatGPT 火爆全网?

文章目录 前言一、生成式 AI 的发展和现状1.1、什么是生成式 AI?1.2、生成式 AI 的发展趋势1.3、AI 生成内容的业务场景和分类 二、生成式 AI 从分析领域到创作领域2.1、 降低内容创作门槛,增加 UGC 用户群体2.2、提升创作及反馈效率,铺垫线上…

Fortinet谈ChatGPT火爆引发的网络安全行业剧变

FortiGuard报告安全趋势明确指出“网络攻击者已经开始尝试AI手段”,ChatGPT的火爆之际的猜测、探索和事实正在成为这一论断的佐证。攻守之道在AI元素的加持下也在悄然发生剧变。Fortinet认为在攻击者利用ChatGPT等AI手段进行攻击的无数可能性的本质,其实…

OpenAI chatGPT火爆出圈,世界悄悄发生着变化

OpenAI chatGPT火爆出圈,世界悄悄发生着变化 一、为什么突然火起来了?二、ChatGPT功能示例2.1 [AI聊天](https://chat.openai.com/chat)2.2 [AI写新闻稿](https://chat.openai.com/chat)2.3 [AI写代码](https://chat.openai.com/chat)2.4 [AI写论文](htt…

2.如何用chatgpt辅助撰写英文简历(同样可实用中文)

写在最前面的申明,我参考的方法源头来自于微博“梁钰stacey”的微博,同时结合自身校招需求,进行自我梳理和总结能够满足自身需求地一套流程方法,侵删。 首先,建议撰写中文简历大纲,并将其直接扔进谷歌翻译中…

ChatGPT会如何改变制造业?

来源 | Smart Industry Edgenesis编译 ChatGPT最新版本的发布成为热门头条。OpenAI表示该版本的ChatGPT能够在多个专业测试中达到“人类水平”的表现,例如司法考试和SAT考试。不过,在工业领域中,ChatGPT能够发挥怎样的作用呢?Sma…

fine tune openAI model ( 微调chatgpt)

了解如何为自己的应用程序定制模型。 介绍 微调可以从API提供的模型中获得更多信息: 比 prompt 设计更高质量的结果能够在超过 prompt 范围的示例上进行训练更短的 prompt 节省了token更低的延迟请求 微调包括以下步骤: 准备并上传训练数据训练一个…

ChatGPT之深度强化学习DRL理解

参考文献:Part 1: Key Concepts in RL — Spinning Up documentation In a nutshell, RL is the study of agents and how they learn by trial and error. (RL是对agent如何试错的一个研究)It formalizes the idea that rewarding or punishing an agen…

《花雕学AI》19:比较ChatGPT与新Bing在文章润色方面的应用优势与测试案例

引言: 文章润色是指对已经写好的文章进行修改、优化或完善的过程,以提高文章的质量和效果。文章润色涉及到多方面的内容,如语言表达、逻辑结构、文献引用、格式规范等。文章润色对于提升写作水平、提高论文发表率、增加学术影响力等都有重要意…

GPT润色论文的 10 个指令!

以下是 10个实际使用 ChatGPT 进行润色的例句: 1、精简文章内容: 输入“删除不必要的内容〞,可以删除文章中的冗余内容,使文章更加紧凌。例如:文章中有些内容并不是与主题相关,使其文章会更加简洁明了。 …

用GPT可以润色论文吗-chatgpt翻译润色软件

用gpt翻译润色可以吗 使用GPT(Generative Pre-trained Transformer)进行翻译和润色是可行的,因为GPT是目前自然语言处理领域中最受欢迎的预训练语言模型之一,它通过大规模的语料库训练而成,具备强大的自然语言理解和生…

英文翻译润色-chatGPT英文润色软件

chat英文润色英文会有问题吗 Chat GPT 英文润色输出的质量通常很高,但是在某些极端情况下可能会出现语言不连贯、逻辑混乱以及不准确的情况。这主要是因为英文语言的复杂性以及润色软件算法的复杂性决定的。因此,在进行英文润色时,最好是对输…