ChatGPT 的不足之处:NLP 是核心 , 搜索辅助,算力是硬核。目前的数理计算能力还比较差!

Posted 禅与计算机程序设计艺术

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ChatGPT 的不足之处:NLP 是核心 , 搜索辅助,算力是硬核。目前的数理计算能力还比较差!相关的知识,希望对你有一定的参考价值。

目录

ChatGPT简介

ChatGPT 的不足之处

AI 是否已具有人类智能?

ChatGPT 能做游戏?

ChatGPT 能否取代 Google 百度等搜索引擎

ChatGPT 内部技术工作流程

ChatGPT数理计算能力的增强

 

ChatGPT简介

自 2018 年以来,OpenAI 一直在发布生成式预训练语言模型 GPT(Generative Pre-trained Transformer),可用于生成文章、代码、机器翻译、问答等各类内容。在当时,参数数量只有 1.17 亿。

接下来,OpenAI 每一代 GPT 模型的参数都出现了爆炸式增长,2019 年 2 月发布的 GPT-2 参数量为 15 亿,2020 年 5 月的 GPT-3 参数量达到 1750 亿,直接带动了前训练大模型成为近两年 AI 领域的发展趋势,掀起了一场拼参数、拼算力的军备竞赛。

 

GPT-4 还未到来,此次发布的 ChatGPT 被视为基于 GPT-3 的微调版本,即 GPT-3.5。

参考:《当下最流行的 ChatGPT :前世今生》 https://blog.csdn.net/universsky2015/article/details/128945660 

据 OpenAI 介绍,ChatGPT 采用的模型采用“利用人类反馈强化学习(RLHF)”的训练方式,包括:人类提问机器答,机器提问人类回答,并且不断迭代,使模型逐渐具备判断生成答案的能力。与 GPT-3 相比,ChatGPT 的主要改进在于记忆能力,可以实现连续对话,在对话的交互方式上大大提升了用户体验。

用户体验后评价“ChatGPT 的语言组织能力、文字水平、逻辑能力可以说是令人惊叹”。有些用户甚至打算把日报、周报、总结、反思交给 ChatGPT 来辅助。

普通的文字创作只是最基础的,ChatGPT 还可以发现程序员代码中的 Bug。一些开发者在试用中表示,ChatGPT 为他们的技术问题提供了非常详细的解决方案,比一些搜索软件的答案更可靠。美国代码托管平台 Replit 的 Amjad Masad 在推发文称,ChatGPT 是一个优秀的“调试伙伴”。“它不仅解释错误,而且修复错误并解释修复方法”。

ChatGPT 更有商业逻辑,不仅对自己的优势和劣势了如指掌,还能分析竞品,撰写营销报告。甚至对世界经济形势也“了如指掌”,能说出自己的见解。

有人把 ChatGPT 比作“搜索引擎+社交软件”的组合,可以在实时交互的过程中得到问题的答案。很多用户抱着好玩的心态与 ChatGPT 互动,但随着体验的深入,也会担心自己有一天会不会因为 AI 而失业。

ChatGPT 在寻找答案和解决问题的效率上已经部分超越了当今的搜索引擎。ChatGPT 可能会改变我们未来获取信息和输出内容的方式,AIGC 有望成为数字经济时代驱动需求爆炸的杀手级应用。

ChatGPT 能实现当前的交互,离不开 OpenAI 在 AI 预训练大模型领域的积累。OpenAI 是微软投资的 AI 实验室,也是全球 AI 领域领先的 AI 实验室之一。

ChatGPT 的不足之处

ChatGPT 并不总能带来惊喜。不可否认,它还是有很多局限性的。当要求 ChatGPT 创作时,它可以自由发挥。然而,当你的目标是寻求正确的答案时,ChatGPT 有时可能无法达到预期。

比如让 ChatGPT 做一道小学数学题,它看似写出了一长串计算过程,给出的却是错误答案。

ChatGPT 对于这种题无法给出正确答案

深入体验后,会发现 ChatGPT 在一些文化常识问题和数学计算问题上并不是很擅长。而且 ChatGPT 的回答往往是大段大段,过于冗长,看似逻辑自洽,但有时是在一本正经“忽悠人”。仔细想想,会发现一些漏洞。如果非专业人士不能分辨 ChatGPT 答案的准确性,很有可能会被严重误导。

Stack Overflow 因此决定暂时禁止它。据悉,ChatGPT 出现后,该模型生成的大量答案很快出现在 Stack Overflow 上。这些答案通常需要有一些专业知识的人详细阅读才能分辨出他们是错的。

