关于ChatGPT八个技术问题的猜想

25f3f6dbd68b3a53abba3bac4856eac8.png

本文转载自知乎:@张家俊
原文链接:https://zhuanlan.zhihu.com/p/606478660
本文约5000字,建议阅读5分钟
对于ChatGPT表现案例的总结已经非常多了,这里主要总结一下自己对ChatGPT技术问题的一些思考。

看到ChatGPT的华丽诞生,心情很复杂,既高兴、惊喜,也感到恐慌,高兴和惊喜的是没有预料到这么快就见证了自然语言处理(NLP)技术的重大突破,体验到通用技术的无限魅力。恐慌的是ChatGPT几乎可以高质量地完成NLP中的大多数任务,逐渐认识到很多NLP的研究方向遇到了极大挑战。

总体而言,ChatGPT最令人非常惊艳的是它的通用性,相比于GPT-3需要通过设计非常精巧的提示来实现效果并不太好的各种NLP能力,ChatGPT已经让用户感受不到提示的存在。作为一个对话系统,ChatGPT让用户自然提问便可实现从理解到生成的各种任务,而且性能在开放领域几乎都达到了当前最佳水平,很多任务超越了针对特定任务单独设计的模型,并且在代码编程领域表现卓越。具体而言,自然语言理解能力(尤其是用户意图理解能力)十分突出,无论是问答、聊天、分类、摘要、翻译等任务,尽管回复不一定完全正确,但是几乎都能够领会用户意图,理解能力远超预期。相比于理解能力,ChatGPT的生成能力更加强大,可以针对各种问题生成具有一定逻辑且多样化的长文本。总的来说,ChatGPT表现出的更多是惊艳,是通向AGI的初步阶段,一些技术瓶颈解决后会更加强大。

对于ChatGPT表现案例的总结已经非常多了,这里主要总结一下自己对ChatGPT技术问题的一些思考,算是与ChatGPT断断续续交互两个多月的一个简单总结。由于无法了解ChatGPT的具体实现技术和细节,所以几乎都是主观猜想,肯定有很多不对的地方,欢迎一起探讨。

01 ChatGPT的通用性为何做得如此之好?

只要使用过ChatGPT,我们就会发现它不是一个传统意义上的人机对话系统,实际是一个以自然语言为交互方式的通用语言处理平台。2020年的GPT-3虽然拥有了通用能力的雏形,但是需要精心设计提示语来触发相应功能,而ChatGPT允许用户采用非常自然的提问就可以准确识别意图完成各种功能。传统方法往往先进行用户意图识别,再针对不同意图调用相应功能的处理模块,例如通过用户数据识别出摘要或翻译意图,再调用文本摘要或机器翻译模型。传统方法在开放域的意图识别准确率不够理想,而且不同功能模块各自为战无法共享信息,难以形成强大的NLP通用平台。ChatGPT突破了各自为战的模式,不再区分不同功能,统一认为是对话过程中的一种特定需求。那么,ChatGPT的通用性为何做得如此之好呢?一直在思考这个问题,由于没有条件实验证实,所以仅能猜想。根据Google的Instruction Tuning研究工作FLAN,当模型达到一定规模(e.g. 68B)且Instruction任务的类型达到一定数目(e.g. 40),模型就涌现出对新意图的识别能力。OpenAI从其开放的API中收集了全球用户各种任务类型的对话数据,根据意图分类和标注,然后在175B参数GPT-3.5上进行Instruction Tuning,自然就涌现出了通用的意图识别能力。

02 为什么面向对话的微调没有遭遇灾难性遗忘问题?

灾难性遗忘问题一直是深度学习中的一个挑战,经常因为在某个任务上训练后就丧失了在其他任务上的性能。例如,一个30亿参数的基础模型,先在自动问答数据上进行微调,然后在多轮对话数据上进行微调,结果会发现模型的问答能力大幅度下降。ChatGPT似乎不存在这个问题,其在基础模型GPT-3.5上进行了两次微调,第一次依据人工标注的对话数据进行微调,第二次根据人类反馈的强化学习进行微调,微调使用的数据很少,尤其是人类反馈的打分排序数据更少,微调后竟然仍然表现出强大的通用能力,而并没有完全过拟合到对话任务。这是个非常有趣的现象,也是我们没有条件验证的现象。猜测可能有两方面的原因,一方面是ChatGPT使用的对话微调数据实际可能包含了非常全面的NLP各种任务,正如InstructGPT中对用户使用API的问题分类可以发现,很多都不是简单的对话,还有分类、问答、摘要、翻译、代码生成等等,因此,ChatGPT实际是对若干任务同时进行了微调;另一方面,可能当基础模型足够大之后,在较小数据上的微调不会对模型产生很大影响,可能仅在基础模型参数空间非常小的邻域中优化,所以不会显著影响基础模型的通用能力。

