太多人误解了「苦涩的教训」
“The Bitter Lesson ”(译文:苦涩的教训)是一篇优秀的文章,但常常被严重误解。这篇文章的核心观点是:
随着时间推移,能够充分利用计算资源扩展的方法,最终会超越那些不能扩展的方法。
但这并不是说:
人类知识完全没用,不应该融入AI;
深度学习和算力扩展能解决一切(实际上原作者 Rich Sutton 对深度学习本身还挺怀疑的)。
过去五十年,计算能力的增长是巨大的,未来我们还会持续看到计算能力的爆炸式增长。能够充分利用算力增长的方法会越来越强,反之则会逐渐失去竞争力。
这个教训之所以「苦涩」,是因为短期来看,人类知识往往更容易、更快捷地获得好结果。
例如在1995年,如果你要做一个文本自动补全系统,纯粹做「下一个词的预测」几乎行不通。你可能会使用手工规则或统计方法;到了2005年,最优方案变成了N-gram统计模型。深度学习直到2010年代中期才开始在自然语言处理(NLP)领域占主导地位,而自监督学习直到2010年代末期才大放异彩。
每个历史阶段,使用人类知识都很有吸引力,能迅速取得领先优势。但从长远看,这些方法却是死路一条。唯有能随算力增长而增长的方法,最终才会胜出。因为未来唯一肯定会大规模增长的,就是计算资源。我们不太可能看到可用的数据量增长1000倍,但计算能力的增长却几乎是板上钉钉的事。
经典案例:国际象棋与围棋
计算机国际象棋的经典案例是 深蓝(Deep Blue)。在深蓝之前,计算机下棋多用专家系统(人类精心编写的规则和启发式函数)。深蓝依靠强大的计算力,通过搜索加上8000多个由人类专家设计的特征构成的估值函数,打败了人类棋王。这是一次大胜利,体现了算力和规模的优势。但即使这样一个系统,要迁移到另一种游戏(比如围棋)几乎是不可能的,因为你还得再重新人工设计8000多个围棋特征。
另一个经典例子是计算机围棋。AlphaGo Zero 曾打败当时最好的围棋程序,包括基于蒙特卡罗树搜索(MCTS)和启发式估值函数的 Pachi、CrazyStone,以及使用人工设计决策树的 GnuGo。尽管这些系统在当时表现很好,但最终都走向了死胡同。
Rich Sutton 在原文中指出:
苦涩的教训基于以下历史观察:
AI研究人员常常试图把人类知识内建到AI智能体中;
短期来看这种方法总有效果,也让研究者感觉满足;
长期来看,这种方法却会停滞不前,甚至阻碍进步;
最终带来重大突破的却总是相反的做法:大规模增加计算资源,利用计算做更多的搜索与学习。
最终的成功带有一丝苦涩,因为它推翻的是人类所青睐的人性化方案。
如果你看看GnuGo的源代码,就会发现很多人花了很多精力,但它最终远远落后于那些能利用算力的方法。令人惊讶的是,虽然GnuGo早在1989年就开始开发,持续更新到2009年,开发者们显然知道深蓝的成功经验,但仍然坚持使用专家系统。
Google Brain 前研究员 Brian Lee(复制了AlphaGo的开源版MiniGo)给出了一个引人深思的解释:
「我提出的观点是,这种转变通常需要十年左右。这十年里,博士生毕业了,职业生涯确立了,晋升标准形成了,文化凝固了,组织架构稳定了。正如科学进步往往要等到老一代科学家去世一样,这些困难问题的进步往往要等到老组织被淘汰掉才能实现。」
再想象另一个情景:你在一个大语言模型实验室工作,你必须快速提高你的基准成绩,否则就会失去竞争优势甚至被解雇。此时你会很想加入一些人类知识,比如专门针对特定基准的优化数据集。
但更好的办法却是整体提升模型的通用能力。专注于能随着计算能力扩大而受益的方法,比如测试阶段增加算力(test-time compute)、合成数据(synthetic data)或者混合专家模型(MoE)等。然而,这种做法在实际工作中却显得「奢侈」和「不切实际」,毕竟你急着要在短期基准上打败竞争对手,哪有时间做严谨的科学研究呢?
然而,这恰恰是苦涩教训的本质:长期来看,类似 DeepSeek 这样关注于通用能力提升并持续将模型扩展到 3.8e25 FLOPS 的方法,最终成为了真正的前沿领导者。
我当前在读的文章:
Nathan Lambert 的《接下来会发生什么》(Interconnects),其中探讨了 OpenAI 的 O3 模型。
深蓝论文,非常值得一读。
[1] 深蓝本身也非常有趣,它甚至使用了定制的「国际象棋芯片」硬件来实现特定的估值函数。