这种情况影响了堆栈溢出的质量管理。ChatGPT 还表示:“由于 AI 生成的答案并不总是准确或相关的,因此可能会导致 Stack Overflow 上错误答案的混乱,并误导正在寻求帮助的用户。”并且还声明:“Stack Overflow 禁止使用 AI 生成答案是合理的。”

OpenAI 还提到,ChatGPT 有时会给出看似合理但不正确的答案。对于这个问题,Sam Altman 表示:“试图阻止 ChatGPT 随机捏造,在现阶段与现有技术保持平衡是很棘手的。随着时间的推移,会根据用户反馈进行改进。”

所以有些用户把 ChatGPT 定位为聊天解闷的好朋友。当你遇到困境或者需要寻找意义时,ChatGPT 可以给出类似“命运之书”的答案。有些用户把 ChatGPT 当成效率工具,在文案或者一些专业问题上寻找参考。

AI 是否已具有人类智能?

2022 年 12 月,人工智能聊天机器人 ChatGPT 刷爆网络,网友们争先恐后去领略它的超高情商和巨大威力。参加高考、修改代码、构思小说......它在广大网友的“鞭策”下不断突破自我,甚至可以用一整段程序,拼接出一只小狗。那么,ChatGPT 是如何炼成的?是否意味着 AI 已具有人类智能呢?

ChatGPT 是 GPT(或生成式预训练转换器)文本生成 AI 系列的最新发展,根据从互联网上获取的大量文本样本来进行训练。

一经发布,ChatGPT 便在网友的疯狂“检测”和“调戏”中表现出各种惊人的能力。OpenAI 首席执行官 Sam Altman 表示,自 11 月 30 日至 12 月 5 日,ChatGPT 的用户数量已突破 100 万,需求大于预期。

在广大网友的不懈努力下,ChatGPT 短短几天之内完成了:

1、参加了美国高校的入学资格考试(SAT),成绩为中等学生水平;

2、用《坎特伯雷故事集》风格改写了 90 年代热门歌曲《Baby Got Back》;

3、用《老友记》主角口吻创作了剧本对白;

4、构思了简短的侦探小说;

5、简要阐释了经济学理论;

6、给出了消除经济不平等的六点计划;

7、与人类进行“心理战”,猜想人类实际上想让计算机做什么;

8、规划了如何毁灭世界;

9、生成关键词指导 AI 作画;

10、扮演 OpenAI,在系统内构建了 ChatGPT 套娃,相当于“我”生了一个“我”

ChatGPT 的网络界面

AI 是否已具有人类智能?

讨论 AI 是否具有真正的“智能”是人类的游戏。图灵测试(The Turing test)已经成为人工智能领域的核心目标之一。它由艾伦·麦席森·图灵提出,被公认为人工智能崛起的标志。图灵测试人为地将“思想能力”定义在功能和实用的范畴内,为“智力”设置了条件。

图灵测试到底是什么意思?简单来说,就是把机器关在小黑屋里,让它和人类聊天对话,然后在小黑屋里分辨回答问题的是机器还是人类。如果不能分辨,说明机器和人的智能水平一样,通过了测试。

到目前为止,还没有、AI 模型能真正通过图灵测试。

谈到 GPT-4 将如何优化,ChatGPT 给出了以下答案:

GPT-4 是一个大型语言模型,也是人工智能领域最先进的技术之一。在大量训练数据的基础上,可以模拟人类的语言表达能力,用相似的语言回答问题。目前 GPT-4 还在优化中,可能在以下几个方面有一些改进:

1、增加更多的训练数据,以提高其知识和准确性;

2、增加更复杂的算法来提高其性能和处理能力;

3、增加更多的功能,如语音合成和图像识别,以提高其应用能力;

4、增加更多的输入和输出接口,如聊天机器人、问答系统等,以提高其便利性。

未来,AI 真的能拥有人类的智能吗?众说纷纭。也许奇点已然临近,也可能还只是空中楼阁。但不可否认的是,ChatGPT 必将引领人工智能领域的先锋革命。

ChatGPT 能做游戏?

ChatGPT 这种新模型的火爆程度不用多说,因为它的用处实在太广泛,这两天服务器直接被挤爆了。当然,怎么会没人尝试用它做游戏呢?结合一些开发者和自己的尝试,虽然 ChatGPT 目前还不能达到完美的辅助效果,但是它的表现一定会超出你的预期。

从最简单的文字游戏开始 ChatGPT 就表现地很好。最幸福的应该是跑团的玩家(桌上角色扮演游戏)。现在,他们不需要再去煞费苦心地找场地,聚集玩家,找有经验的演职人员。只需给 AI 输入一些世界观信息,就可以开启一段自由度很高的冒险,因为 AI 会根据输入灵活地生成结果。

