生成式人工智能在人类思维的这种非常常见的能力上失败了
当面临越来越高水平的基本计算机任务挑战时,OpenAI 的 GPT-3.5 和 GPT-4 都失败了,这表明它们的设计中存在根本性的遗漏。
著名的“俄罗斯套娃”娃娃,每个娃娃里面都嵌套着另一个娃娃,一个又一个,这是递归原理的典型例子,其中事物包含自身。人们立刻就能认出这样的递归例子,但生成人工智能却没有它的概念。
人类凭直觉掌握的崇高概念之一是递归概念,其中某些事物包含着一种延伸至无穷大的自身重复。任何“电影中的电影”都可以是递归的一个例子。来自俄罗斯的著名俄罗斯套娃“嵌套娃娃”,每个木制娃娃打开后会露出一个较小的娃娃,这是递归的一个可爱的例子。
一张你自己拿着一张你自己的照片的照片,其中你拿着一张你自己的照片,无限循环,是一种经典的递归视觉幻想,可以给任何人带来快乐。
但伊利诺伊大学厄巴纳-香槟分校的学者表示,人工智能程序,包括 ChatGPT 等生成式人工智能程序,无法处理递归,至少不能始终如一地处理递归。无法处理递归会阻碍人工智能在任务中的表现。特别是,人工智能可能会在某些代码重复相同代码的较小原子版本的编程任务中失败。
“例如,为编程任务训练的模型可能会误解具有嵌套块的程序或产生不平衡的括号,”伊利诺伊大学的第一作者 Shizhuo Dylan Zhang 及其同事在论文中说道,“基于 Transformer 的模型在学习模拟结构递归”,本月发布在 arXiv 预印本服务器上。
为了研究 Gen AI 如何陷入递归困境,作者设计了一个针对大型语言模型 (LLM) 的简单测试。给定一段代码——例如递归地添加数字——法学硕士可以产生代码中递归模式的描述吗?
张和团队选择了一个经典的编程任务,称为树遍历。如果计算中的数据类型具有导致进一步分支的分支部分(包含更多树的树),则该数据类型称为树类型。 “遍历”树意味着按照一定的顺序检查树的每个部分。
在语言模型中——在本例中是 GPT-3.5“Turbo”和 GPT-4(OpenAI 最强大的模型)——他们输入一个提示,其中包含问题陈述、树遍历的示例以及执行树的指令遍历。 GPT 的输出应该是树遍历的解决方案,也是对用于执行该遍历的规则的解释。
他们发现,随着树变大,或者用计算术语来说,深度变大,程序开始无法解决遍历问题。他们写道:“随着树深度的增加,大型语言模型的性能显着下降,这与复杂性和所需减少步骤数量的增加相关。”
他们写道,定性分析表明,语言模型无法执行正确的“还原”,即用树中包含的递归元素替换树中的某些元素,以成功地继续遍历。他们写道:“这种类型的错误凸显了法学硕士在维持扩展序列的算法一致性方面面临的挑战,特别是当任务需要遵守精确的操作顺序时。”
法学硕士不仅无法正确解决某些遍历,而且程序也无法根据提示中的示例解释成功遍历可能使用的规则是什么。
张和团队写道:“法学硕士很难从上下文示例中找到正确的规则,并且在执行上下文逐步简化时会以有趣的方式失败。”
程序无法处理递归是什么意思?
张和团队写道,在某种程度上,缺乏使用递归的能力意味着缺乏逻辑。 “在树遍历中执行每个归约步骤都需要更复杂的逻辑推理,”而程序中并不包含这些。
然而,即使人类不太掌握形式逻辑,也可以立即理解“电影中的电影”类型和其他示例中发生的递归。
作者建议,在更简单的层面上,GPT 的设计需要由其创建者重新考虑。
他们写道:“我们假设[失败]的根本原因是模型没有经过优化,无法很好地表示递归模式。” “我们的情境学习实验揭示了法学硕士缺乏‘递归思考’的能力,因为它倾向于从数据中挖掘非递归规则。
“此外,这些模型在执行逐步减少时缺乏准确性,它们可能会在中间迷失或无法应用停止条件。”
研究中没有考虑到无法处理递归可能会影响 Gen AI 在各种任务(从论文写作到计算机编程)上的性能的所有方式。确实,正如张和团队所指出的那样,这些程序在一定程度上可以通过他们所掌握的小技巧来进行补偿。
然而,递归是一种基本现象,在某些时候,它的缺失必然会对程序产生影响。