03 ChatGPT的大范围上下文连续对话能力是如何做到的?

使用ChatGPT时就会发现它一个让人十分惊讶的能力,即使和ChatGPT交互了十多轮,它仍然还记得第一轮的信息,而且能够根据用户意图比较准确地识别省略、指代等细粒度语言现象。这些对我们人来说似乎不算问题,但是在NLP的研究历史中,省略、指代等问题一直是一个难以逾越的挑战。此外,在传统对话系统中,对话轮次多了之后,话题的一致性难以保障。但是,ChatGPT几乎不存在这个问题,即使轮次再多,似乎都可以保持对话主题的一致性和专注度。猜测这个能力可能有三方面的来源。首先,高质量的多轮对话数据是基础和关键,正如Google的LaMDA,OpenAI也采用人工标注的方式构造了大量高质量多轮对话数据,在此之上进行的微调将会激发模型的多轮对话能力。其次,基于人类反馈的强化学习因为提升了模型回复的拟人性,也会间接增强模型多轮对话的一致性能力。最后,模型对8192个语言单元(Token)的显式建模能力使其几乎可以记忆普通人一整天的对话数据,在一次对话交流中很难超出这个长度,因此,所有对话历史都已经被有效记忆,从而可以显著提升连续多轮对话的能力。

04 ChatGPT的交互修正能力是如何炼成的?

交互修正能力是智能的一种高级体现,对我们人来说稀松平常的事情却是机器的痛点。在交流过程中,被指出问题后我们会立刻意识到问题所在并及时准确地修正相关信息。对于机器而言,意识到问题、识别问题范围并更正对应信息的每一步都不是一件容易的事情。ChatGPT出现之前尚未看到过具有较强交互修正能力的通用模型。与ChatGPT交互后就会发现,无论是用户更改自己之前的说法还是指出ChatGPT的回复中存在的问题,ChatGPT都能够捕捉到修改意图,并准确识别出需要修改的部分,最后能够做出正确的修正。目前为止,没有发现任何模型相关的因素与交互修正能力直接相关,也不相信ChatGPT具有实时学习的能力,一方面是重启对话后ChatGPT可能还会犯相同错误,另一方面是基础大模型的优化学习从来都是从高频数据中总结频繁模式,一次对话无论如何也难以更新基础模型。相信更多的是基础语言大模型的一种历史信息处理技巧,不太确定的因素可能包括:(1)OpenAI人工构建的对话数据中包含一些交互修正的案例,微调后拥有了这样的能力;(2)人工反馈的强化学习使得模型输出更加符合人类偏好,从而在信息修正这类对话中表现得更加遵循人类的修正意图;(3)可能大模型达到一定规模(e.g. 60B)之后,原始训练数据中的交互修正案例就被学到了,模型交互修正的能力自然就涌现出来了。


05 ChatGPT的逻辑推理能力是如何学到的?

当我们询问ChatGPT一些逻辑推理相关的问题时,它并不是直接给出答案,而是展示出详细的逻辑推理步骤,最后给出推理结果。虽然鸡兔同笼等很多案例表明ChatGPT并没有学会推理本质,而仅仅学会了推理的表面逻辑,但是展示的推理步骤和框架基本是正确的。一个语言模型能够学习到基本的逻辑推理模式已经极大超越了预期,其推理能力溯源是非常有趣的一个问题。相关对比研究发现,当模型足够大,并且程序代码与文本数据混合训练时,程序代码的完整逻辑链就会迁移泛化到语言大模型,从而大模型就拥有了一定的推理能力。这种推理能力的习得有点神奇,但是也能理解,可能代码注释是从逻辑代码到语言大模型推理能力迁移泛化的桥梁。多语言能力应该也是类似的道理。ChatGPT的训练数据绝大部分是英文,中文数据占比极少,然而我们发现ChatGPT的中文能力虽然比不上英文,但是也非常强大。训练数据中的一些中英对照的平行数据可能就是英文能力迁移到中文能力的桥梁。