有一些熟练的玩家甚至总结出了训练 AI 的运行模板,可以将游戏分成不同的模式,并提供完整的查询、暂停等完整的系统功能。另外,GitHub 现在已经有了将 ChatGPT 连接到群机器人的代码,很多群聊都变成了联机 AI 跑群。

当然,这只是基于 AI 本身展开的互动文字游戏,可能与我们认知中的“做游戏”有所不同。但是,用代码写一个可运行的游戏,也根本难不倒 ChatGPT,简单到几乎唾手可得。举个最简单的例子,输入用 xx 语言实现猜拳、贪吃蛇、俄罗斯方块等简单游戏的要求,就会自己完善规则,输出代码。

把完整的代码复制保存,通常几乎一行都不用改,游戏就能顺利运行。而且随时可以改变需求,它也会自动补全规则、生成新的代码。只能说以后计算机系学生的作业,可能大半都要被它包圆了。

这对游戏开发小白来说绝对是大大的福利,在 B 站上,就已经有人在零基础的情况下,靠 ChatGPT 做出了一款完整的 Unity 打砖块游戏,同样没有改过代码。

为什么说是小白福利呢?因为它不止能写代码,还会相当人性化地回复你。当然,它不能完全替代教程,但比起漫无目的地寻找零散资源,问 AI 显然快多了。更别说它连这么口语化的表述都能理解——

也有 UP 主尝试用它来写《植物大战僵尸》,结果也发现模块功能完全不用改代码,直接就能用。由于受到字符长度限制,完整的项目代码没办法一步到位,但这不算大问题。

2D 能做,3D 行不行?当然可以!至少已经有人用它在 Unity、UE 里实现过简单的射击游戏了。虽然看起来仍然很简陋,但如果你有耐心多捣鼓捣鼓,我不怀疑它能实现一个相对复杂的大型需求。

ChatGPT 能否取代 Google 百度等搜索引擎

既然看上去 ChatGPT 几乎无所不能地回答各种类型的 prompt,那么一个很自然的问题就是:ChatGPT 或者未来即将面世的 GPT4,能否取代 Google、百度这些传统搜索引擎呢?个人觉得目前应该还不行,但是如果从技术角度稍微改造一下,理论上是可以取代传统搜索引擎的。

为什么说目前形态 ChatGPT 还不能取代搜索引擎呢?主要有三点原因:

一、对于不少知识类型的问题,ChatGPT 会给出看上去很有道理,但是事实上是错误答案的内容,考虑到对于很多问题它又能回答得很好,这将会给用户造成困扰:如果我对我提的问题确实不知道正确答案,那我是该相信 ChatGPT 的结果还是不该相信呢?此时你是无法作出判断的。这个问题可能是比较要命的。

二、ChatGPT 目前这种基于 GPT 大模型基础上进一步增加标注数据训练的模式,对于 LLM 模型吸纳新知识是非常不友好的。新知识总是在不断出现,而出现一些新知识就去重新预训练 GPT 模型是不现实的,无论是训练时间成本还是金钱成本,都不可接受。如果对于新知识采取 Fine-tune 的模式,看上去可行且成本相对较低,但是很容易产生新数据的引入导致对原有知识的灾难遗忘问题,尤其是短周期的频繁 fine-tune,会使这个问题更为严重。所以如何近乎实时地将新知识融入 LLM 是个非常有挑战性的问题。

三、ChatGPT 或 GPT4 的训练成本以及在线推理成本太高,导致如果面向真实搜索引擎的以亿记的用户请求,假设继续采取免费策略,OpenAI 无法承受,但是如果采取收费策略,又会极大减少用户基数,是否收费是个两难决策,当然如果训练成本能够大幅下降,则两难自解。

以上这三个原因,导致目前 ChatGPT 应该还无法取代传统搜索引擎。那么这几个问题,是否可以解决呢?其实,如果我们以 ChatGPT 的技术路线为主体框架,再吸纳其它对话系统采用的一些现成的技术手段,来对 ChatGPT 进行改造,从技术角度来看,除了成本问题外的前两个技术问题,目前看是可以得到很好地解决。我们只需要在 ChatGPT 的基础上,引入 sparrow 系统以下能力:基于 retrieval 结果的生成结果证据展示,以及引入 LaMDA 系统的对于新知识采取 retrieval 模式,那么前面提到的新知识的及时引入,以及生成内容可信性验证,基本就不是什么大问题。

