大模型的推理过程为何倾向于生成简单步骤而非直接得出结果?

1个回答

写回答

人类
人类

以及用推理时间换取参数空间的过程。实际上,许多人观察到一个现象:这类测试时的技巧中,大语言模型(LLM)每一步似乎倾向于生成一些非常简单甚至看似愚蠢的动作,对人类而言显得有些笨拙,但它们通过长时间执行这些步骤来达成目标。例如,计算 1+2+3+...+100 时,它可能会老老实实地一个个数字相加,而不是直接运用等差数列公式。人们常常误以为这是模型的一种谨慎行为,但实际上这是一种在参数资源有限的情况下,通过延长推理时间来弥补不足的牺牲策略。从直觉上讲,如果让深度学习模型直接跳跃生成最终结果,或者一步到位地输出答案,那么它需要记忆从输入 x 到各种庞大结果集之间的复杂映射关系。而每个结果与 x 的关联可能并不明显,模型往往需要非常大的规模和高精度才能分辨出 y0 和 y1 这样的细微差异。一旦模型参数减少,y0 和 y1 就难以区分。换个思路,如果我们每次输入 x 后,只预测一个非常简单的中间步骤 z,假设一个问题可以通过一系列这样的简单步骤串联起来解决(图灵机已经证明了简单的规则组合可以完成任意可计算问题),那么需要记忆的结果集合就会显著缩小,从而降低模型所需的容量需求。这种递归式的设计使得用时间换取空间成为可能,相当于 RNN 类方法通过序列化操作分担了一部分参数空间的压力。因此,具有类似 RNN 特性的大模型特别倾向于逐步输出这些简单中间步骤,而无法跳过它们。从能量的角度来看,天下没有免费的午餐。解数学题显然比刷抖音上的美女视频更耗费脑力,所以解答数学问题的速度通常较慢。然而,在 scaling law 中,我们还缺少一个重要环节,即问题复杂度与推理时长(或能耗)之间的具体对应关系尚未明确(也许某些论文已经涉及,但我尚未看到)。在我理解的传统算法框架下,用时间换取空间的效果是有限的,而用空间换取时间则更为显著。这是因为大多数问题的关键节点虽然数量众多,但节点间的连接却相对稀疏。因此,预先记忆关键节点并据此寻找路径的方式,远比逐个节点推理、像开盲盒一样摸索高效得多。举个例子来说,考虑全由数字 1 组成的数(如 1111111)的质因数分解问题。大模型可以通过直接背诵答案,并根据结果反向构造过程来快速解决问题。尽管表面上看,大模型生成的过程似乎是从头开始一步步推导得出结果,但实际上它早已知晓最终答案。这种方式正是第一代 scaling law 的典型代表——通过记忆关键节点再寻找路径,从而大幅提升推理效率。然而,这种方法的代价是对数据的高度依赖。如果不预先记忆这些关键节点,而是逐一尝试所有可能性,其速度将慢得令人难以忍受。如果不能有效解决类似世界性数学难题这样复杂的问题,仅靠 O(1) 级别的简单任务,注定会沦为失败的产品。

举报有用(4分享收藏

Copyright © 2025 IZhiDa.com All Rights Reserved.

知答 版权所有 粤ICP备2023042255号