06 ChatGPT是否针对不同下游任务采用不同的解码策略?

ChatGPT有许多惊艳的表现,其中一个是它可以针对同一个问题生成多种不同的回复,显得很睿智。比如,我们不满意ChatGPT的回答,可以点击“重新生成”按钮,它立刻会生成另一种回复,若还是不满意可以继续让其重新生成。这一点在NLP领域并不神秘,对于语言模型来说是它的一个基本能力,也就是采样解码。一个文本片段的后面可能接不同的词语,语言模型会计算每个词语出现的概率,如果解码策略选择概率最大的词语输出,那么每次结果都是确定的,就无法生成多样性回复。如果按照词汇输出的概率分布进行采样,例如,“策略”的概率是0.5,“算法”的概率是0.3,然后采样解码输出“策略”的可能性就是50%,输出“算法”的可能性就是30%,从而保证了输出的多样性。因为采样过程是按照概率分布进行的,即使输出结果多样,但是每一次都是选择概率较大的结果,所以多种结果看起来都相对比较合理。对比不同类型的任务时,我们会发现ChatGPT的回复多样性针对不同下游任务差别比较大。针对“如何”、“为什么”等“How”、“Why”型任务时,重新生成的回复与之前的回复无论是表达方式还是具体内容具有较大差异,针对机器翻译、数学应用题等“What”型任务时,不同回复之间的差异非常细微,有时几乎没有变化。如果都是依据概率分布的采样解码,为何不同回复之间的差异如此之小。猜测一种理想情况可能是“What”型任务基础大模型学习到的概率分布非常尖锐(Sharp),例如学到的“策略”概率为0.8,“算法”概率为0.1,所以大多数时候采样到相同的结果,也就是前面例子中80%的可能性都会采样到“策略”;“How”、“Why”型任务基础大模型学习到的概率分布比较平滑(Smooth),例如“策略”概率为0.4,“算法”概率为0.3,所以不同时候可以采样到差异性较大的结果。如果ChatGPT能够学习到任务相关的非常理想的概率分布,那确实非常厉害,基于采样的解码策略就可以适用于所有任务。通常,关于机器翻译、数学计算、事实性问答等答案比较确定或者100%确定的任务,一般采用基于贪婪解码,也就是每次输出概率最高的词语。如果希望输出相同语义的多样性输出,大多采用基于柱搜索的解码方法,但较少采用基于采样的解码策略。从与ChatGPT的交互看,所有任务它似乎都采用了基于采样的解码方法,真是暴力美学。


07 ChatGPT能否解决事实可靠性问题?

答案缺乏可靠性是目前ChatGPT面临的最大挑战。特别是针对事实性和知识性相关的问答,ChatGPT有时候会一本正经地胡编乱造,生成虚假信息。即使让它给出来源和出处或者参考文献,ChatGPT通常也会生成一个不存在的网址或者从未发表过的文献。不过,ChatGPT通常会给用户一种比较好的感觉,也就是很多事实和知识它似乎都知道。实际上,ChatGPT就是一个语言大模型,语言大模型本质就是一种深度神经网络,深度神经网络本质就是一种统计模型,就是从高频数据中习得相关模式。很多常见的知识或事实,在训练数据中出现频率高,上下文之间的模式比较固定,预测的词语概率分布就比较尖锐,熵比较小,大模型容易记住,并在解码过程中输出正确的事实或知识。但是,有很多事件和知识即使在非常庞大的训练数据中也很少出现,大模型便无法学习到相关模式,上下文之间的模式比较松散,词语预测的概率分布比较平滑,熵比较大,大模型在推理过程中容易产生不确定性的随机输出。这是包括ChatGPT在内所有生成式模型的固有问题。如果仍然延续GPT系列架构,基础模型不做改变,从理论上讲是难以解决ChatGPT回复的事实可靠性问题。和搜索引擎的结合目前看是非常务实的一种方案,搜索引擎负责搜索可靠的事实信息来源,ChatGPT负责总结和归纳。如果希望ChatGPT解决事实回答的可靠性问题,可能需要进一步提升模型的拒识能力,也就是过滤掉模型确定无法回答的那些问题,同时还需要事实验证模块来验证ChatGPT回复的正确性。希望下一代GPT能够在这个问题上取得突破。

08 ChatGPT能否实现实时信息的学习?