基于以上考虑,在上图中展示出了我心目中下一代搜索引擎的整体结构:它其实是目前的传统搜索引擎+ChatGPT 的双引擎结构,ChatGPT 模型是主引擎,传统搜索引擎是辅引擎。

传统搜索引擎的主要辅助功能有两个:一个是对于 ChatGPT 产生的知识类问题的回答,进行结果可信性验证与展示,就是说在 ChatGPT 给出答案的同时,从搜索引擎里找到相关内容片段及 url 链接,同时把这些内容展示给用户,使得用户可以从额外提供的内容里验证答案是否真实可信,这样就可以解决 ChatGPT 产生的回答可信与否的问题,避免用户对于产生结果无所适从的局面。当然,只有知识类问题才有必要寻找可信信息进行验证,很多其他自由生成类型的问题,比如让 ChatGPT 写一个满足某个主题的小作文这种完全自由发挥的内容,则无此必要。所以这里还有一个什么情况下会调用传统搜索引擎的问题,具体技术细节完全可仿照 sparrow 的做法,里面有详细的技术方案。

传统搜索引擎的第二个辅助功能是及时补充新知识。既然我们不可能随时把新知识快速引入 LLM,那么可以把它存到搜索引擎的索引里,ChatGPT 如果发现具备时效性的问题,它自己又回答不了,则可以转向搜索引擎抽取对应的答案,或者根据返回相关片段再加上用户输入问题通过 ChatGPT 产生答案。关于这方面的具体技术手段,可以参考 LaMDA,其中有关于新知识处理的具体方法。

除了上面的几种技术手段,我觉得相对 ChatGPT 只有一个综合的 Reward Model,sparrow 里把答案 helpful 相关的标准(比如是否富含信息量、是否合乎逻辑等)采用一个 RM,其它类型 toxic/harmful 相关标准(比如是否有 bias、是否有害信息等)另外单独采用一个 RM,各司其职,这种模式要更清晰合理一些。因为单一类型的标准,更便于标注人员进行判断,而如果一个 Reward Model 融合多种判断标准,相互打架在所难免,判断起来就很复杂效率也低,所以感觉可以引入到 ChatGPT 里来,得到进一步的模型改进。

通过吸取各种现有技术所长,我相信大致可以解决 ChatGPT 目前所面临的问题,技术都是现成的,从产生内容效果质量上取代现有搜索引擎问题不大。当然,至于模型训练成本和推理成本问题,可能短时期内无法获得快速大幅降低,这可能是决定 LLM 是否能够取代现有搜索引擎的关键技术瓶颈。

从形式上来看,未来的搜索引擎大概率是以用户智能助手 APP 的形式存在的,但是,从短期可行性上来说,在走到最终形态之前,过渡阶段大概率两个引擎的作用是反过来的,就是传统搜索引擎是主引擎,ChatGPT 是辅引擎,形式上还是目前搜索引擎的形态,只是部分搜索内容 Top 1 的搜索结果是由 ChatGPT 产生的,大多数用户请求,可能在用户看到 Top 1 结果就能满足需求,对于少数满足不了的需求,用户可以采用目前搜索引擎翻页搜寻的模式。

搜索引擎未来大概率会以这种过渡阶段以传统搜索引擎为主,ChatGPT 这种 instruct-based 生成模型为辅,慢慢切换到以 ChatGPT 生成内容为主,而这个切换节点,很可能取决于大模型训练成本的大幅下降的时间,以此作为转换节点。

ChatGPT 内部技术工作流程

 

下面这张图是 OpenAi 官网上的一张说明图,但是这张图只说明了其系统的模型(PS:这里的模型大家可以简单理解成一对特殊的数据)训练和应用流程:

上图并没有说明太多这样系统的技术架构,那么勇哥在这里来给大家脑补一下,一般这种系统的数据流是如何进行流转的:

数据流说明:

