一篇非常有启发的文章,讨论了几个问题: 大语言模型是否具有创造能力?大型语言模型自己会推理吗?能给模型更多思考的时间吗?人工智能能解决人类解决不了的新问题吗?
欢迎大家点击在看,或转发到朋友圈~~这样兔儿就更有动力发更多好内容了~
*转载本文,请附上所有参考文献链接
*本文5000字左右
- 纯粹的创意包括谬误和幻觉。然而,我们很少从这个角度来考虑创意,因为当创意被分享时,它们已经经过了内部批评和推理的提炼。
- 能否让语言模型进入第二类模式,让它们有更多时间思考、反省,并想清楚自己的答案?换句话说,我们能否将时间转化为准确性?
- 如果我们能让机器既能猜想新的解释,又能理解好的解释和坏的解释之间的区别,那么我们就能实现知识搜索的自动化。
这是一个极其重要的问题,原因在于:人类的技术、保暖的衣服、耕作技术、药物,甚至人类的道德观,都属于知识的类型。我们需要持续努力获取更多的知识,因为更多知识能提高我们的生活质量,给人类带来更好的生存机会。事实上,和过去的所有问题一样,人类现在和未来的所有问题,都可以用知识来解决。
如果我们了解了知识创造的原理,那么我们就可以利用计算机将这一过程自动化,从而大大提高我们创造新知识的速度。
英国作家戴维·多伊奇(David Deutsch)曾经写过一本书,名为《无穷的开始》——世界进步的本源。
这本书是这样描述的,在启蒙运动时期,人类建立起一种推测和批判的文化的过程,推测和批判——这两种元素相互影响,磨砺出新的知识。推测需要用创造力来解决问题。那么,创造力是如何发挥作用的呢?目前,这个问题还没有答案,没人知道人类的创造力是如何发挥作用的。如果知道,就会知道如何构建人工通用智能。
答案是——完全可行的。证据在于,人类本身的存在,以及具有创造力的事实。人类的大脑由原子组成,原子的排列遵循物理定律。所有这些都可以用计算机来模拟,因为计算机是万能的模拟器。
但在实践中,完全模拟大脑,需要比目前掌握更多关于大脑工作原理的知识,而且需要大量的处理能力。因此,我们希望,可以在不模拟整个大脑的情况下构建创造力,否则可能需要一段时间才能获得所需的知识和计算能力。这也可以解释,为什么有这么多发明家在同一天冲到专利局,申请同一项专利。就像某种集体意识,他们得到了相同的信息并作出了相同的推断。这有点像《帝国时代Age of Empires》中不同时代的进展。这些时代是不能跳过的,因为它们是相互依存的。知识产生知识。
还有一些时候,是一个人突发灵感。以爱因斯坦为例,他利用自己对物理学差异的了解,通过逻辑思维实验,提出了广义相对论。但即便如此,天才也不是孤立存在的。爱因斯坦并没有掌握任何秘密信息,他只是结合了不同领域的知识,在已有知识的基础上进行推断。
从另一个角度看,没有感官输入的大脑会产生新的解释性知识吗?如果你和LLM交互,会发现,大型语言模型似乎很有创造力。但这是假象?还是真的具备创造力?毕竟,大语言模型只是从一个静态数据集中反刍出来的,那么,它们怎么可能想出数据集中没有的新知识呢?
但是人类不也一样吗?每当我们想出新点子时,我们不也是根据静态数据集,即某一特定时刻我们记忆中的任何东西来输出的吗?
如果你赞同 "创造力是一种信息推断 "的观点,那么我认为,你属于 "大语言模型(LLMs)本来就具备创造力 "的阵营。数据集是静态的并不重要。你仍然可以将数据集中过去未结合的领域结合起来,从而产生新的知识。那么幻觉(Hallucination)呢?有时,大语言模型(LLMs)看起来很笨,会犯一些人类不会犯的错误,一本正经地胡说八道。
但我认为,有时我们会忽略内部纠错。当有人想出一个聪明的点子并与人分享时,这种创造力的火花往往在分享之前经历了一个内部自我反思和推理的阶段。
纯粹的创意包括谬误和幻觉。然而,我们很少从这个角度来考虑创意,因为当创意被分享时,它们已经经过了内部批评和推理的提炼。
或许,创造力是一种我们尚未发现的算法,而我们正在用语言模型去寻找错误的树,可以拭目以待。
与创造能力一样,如果你熟悉LLM,会发现似乎也有一定程度的推理能力。但这是真的吗?毕竟,它们只是在预测下一个Token,和人类的推理似乎还有一定差距。推理(Reason)到底是什么?当老师要求学生展示他们的推理时,所要求的是得出答案的步骤。这样做的目的是为了展示对原始材料的理解,而不是仅仅凭运气猜出答案。
奇怪的是,当大模型LLM首次出现时,人们注意到,如果指示模型 "Show your working",答题效果会更好。事实上,最好的提示词之一就是 "深吸一口气,逐步解决这个问题"。
更令人好奇的是,思维链推理(Chain-Of-Thought Reasoning)似乎是在模型接受源代码训练之后才出现的。
但是,大模型LLM仍然会犯愚蠢的错误和产生幻觉。当你要求他们解决冗长的数学问题时,这种情况尤其普遍。正如你在数学课上所知道的那样,方程式中的一个错误就会带来其他的错误。
今天的大模型LLM所缺少的就是一个专门的自我反思和推理阶段。我们已经证明,如果让它一步步展示他们的工作,输出结果会准确得多。如果能以某种方式让 LLMs ,有更多的时间来思考和考虑每一个步骤,也许就能提高其输出结果的准确。
假设解决一道数学题,比如 18 x 22。很可能我们会把这个问题分成几个步骤,写下每一步,边做边验证。这可能会花费一些时间,但最终得到的答案会比猜测的答案准确得多。
在认知生理学中,这通常被称为第二类思维,是一种更慢、更慎重的思维模式,需要付出一定的努力。这与第一类思维形成鲜明对比,后者更多是本能,速度更快。
不同的活动需要不同的思维模式。我们在过马路时使用第一类思维,而在解填字游戏时使用第二类思维。目前,LLM 只采用第一种思维模式,即快速的本能猜测模式。他们以稳定的速度返回Token,而且不会回头追溯自己的步骤。
那么问题来了:能否让语言模型进入第二类模式,让它们有更多时间思考、反省,并想清楚自己的答案?换句话说,能否将时间转化为准确性?
如果只是简单地复制人类的方法呢?就像数学家用黑板一样,要求 LLM 按编号步骤输出答案,然后沿途验证每一步。今年 5 月,OpenAI 发表了一篇题为 "Let's verify step by step”的论文,展示了使用这种技术所带来的巨大准确性提升。
首先,OpenAI使用经过人类验证的训练数据对验证器 LLM(他们称之为 PRM)进行了Finetune。接着,他们指示语言模型 "逐步思考",输出一系列显示其工作的步骤。然后,他们使用验证器 LLM 对每个步骤进行评分,将每个步骤标记为正面(正确)、负面(不正确)或中性(模糊)。
使用这种技术后,发现准确率有了显著提高。这在逻辑上是说得通的,因为如果验证了每一步都是准确的,那么最终答案就更有可能是正确的。
但我觉得特别吸引人的部分是,这项研究检测到了纯数学之外的通用性。通过在数学上对验证器 LLM 进行微调,它能够在化学、物理和其他 STEM 测试中提高推理能力。
也许我们可以模仿第二类思维的 "验证 "部分,但思考部分呢?我们怎样才能给模型更多的时间来思考答案呢?一种方法是多次向模型提出相同的问题,对每个答案打分,然后只选出最佳答案。这样,我们就可以在回答问题时任意花费时间,以时间换质量。
计算机的便利之处在于,只要有时间上的权衡,我们就可以在问题上投入更多的处理能力。因此,与其等待数年才能完成 "下一任总统将是...... "这个句子,我们只需在服务器计算中投入一百万美元即可。这类问题的专业术语是测试时间计算。
因此,现在我们已经具备了第二类思维的思考和验证部分(至少对于数学这样的狭窄领域而言)。让我们尝试模拟思维的另一个特征:思维树(Tree of thought)想想我们是如何思考下一步棋的:首先要考虑你可以走的合法棋步。然后,对于每一步棋,你都要想象对手的报复、你的反击等等。你可能会看到一个快速赢棋的方法,也可能只是一个巩固自己局面的方法。如果你把这些可能性一一记录下来,它就会像一棵树,只要有一步可能的棋就会分支。
现在,让我们将其应用到人为的第二类思维中。我们可以探索一棵思维树,依次评估各个分支,直到找到一个好的答案,而不是线性地一步步考虑。无论何时,都可以产生大量选项,依次对每个选项进行评分。
使用 ChatGPT 来设计创意营销活动和幽默诗歌是一回事,但提出新的科学发现则完全是另一回事。如果我们有这样的例子,就很难说AI不具备创造能力了。
与此最接近的是谷歌 DeepMind 公司的一篇论文,该论文利用一个大型语言模型解决了一个以前未解决的数学问题。在本例中,"FunSearch "将写代码的 LLM 与评估算法配对,以解决上限集问题。LLM 会写出数百万个不同的 python 程序,然后评估器会运行程序,分析输出结果,保存最好的结果。几天后,FunSearch 终于成功地为 "上限集 "问题找到了一个正确的、未知的解决方案。
这是人工智能第一次用自己的创造力解决数学问题吗?也许是的。不过,反对者很快就指出这个问题的范围太窄,而且这种方法不一定能推广到以往的数学问题。
作为旁观者,最吸引我的地方是多伊奇的猜想/批评知识理论与大模型和评估者之间的动态之间不可思议的相似之处。大模型提供猜想(conjecture),而评估者(Evaluator)提供批评。
抛开 LLM 不谈,有没有人工智能发挥创造力的例子呢?
其实是有的,2016 年 3 月 10 日,人工智能展现了飞跃性的创造力。DeepMind 挑战赛是世界上最好的人类棋手李世石与人工智能 AlphaGo 之间的五盘围棋比赛。在第四场比赛的第二局中,AlphaGo 的第 37 手令观众大跌眼镜。起初,这步棋似乎并不寻常,也许是软件故障。慢慢地,观众们发现这是一种新的围棋下法,一种完全陌生的下法,而且这步棋将被研究多年。
AlphaGo 最初是根据人类过去的对局进行训练的,但它是通过与自己对弈数百万局而磨练出来的,开发出了人类以前未曾使用过的新策略。这种自我对弈被称为强化学习。神经网络走一步棋,评估算法对其进行评分,然后系统进行学习。如果数百万次地重复这个过程,就能造就一个超人围棋手。
AlphaGo 的后续版本被称为 AlphaGo Zero,它放弃了人类数据,完全通过自我对弈进行训练。经过 40 天的训练,阿法狗击败了所有前辈,成为世界上最好的围棋选手。
那么,强化学习也许就是创造力的秘密?从本质上讲,利用自我游戏来迭代改进,踏上一条人类从未走过的道路。自 AlphaGo 以来,世界各地的研究人员一直在问这个问题。这些技术是否会扩展到游戏这样的封闭系统之外,或者数学这样的狭窄领域?这里的问题在于验证。在游戏或数学公式中,验证非常简单。你有一个拟合函数来奖励赢得游戏的人,或者一个你可以评估的数学公式。但是,如果你正在寻找一个好的问题解释,你该如何评估这种模糊不清的东西?目前的解决方案是利用人类进行评估。这就是所谓的 RLHF,即从人类反馈中强化学习,这是一种利用人类来训练奖励模型的技术。你可以利用 LLM 的输出,然后让人类投票决定它是有用还是垃圾,然后根据结果对模型进行微调。这就是语言模型的 "Hot or Not"。
到目前为止,RLHF 已经成功地用于减少幻觉和哄骗语言模型做出有用的回应,而且正如《让我们逐步验证》(Let's Verify Step-by-step paper)一文所示,它还能改善推理。
然而,RLHF 有一个明显的局限性:人类。我们不可能像AlphaGo那样,在循环中进行自我游戏迭代。我们能否像AlphaGo那样在循环中自动进行强化学习呢?
一篇名为 "STaR:自学推理"(STaR:Self-Taught Reasoner)的论文试图做到这一点,它展示了一个模型通过学习自己生成的推理来改进自己。它的表现令人印象深刻。因此,有一些非常有前景的研究领域:
- 通过逐步验证,我们可以提高准确性With step-by-step verification we can improve accuracy
- 利用测试时间计算,可以用时间换质量,或者花更多的钱获得更好的响应Using test-time compute, we can trade time for quality, or spend more money to get better responses
- 利用 STaR 等技术,有可能消除强化学习中的人为反馈部分,使其完全自动化。Using techniques like STaR, we could potentially remove the human-feedback part of reinforcement learning, entirely automating it.
- 有证据表明,推理正在普遍化。And there's some evidence to suggest reasoning is generalizing.
- 将所有这些与传闻中名为 Q* 的 OpenAI 突破结合起来,我们将迎来非常有趣的一年。
对知识的探索就是对好的解释的探索。什么是好的解释?与方程不同的是,你可以对某件事情有两种真实的解释,只是一种解释比另一种解释更好。以万有引力的解释为例。我们有牛顿的万有引力定律,然后我们有爱因斯坦的广义相对论,它取代了前者。牛顿并没有错,只是爱因斯坦的解释更好。
是什么让爱因斯坦的解释更好呢?更好的解释,能够更准确、更精确地描述现象。虽然牛顿定律在大多数情况下都能准确预测行星的运动,但却无法解释某些观测结果,比如水星轨道的偏移。爱因斯坦的解释解释了这些差异,并且具有更广泛的影响。
如果我们能让机器既能猜想新的解释,又能理解好的解释和坏的解释之间的区别,那么我们就能实现知识搜索的自动化。
参考资料:
1.Artificial Knowledge Creation (alexmaccaw.com)——Alex MacCaw