ChatGPT的交互修正能力使得它看起来似乎拥有了实时的自主学习能力。正如上述讨论,ChatGPT可以依据用户提供的修改意图或者更正信息,立刻修正相关回复,表现出实时学习的能力。实则不然,学习能力体现的是学到的知识是普适的,可以运用在其他时间和其他场合,但是ChatGPT并没有展现出这个能力。ChatGPT只是在当前的对话中能够根据用户反馈进行了修正,当我们重启一个对话,测试相同的问题时,ChatGPT还会犯相同或类似的错误。一个疑问是为何ChatGPT不将修改后正确的信息存储到模型中呢?这里有两方面的问题。首先,用户反馈的信息并不一定是正确的,有时候故意引导ChatGPT做出不合理的回答,只是因为ChatGPT在基于人类反馈的强化学习中加深了对用户的依赖程度,所以ChatGPT在同一个对话过程中会非常相信用户的反馈。其次,即使用户反馈的信息是正确的,但因为可能出现频率不高,基础大模型不能根据低频数据更新参数,否则大模型就会对某些长尾数据进行过拟合从而失去通用性。所以,让ChatGPT实时进行学习非常困难,一种简单直观的方案就是每经过一段时间就利用新的数据微调ChatGPT。或者采用触发机制,当多个用户提交相同或相似反馈时触发模型的参数更新,从而增强模型的动态学习能力。

2cfa4a0b30fac9810d5957ea0f43ccbf.png

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

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

相关文章

【MOSS】首个开源免费的「中国版ChatGPT」MOSS!全新插件系统,能上网,会鸡兔同笼——复旦开源

GitHub - OpenLMLab/MOSS: An open-source tool-augmented conversational language model from Fudan University An open-source tool-augmented conversational language model from Fudan University 目录 🗒️ 开源清单 模型 数据

阿里版ChatGPT「通义千问」邀请测试,我们第一时间试了试

机器之心报道 机器之心编辑部 ChatGPT 赛道,真正的竞逐开始了。 没有一点点预告,阿里版的 ChatGPT 语言大模型来了。 4 月 7 日下午,阿里云突然宣布自研大模型开启企业邀测,模型名为「通义千问」。 官方非常低调,表示…

ChatGPT 究竟在做什么?它为何能做到这些?(1)

ChatGPT能够自动生成一些表面上看起来像人类写出的文字的东西,是一件很厉害且出乎大家意料的事。那么,它是如何做到的呢?又是为何能做到呢?我在这里想大致介绍一下ChatGPT的内部机理,然后探讨一下为什么它能很好地生成…

只有我一个人对ChatGPT感到蕉绿吗?

卷友们好,我是rumor。 上周四,在国内公众号还没刷屏的时候,我就看到ChatGPT发布的消息了,当时迅速看了下博客内容,心想「就这?」,这不跟DeepMind的Sparrow一样吗?而且设计的还没它好…

90%的留学生都在用ChatGPT写毕业论文?

ChatGPT终于火到中文圈了! 在这两个月ChatGPT已经从少数人关注的“新鲜玩意儿”,发展成让欧美大学如临大敌的“论文神器”。这究竟是怎么回事呢? 在教育领域,根据一项针对18岁以上学生的调查显示,89%通过ChatGPT完成作…

chatgpt赋能python:Python卡了怎么办:一位有10年编程经验工程师的实用建议

Python卡了怎么办:一位有10年编程经验工程师的实用建议 Python是一门强大的编程语言,它以其简单易懂、灵活多变和高效的特性,成为了全球各个领域中广泛使用的工具。但是,即使是最出色的编程语言,也难免会遇到卡顿的情…

巧用ChatGPT 解决 Hbase 快照方式读性能优化问题

一、背景 最近公司采用Hbase scan 的方式,经常性会遇到任务跑不出来region 读取超时,由于scan 全量数据,合计行数10个亿,列数接近500。根据建议方案,改为Hbase 快照读方式,避免给region 造成过大压力 二、…

npm安装时卡在sill idealTree buildDeps,npm安装卡在一个地方不动

造成上述问题的原因是因为node的默认安装环境在国外,因此我们只需要修改下镜像的地址即可 1、采用taobao的镜像地址,进入cmd之后输入: npm config get registry 3、此时可以继续输入之前的npm install 命令 npm install 附加知识&#x…

