来自史蒂夫·沃尔夫勒姆的作品
作者:史蒂夫·沃尔夫勒姆
机器心脏编译
艺术经纬:清闲
ChatGPT + Wolfram|Alpha=?
自从ChatGPT发布以来,人们每天都在解锁它的新功能。前段时间有人用ChatGPT写了一个神经网络,还有人把它做成智能音箱,彻底爆了目前市面上的大部分产品。
但是在试用过程中,人们逐渐发现ChatGPT也有缺点,其中之一就是不能解决数学题。比如下面这道题“鸡兔同笼”,虽然乍一看解决ChatGPT的问题似乎没有问题,但是计算结果却是错误的。
题目来自知乎用户 @李闯。题目来自知乎用户@李闯。
许多网民表示,他们遇到过这种情况,计算机科学家、Wolfram语言之父史蒂夫·沃尔夫勒姆就是其中之一。然而,与普通人不同的是,Wolfram提出了解决这个问题的方法。他认为,要从根本上解决ChatGPT的这一缺点,可能需要花费大量的精力,因此最好将其与自己的Wolfram | Alpha知识引擎结合起来,因为后者具有很强的结构化计算能力,可以理解自然语言。
在Wolfram看来,世界是可表示的,世界是可计算的,世界是我们的知识。所以,他试图做的是:只要你能描述出你想要什么,计算机就会帮你做。人定义目标,然后计算机努力理解意思,尽力实现。
为了实现这个目标,史蒂夫·沃尔夫勒姆创造了以自己名字命名的Wolfram语言和计算知识搜索引擎Wolfram Alpha。Wolfram Alpha于2009年5月18日正式发布,其底层操作和数据处理由Mathematica在后台运行实现。
由于Mathematica支持几何、数值和符号计算,并具有强大的数学和科学图形图像可视化功能,Wolfram Alpha可以回答各种数学问题,并将答案以清晰美观的图形方式展示给用户。这个计算知识引擎为苹果的数字助手Siri奠定了坚实的基础。
史蒂夫·沃尔夫勒姆认为,这个工具可以完美地补充ChatGPT。
在一篇博客文章中,史蒂夫·沃尔夫勒姆充分阐述了他的观点:
ChatGPT和Wolfram|Alpha
事情突然“变”了,总是很神奇。2009年的Wolfram|Alpha和2020年的物理项目给人这种感觉。现在OpenAI的ChatGPT也用同样的方式让大家大吃一惊。
我关注神经网络技术很久了(其实大概有43年了)。但是纵观这几年这方面的所有成果,我还是觉得ChatGPT表现的相当不错。它是一个突然出现的系统,可以生成几乎堪比人类创造能力的文本。可以说是很好很厉害了。我认为它的成功可能会揭示人类思维的本质。
不过,虽然ChatGPT在自动处理类人事件方面很优秀,但并不是所有有用的东西都那么“像出自人手”,反而会有更规范、更结构化的东西。事实上,近几个世纪以来在数学、精确科学和现在热门的计算领域建立的范式都是我们文明的伟大成就,从而创造了一座不同于纯人类思维所能创造的能力之塔。
几十年来,我一直深度参与计算范式的研究,旨在建立一种计算语言,用标准化的符号体系表达更多的东西。我的目标是“通过计算辅助”,通过搭建的系统增强人们想做的事情;还可以马上调用Wolfram Language和Wolfram|Alpha,利用它们特有的“计算能力”完成各种超出人类能力的事情。
这种工作方式极其强大。但这不仅对人类重要,对人形AI也很重要。可以瞬间赋予AI计算知识超能力,使其充分利用结构化计算和知识的非人类能力。
我们才刚刚开始探索这个对ChatGPT的重要价值,未来一定大有可为。Wolfram|Alpha和ChatGPT风格不同,做的事情也不同。但是它们之间有一个联系:自然语言。ChatGPT可以像人类使用Wolfram|Alpha一样与Wolfram|Alpha“对话”,Wolfram|Alpha会利用其计算知识将ChatGPT获得的自然语言转化为精确的符号计算语言。
几十年来,学术界对ChatGPT使用的这种“统计方法”和Wolfram|Alpha的实际出发点“符号方法”一直存在分歧。但现在ChatGPT的成功,以及我们为让Wolfram|Alpha理解自然语言所做的一切努力,给了我们整合这些成果的机会。
例如:从芝加哥到东京有多远?
ChatGPT本质上是一个语言输出生成系统,它“遵循”网络、书籍和其他培训材料内容的“模式”。无论从一个小点还是整个章节来看,它的输出都很人性化,难能可贵。它能表达连贯的东西,能运用学到的概念。说出来往往挺有意思,也挺惊喜的。它总是产生“统计上可信”的结果,至少在语言层面上是如此。但这并不意味着它自信地给出的所有答案和计算都是正确的。
这是我刚刚注意到的一个例子(ChatGPT的输出本质上是随机的,所以如果你问这个问题,答案可能不一样):
这个答案似乎令人信服,但它是不对的,因为Wolfram|Alpha告诉我们:
这其实也是Wolfram|Alpha所擅长的:充分利用其结构化的、高精度的知识,把一些东西变成一个精确的计算。
所以好消息是,你可以考虑让Wolfram|Alpha自动帮助ChatGPT解决这个问题。我们可以程序化地问Wolfram|Alpha问题(或者使用web API等。):
再次询问ChatGPT并附上之前的结果:
ChatGPT礼貌地接受更正,如果你再问这个问题,它会给出正确答案。显然,Wolfram|Alpha很可能有更精简的方法来处理这种前后转换,但令人欣慰的是,即使是这种非常简单的纯自然语言方法也奏效了。
但是为什么ChatGPT一开始就搞错了呢?如果它在训练中注意到芝加哥和东京之间的明显距离(例如,从互联网上),它肯定能得到正确的答案。但是仅仅掌握这种简单的解法是不够的,它需要一个实用的算法。
Wolfram|Alpha的处理方式完全不同。它假设收集到的自然语言可以转换成精确的计算语言(即Wolfram语言)。在本例中:
城市坐标和计算城市间距离的算法是Wolfram语言内置计算知识的一部分。而且Wolfram语言确实有很多内置的计算知识,这也是我们几十年努力的结果。我们通过精心管理海量的、持续更新的数据,使用(并经常发明)各种方法、模型和算法,建立了一套完整的、连贯的计算语言体系。
再举几个例子。
ChatGPT和Wolfram|Alpha的工作方式不同,各有千秋。但是为了理解ChatGPT如何利用Wolfram|Alpha,我们来讨论一些ChatGPT没有正确做到的情况。有一个领域让ChatGPT和人类感到痛苦——数学。
这种议论式的回应还是挺有意思的。但实际结果是错误的:
但是,如果ChatGPT“咨询”Wolfram|Alpha,它可以做正确的事情。
让我们试试更复杂一点的东西:
乍一看,结果似乎如此,我可能会相信。但事实证明,这也是错误的。Wolfram|Alpha告诉我们:
而且,的确,用ChatGPT做数学作业(不咨询Wolfram|Alpha)可能也没那么美妙。它会给你一个看似很合理的答案:
但如果不能“真正理解数学”,ChatGPT基本不可能安全得到正确答案。这样,答案又错了:
尽管如此,ChatGPT还是能对“它是如何得到答案的”(不是说“真相是什么”)给出一个看似合理的解释。而且有趣的是,它给出的解释类似于不懂数学的人会犯的错误:
在各种情况下,“没有真正理解事物的意义”可能会带来麻烦。
下面的例子似乎很有说服力,但并不正确:
ChatGPT似乎在某些方面正确理解了这些基础数据,但它的“理解意义”不足以对数字进行准确排序:
人们会想象找到相应的方法来“修复这个特定的错误”。但问题是基于生成语言的人工智能系统的基本思想,如ChatGPT,并不适合结构化计算任务。换句话说,ChatGPT需要“修复”几乎无限数量的“bug”,才能修复Wolfram|Alpha可以用其结构化方式修复的一个小问题。
“计算链”越复杂,调用Wolfram|Alpha解决问题的可能性就越大。ChatGPT对以下问题的回答相当混乱:
而且,正如Wolfram|Alpha告诉我们的,上述结论是不正确的(因为它在某种意义上已经“知道”了):
当涉及到具体的(比如定量的)数据时,即使是相当原始的数据,似乎Wolfram|Alpha还是做得比较好。下面这个例子的灵感来自长期以来最喜欢的Wolfram|Alpha问题“土耳其有多少只火鸡?”:
乍一看,这次还是完全合理的,甚至还引用了相关资料。然而,事实证明,这些数据基本上都是“虚构的”:
然而,好的一面是,你可以很容易地要求ChatGPT“核对事实”:
现在使用Wolfram|Alpha API来提供以下信息:
现在,让我们注入这些数据,并让ChatGPT更正其原始答案(甚至用粗体显示更正的位置):
当涉及到实时(或位置相关)数据或计算时,“注入事实”的能力是有价值的。ChatGPT不会立即回答以下问题:
但是这里有一些相关的Wolfram|Alpha API输出:
如果我们将上述信息输入ChatGPT,将会产生一个很好的“讨论式”结果:
有时候,计算方法和人形模型之间有一种有趣的互动。问Wolfram|Alpha一个异想天开的问题(它甚至会验证你是否想要“软冰淇淋”):
ChatGPT一开始对体积的概念有点困惑:
不过后来看起来“反应”这么多冰淇淋很搞笑:
路在何方?
机器学习强大而高效。尤其是近几十年来,它在该领域取得了突出的成就,ChatGPT就是其最新成果。图像识别、语音转文本、语言翻译。每个应用程序都“突然”越过了相应的阈值。然后有些任务从“基本不可能”变成了“基本可行”。
但结果并不“完美”。也许某样东西95%的时候都很好用,但只是尝试一下,剩下的5%还不清楚。从某些方面来说,这可能是一个失败。但关键的一点是,对于各种重要的用例,95%的效用通常是“足够好”的。也许输出中没有真正的“正确答案”。也许只是人们在试图找出人类或者系统算法发展的可能性。
一次一个令牌生成文本的1000亿参数神经网络能完成ChatGPT能做的事,相当了不起。想到这种令人惊讶和显著的成功,人们可能会认为,只要“训练出足够大的网络”,他们就可以为所欲为。但事实并非如此。计算的基本事实,尤其是计算不可约的概念,让这个美好的梦想难以实现。更重要的是,正如我们在机器学习的真实过程中所看到的,会有巨大的突破(就像ChatGPT一样)和无止境的进步。而且我们会发现,有些用例是由机器学习的“能力”形成的,不会被它的“能力不足”所限制。
在许多情况下,“原始ChatGPT”可以帮助人们写作、提出建议或生成各种有用的文本。当谈到创造完美的东西时,机器学习不是理想的途径。其实说到完美,人类也同样无可奈何。
这正是我们在上面的例子中看到的。ChatGPT在“类人”这个范畴做得很好,因为严格意义上没有“正确答案”。如果“被迫”精确操作,通常会失败。但重点是,将ChatGPT与Wolfram|Alpha及其计算知识“超能力”连接起来会是一个很好的解决方案。
在Wolfram|Alpha中,一切都将被转换成一种计算语言,一种精确的Wolfram语言代码。在某种程度上,这些代码必须“完美”才是可靠的。而ChatGPT并不需要生成这样的代码,只需要生成规则的自然语言,然后Wolfram|Alpha就可以凭借其自然语言理解能力翻译成准确的Wolfram语言。
在很多方面,有人可能会说ChatGPT从来没有“真正理解”过事物;它只是“知道如何生产有用的东西”。Wolfram|Alpha的故事不一样。因为一旦Wolfram|Alpha把某个东西转换成Wolfram语言,就可以得到一个完整、准确、规范的表示,所以人们可以用它来计算东西。不用说,很多“人”的东西没有形式化的算法,但是我们还是可以用自然语言来讲,虽然可能不准确。在这方面,ChatGPT自成体系,功能惊人。
就像我们人类一样,ChatGPT有时候也需要更规范、更准确的“帮助”。但不一定要“规范准确”才能表明自己想要什么。因为Wolfram|Alpha可以用相当于ChatGPT母语的自然语言与之交流。Wolfram|Alpha在转换为其母语Wolfram语言时将负责“标准化和精确处理”。这种情况很好,我觉得很有潜力。
这种潜力不仅体现在典型的聊天机器人或文本生成应用程序中。而且可以扩展到数据科学和其他形式的计算(或编程)。从某种意义上说,这种方法直接兼顾了两个世界:ChatGPT的人形世界和Wolfram语言的精确计算世界。
如果ChatGPT直接学习Wolfram语言呢?嗯,可以,而且已经在做了。我特别希望ChatGPT这样的模型最终可以直接用Wolfram语言运行。这种情况很特别也很有趣,因为Wolfram语言的综合计算语言的特点,可以用计算的术语来讲世界上的各种事情。
Wolfram语言的整个概念就是接受人类思维的产物,然后通过计算来表达和处理。普通的编程语言只提供一些方法来告诉计算机做什么。Wolfram语言作为一种综合性的计算语言,所起的作用要比这大得多。事实上,它旨在成为一种人类和计算机都可以使用的语言,“以计算的方式思考”。
几百年前,数学符号的发明第一次为“用数学方式思考”提供了简化的媒介。它的发明迅速催生了代数和微积分,最终形成了各种数学科学。Wolfram语言旨在为计算思维做一些类似的事情,虽然不仅仅是为人类,而是用计算范式打开“计算X”所有领域的大门。
Wolfram语言作为一种“思考语言”,我自己也受益匪浅。最近几十年,我很高兴看到人们通过Wolfram语言“用计算的方式思考”取得了这样的进步。ChatGPT呢?其实你也可以进入这个领域。但我不确定该怎么做。因为这不是关于ChatGPT学习如何做Wolfram语言已经实现的计算,而是关于ChatGPT学习如何像人类一样使用Wolfram语言,关于ChatGPT生成几乎“创造性的文章”,不是使用自然语言而是使用计算语言。
我早就讨论过人类用自然语言和计算语言交流,写计算论文的概念。现在的问题是ChatGPT能否编译这些内容,Wolfram语言能否作为一种不仅对人类,而且对计算机的“有意义的交流”的方式。此外,Wolfram语言代码的实际执行很可能会有一个有趣的反馈循环。关键是Wolfram语言代码所传达的“思想”的丰富性和动态性不同于普通的编程语言,更接近于ChatGPT在自然语言中“神奇地”处理的那种东西。
换句话说,Wolfram语言类似于自然语言——它是一种非常有表现力的语言,你可以想象在其中为ChatGPT编写一个有意义的“提示”。是的,Wolfram语言可以直接在计算机上执行;但作为ChatGPT提示,可以用来“表达一个想法”,它的“故事”可以继续。它可能还会描述一些计算结构,让ChatGPT在计算中“即兴发挥”人们对这种结构的看法,这取决于它通过阅读这么多人写的东西学到了什么,以及它“对人类来说有意思”的东西。
ChatGPT的意外成功突然带来无限可能,令人振奋。现在有一个Wolfram|Alpha赋予ChatGPT计算知识超能力的机会。因此,它不仅可以产生高度的“类人输出”,还可以利用Wolfram|Alpha和Wolfram语言封装的整个计算知识塔。
免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。