ChatGPT 是一个聊天系统,用户输入一句话,那么 ChatGPT 就需要依据用户输入的信息反馈相关内容,比如上述用户输入“背《观沧海》",系统接收到信息后,就经过以下处理,来为用户生产相对准确的答案:

  • Li 处理:既语言识别(Language identification),ChatGPT 是面向中国区之外的用户,因此用户输入的信息有多种语言,至于是那种语言需要先进行识别。识别之后既可以确定在 PPO 中使用的是中文、还是英文、还是其它模型数据。

  • Ea 处理:既情感分析(Emotional analysis),ChatGPT 对于输入信息进行了多中情感分析,如果情感不符合正能量方面的要求,ChatGPT 会自动拒绝回答相关用户问题。这点也是非常必要的。Ea 处理也需要基于 PPO 模型库来分析计算。

  • Ei 处理:既抽取信息 (Extract information),从用户输入的信息中提取关键特征,为下一步准备数据

  • NER 处理:既命名实体识别(Named entity recognition),负责提取其中的人名、地名、专业术语等信息

  • SS 处理:既句子相似性处理(Sentence Similarity),用户输入的信息可能存在错别字等信息,通过此步可以进行一个修正

  • TC 处理:既文本分类(Text Classification),把用户输入得信息进行分类,通过此步分类,好定位到下一步搜索用到的相关搜索索引

  • Full Search 处理:既全文搜索处理,ChatGPT 是一个自然语言+搜索引擎集成的架构,通过 Ei 处理得到的数据就是全文搜索的输入数据,比如 EI 提取出 NER=观沧海,SS=,TC=文学,那么此步就可以去搜索文学索引中的《观沧海》,得到想要的答案。

  • TG 处理:既文本生成(Text Generation),上一步搜索的结果可能有多条数据,那么那一条最符合用户需求呢?则通过 RM 模型来进行选取,选取后生成对应的文本内容。

  • QA 处理:既问题解答(Question Answering),把上一步生成的答案进一步转换成适合问答的形式或格式。

总结:ChatGPT 总体架构技术是:NLP 是核心 , 搜索辅助,算力是硬核。

NLP : 上述流程描述中:Li、Ea、Ei、NER、SS、TC、TG、QA 等处理,都需要依赖 ChatGPT 自身的 GPT-3.5 自然语言模型数据,而且按照上述流程执行,流程步骤长,上一步的结果就是下一步的输出,一步出错,结果必错。ChatGPT 能做到现在这样已经是相当的了不起了。

NLP 自然就是 ChatGPT 的核心了。

搜索:一般自然语言处理后的特征数据,是句子或者词组,对此搜索,常规的搜索肯定不行,而全文搜索技术自然就成为首选,比如开源流行的 Elasticsearch,在里面主要存储了大量的问题答案、范本数据等。

算力:告诉大家一个事实:一般一个 NLP 模型数据非常大,上 G 上 T 都是非常正常的事情;那么这么大的数据量,每次搜索都要进行与其计算,普通的 CPU 肯定是更不上的,因此 GPU 是首选,而且最好是使用云上的 GPU 算力,才能收缩性更得上。

ChatGPT数理计算能力的增强

ChatGPT虽然对话能力强,但是在数理计算对话中容易出现一本正经胡说八道的情况。

计算机学家Stephen Wolfram 为这一问题提出了解决方案。Stephen Wolfram 创造了的 Wolfram 语言和计算知识搜索引擎 Wolfram | Alpha,其后台通过Mathematica实现。

在这一结合体系中,ChatGPT 可以像人类使用 Wolfram|Alpha 一样,与 Wolfram|Alpha “对话”,Wolfram|Alpha 则会用其符号翻译能力将从 ChatGPT 获得的自然语言表达“翻译”为对应的符号化计算语言。在过去,学术界在 ChatGPT 使用的这类 “统计方法” 和 Wolfram|Alpha 的 “符号方法” 上一直存在路线分歧。但如今 ChatGPT 和 Wolfram|Alpha 的互补,给NLP领域提供了更上一层楼的可能。

ChatGPT 不必生成这样的代码,只需生成常规自然语言,然后使用 Wolfram|Alpha 翻译成精确的 Wolfram Language,再由底层的Mathematica进行计算。

 

 展望未来 

我在网上看到很多喷 ChatGPT 答案不正确的(如下图),其实这个问题在我意料之中,毕竟 AI 的难度不是一点半点,而且它还依赖硬件等外部因素的影响,所以一步登天很难。展望未来,ChatGPT 这一波展现出模型上的突破,但在应用场景上并没有创新,所以未来 ChatGPT 除了完善模型(这个是重点)、完善搜索库等之外,还需要考虑一些创新性的应用场景。

以上是关于ChatGPT 的不足之处:NLP 是核心 , 搜索辅助,算力是硬核。目前的数理计算能力还比较差!的主要内容,如果未能解决你的问题,请参考以下文章

chatGPT初体验

ChatGPT 未来五年会对 NLP 从业者带来怎样的冲击?—分享七月在线nlp高级

看ChatGPT如何回答微博签到数据相关问题。

作为NLP算法,最近被ChatGPT刷屏后的心路历程

ChatGPT会对未来5年的NLP算法从业者带来怎样的冲击?

自然语言处理(NLP)知识结构总结