【鸡汤里面的干货】农村娃娃毕业不到四年在深圳核心地段安家置业的背后是什么在支撑?

大家好啊,我就是那个【天涯何处无知己,人穷陌路勿担忧】的架构师李肯! 架构师李肯(全网同名) 在深圳白手起家,毕业不到4年实现一线城市核心地段的安家梦,从0开始谱写励志人生!一个专…

【LLMs系列】90%chatgpt性能的小羊驼Vicuna模型学习与实战

一、前言 UC伯克利学者联手CMU、斯坦福等,再次推出一个全新模型70亿/130亿参数的Vicuna,俗称「小羊驼」(骆马)。小羊驼号称能达到GPT-4的90%性能 github 地址: GitHub - lm-sys/FastChat: An open platform for training, servi…

如何让chatgpt给我们实现一个桌面便签?

我: 用Java开发一款桌面便签软件。功能需求:1、便签可以钉在桌面任意角落;2、便签内容实时保存到本地;3、有新增按钮,点击新增时清除当前面板上的内容,新建一条新的便签内容,并保存到本地&#…

ChatGPT - 小试牛刀 - 试水排序算法

在网上找了几家国内的chagpt镜像,最后还是没忍住上车了,试了一下传说中的写代码能力,果然鸟得很。 不废话直接上图: 上面的测试地址是 唠嗑么ChatGPT国内镜像网站,从站点上也能看到ChatGPT的能力了,什么写…

九龙证券|通信巨头火了!地产板块异动拉升,龙头获主力资金追捧

今天,11个职业取得主力资金净流入。 今天沪深两市主力资金净流出106.7亿元,其中创业板净流出27.79亿元,沪深300成份股净流入18.55亿元。 申万一级职业中,今天有25个职业上涨,房地产职业涨幅居首,达3.69%&a…

火爆全网的chatGPT,究竟是什么东西?

ChatGPT似乎用一夜的时间,让人们记住了无所不能的它!它是谁,凭什么有如此魅力?甚至让拥有ChatGPT概念的股票,接连封板? 下面我们先来对它做个了解。 简单来说,ChatGPT就是由人工智能研究实验室&…

今天我们来浅谈一下ChatGPT到底是什么东西

这是一篇非学术专业性的文章,而我也是为了解chatGPT而学了两三天人工智能,所以哪里写的不好的不对的地方还希望海涵。 图灵测试 1950年,人工智能之父艾伦图灵提出乐“图灵测试”。就是说当你在不面对面的时候跟机器人进行文字聊天的时候&…

chatgpt赋能python:Python怎么考期末:优秀SEO建议

Python怎么考期末:优秀SEO建议 考试是每个学生都要经历的事情,无论是小学生还是大学生。 期末考试让我们感觉像是在面对一堵墙,需要克服无数困难。 如今,我们的目标是给大家提供一些关于如何考Python期末考试的SEO建议。 第一步…

chatgpt赋能python:如何高效地准备期末Python考试,轻松地过关!

如何高效地准备期末Python考试,轻松地过关! 作为一名有10年Python编程经验的工程师,我想与大家分享一下如何高效地准备期末Python考试,轻松地过关。 1. 复习基础语法知识 Python是一门高级语言,其语法特点简洁明了&…

期末复习【嵌入式系统】

期末复习【嵌入式系统】 前言推荐期末复习推荐题型押题复习总述问题与思考:教学内容介绍 问题与思考第1章 嵌入式系统基础问题与思考 1.1 引言1.2 嵌入式系统的概述1.2.1嵌入式系统的定义1.2.2嵌入式系统组成1.2.3嵌入式系统的特点1.2.4嵌入式系统应用 1.3 嵌入式处…

假如ChatGPT变得邪恶

提前预判一切可能性,是为了让它变得更好 人工智能的最高成果是自由和谎言——《机械姬》 *本文仅供大家学习。转载请按照相关规则,注明来源,且附上本文的所有参考文献链接 为什么StackOverflow禁止使用ChatGPT *本文3000字左右 一些思路&…

chatgpt赋能python:不挂科必看!10年Python编程经验工程师教你如何应对Python期末考试

不挂科必看!10年Python编程经验工程师教你如何应对Python期末考试 作为Python工程师,期末考试是每年必须面对的挑战之一,不仅关系到自己的成绩,还可能影响今后的职业发展。如何才能不挂科呢?下面是我从10年的编程经验…