我们正处于 AI 的中场休息时间。
几十年来,人工智能主要致力于开发新的训练方法和模型。而且,它确实取得了成功:从击败国际象棋和围棋世界冠军,到在 SAT 和律师资格考试中超越大多数人类,再到斩获 IMO 和 IOI 金牌。这些载入史册的里程碑——深蓝、AlphaGo、GPT-4 和 O 系列——背后,是人工智能方法的根本性创新:搜索、深度强化学习、扩展和推理。随着时间的推移,情况只会越来越好。
那么现在有什么突然不同了吗?
三个字:强化学习终于奏效了。更准确地说:强化学习终于泛化了。在经历了几段重要的弯路和一系列里程碑式的成就之后,我们终于找到了一个可行的方案,可以用语言和推理来解决各种强化学习任务。即使在一年前,如果你告诉大多数人工智能研究人员,一个方案就能解决软件工程、创意写作、IMO 级别的数学、鼠标键盘操作以及长篇问答等问题,他们也会嘲笑你的幻觉。这些任务每一项都极其困难,许多研究人员的整个博士学位都只专注于其中一小部分。
但它还是发生了。
那么接下来会发生什么?人工智能的“下半场”——从现在开始——将从解决问题转向定义问题。在这个新时代,评估变得比训练更重要。我们不再只是问“我们能训练一个模型来解决 X 问题吗?”,而是问“我们应该训练人工智能做什么?我们如何衡量真正的进展?”为了在“下半场”蓬勃发展,我们需要及时转变思维方式和技能,或许更接近产品经理的水平。
1. The first half 上半场
为了理解上半场,我们先来看看获胜者。你认为迄今为止最具影响力的人工智能论文有哪些?
我尝试了斯坦福 224N 的测验,答案不出所料:Transformer、AlexNet、GPT-3 等等。这些论文有什么共同点?它们提出了一些基础性突破来训练更好的模型。而且,它们还通过在某些基准测试中展示一些(显著的)改进,成功地发表了论文
不过,它们之间有一个潜在的共性:这些“赢家”都是训练方法或模型,而非基准或任务。即使是最具影响力的基准 ImageNet,其引用量也不到 AlexNet 的三分之一。方法与基准之间的差异在其他任何地方都更加显著——例如,Transformer 的主要基准是 WMT’14,其研讨会报告引用量约为 1,300 次,而 Transformer 的引用量超过 160,000 次。
这说明了游戏的前半部分:专注于建立新的模型和方法,评估和基准是次要的(尽管这对于使纸质系统发挥作用是必要的)。
为什么?一个重要原因是,在人工智能的前半段,方法比任务更难,也更令人兴奋。从零开始创建一个新的算法或模型架构——想想反向传播算法、卷积网络(AlexNet)或 GPT-3 中使用的 Transformer 这样的突破——需要非凡的洞察力和工程设计。相比之下,为人工智能定义任务通常感觉更直接:我们只需把人类已经完成的任务(比如翻译、图像识别或国际象棋)变成基准即可。不需要太多的洞察力,甚至不需要工程设计。
方法也往往比单个任务更通用、适用范围更广,这使得它们尤其有价值。例如,Transformer 架构最终推动了计算机视觉、自然语言处理、强化学习和许多其他领域的进步,远远超出了它最初证明自身价值的单个数据集(WMT’14 翻译)。一个优秀的新方法能够在许多不同的基准测试中取得优异成绩,因为它简单且通用,因此其影响往往超越单个任务。
这项游戏已经运行了数十年,并激发了改变世界的理念和突破,这些理念和突破体现在各个领域的基准性能不断提升。这项游戏究竟为何会发生改变?因为这些理念和突破的积累,在创建解决任务的有效方案方面产生了质的改变。
2. The recipe 秘诀是什么?
不出所料,它的要素包括大规模语言预训练、规模化(数据和计算)以及推理和行动的理念。这些听起来像是你在旧金山每天都会听到的流行语,但为什么称之为秘诀呢?
我们可以通过强化学习(RL)的视角来理解这一点,强化学习通常被认为是人工智能的“终局”——毕竟,从理论上讲,RL 可以保证赢得比赛,而且从经验上讲,很难想象没有 RL 的超人系统(例如 AlphaGo)。
在强化学习中,有三个关键组成部分: 算法、环境和先验 。长期以来,强化学习研究人员主要关注算法(例如强化学习、深度 Q 网络、时间差分学习、演员-评论家、概率概率优化、概率概率分布……)——这是代理学习的智力核心——而将环境和先验视为固定或最小的。例如,Sutton 和 Barto 的经典教科书全是关于算法的,几乎没有涉及环境或先验。
然而,在深度强化学习时代,经验表明环境至关重要:算法的性能通常与其开发和测试的环境高度相关。如果忽略环境,就有可能构建出一个只在简单环境中表现优异的“最优”算法。那么,我们为什么不先弄清楚我们真正想要解决的环境,然后再找到最适合它的算法呢?
这正是 OpenAI 最初的计划。它构建了 gym ,一个用于各种游戏的标准强化学习环境,然后是 World of Bits 和 Universe 项目 ,试图将互联网或计算机变成游戏。这是一个很棒的计划,不是吗?一旦我们把所有数字世界都变成一个环境,并用智能强化学习算法来求解,我们就有了数字通用人工智能 (AGI)。
计划不错,但并非完全有效。OpenAI 在这方面取得了巨大进步,利用强化学习解决了 Dota 和机械手等问题。但它在解决计算机使用或网页导航方面却始终未能取得进展,而且在一个领域工作的强化学习智能体无法迁移到另一个领域。这说明存在一些问题。
直到 GPT-2 或 GPT-3 之后,人们才发现缺失的部分是先验知识。你需要强大的语言预训练,将一般常识和语言知识提炼成模型,然后对其进行微调,使其成为网络(WebGPT)或聊天(ChatGPT)代理(并改变世界)。 事实证明,强化学习最重要的部分甚至可能不是强化学习算法或环境,而是先验知识,而先验知识可以通过一种与强化学习完全无关的方式获得。
语言预训练为聊天创造了良好的先验,但在控制计算机或玩电子游戏方面却效果不佳。为什么?这些领域远离互联网文本的分布,单纯地在这些领域进行 SFT / RL 泛化效果很差。我在 2019 年就注意到了这个问题,当时 GPT-2 刚刚问世,我在其基础上进行了 SFT / RL 来解决基于文本的游戏 ——CALM 是世界上第一个通过预训练语言模型构建的代理。但是代理需要数百万个 RL 步骤才能完成一场爬山赛,而且它无法迁移到新游戏中。虽然这正是 RL 的特点,对 RL 研究人员来说也不是什么奇怪的事情,但我觉得很奇怪,因为我们人类可以轻松玩一款新游戏,并且在零样本训练中表现明显更好。然后我迎来了人生中第一个顿悟时刻——我们能够泛泛而谈,因为我们可以选择做的不仅仅是“去 2 号柜子”或“用 1 号钥匙打开 3 号宝箱”或“用剑杀死地牢”,我们还可以选择思考诸如“这个地牢很危险,我需要一件武器来战斗。没有可见的武器,所以也许我需要在上锁的盒子或宝箱里找一把。3 号宝箱在 2 号柜子里,让我先去那里打开它。”
思考,或者说推理,是一种奇怪的行为——它不会直接影响外部世界,但推理空间却是开放的、组合无限的——你可以思考一个单词、一个句子、一整段文章或 10000 个随机英语单词,但你周围的世界不会立即改变。在经典的 RL 理论中,这是一个糟糕的交易,使决策变得不可能。想象一下,你需要从两个盒子中选择一个,只有一个盒子里有 100 万美元,另一个盒子是空的。你预计能赚到 50 万美元。现在想象一下我添加无限个空盒子。你预计什么也赚不到。但是通过在任何 RL 环境的动作空间中添加推理,我们利用语言预训练先验进行泛化,并且我们可以为不同的决策提供灵活的测试时间计算。这真是一件神奇的事情,很抱歉在这里没有完全理解它,我可能需要为此写另一篇博客文章。欢迎阅读 ReAct 了解代理推理的原始故事,并了解我当时的感受。目前,我的直观解释是:即使你添加了无限多的空盒子,你也会在各种游戏中见过它们,选择这些盒子可以让你更好地为任何特定游戏选择有钱的盒子。我的抽象解释是: 语言通过代理的推理进行泛化 。
一旦我们拥有了正确的强化学习先验(语言预训练)和强化学习环境(将语言推理添加为动作),强化学习算法可能就会成为最微不足道的部分。因此,我们有了 o 系列、R1、深度研究、使用计算机的代理,以及更多未来。真是讽刺!长期以来,强化学习研究人员更关心算法而不是环境,却没有人关注先验——所有强化学习实验基本上都是从零开始。但我们花了几十年的时间才意识到,也许我们的优先级应该完全颠倒过来。
But just like Steve Jobs said: You can’t connect the dots looking forward; you can only connect them looking backward.
但正如史蒂夫·乔布斯所说:你无法向前串联起这些点;你只能回顾过去,将它们串联起来。
3. The second half 下半场
这个配方彻底改变了比赛。回顾一下上半场比赛:
We develop novel training methods or models that hillclimb benchmarks.
- 我们开发了爬山基准的新颖训练方法或模型。
We create harder benchmarks and continue the loop. - 我们创建更严格的基准并继续循环。
这个游戏被毁了,因为:
The recipe has essentially standardized and industried benchmark hillclimbing without requiring much more new ideas. As the recipe scales and generalizes well, your novel method for a particular task might improve it by 5%, while the next o-series model improve it by 30% without explicitly targeting it.
- 该方案本质上已经标准化并实现了基准爬山算法的工业化,无需太多新想法。由于该方案具有良好的可扩展性和泛化能力,您针对特定任务的新方法可能会将其提升 5%,而下一个 O 系列模型无需明确针对该任务即可将其提升 30%。
Even if we create harder benchmarks, pretty soon (and increasingly soon) they get solved by the recipe. My colleague Jason Wei made a beautiful figure to visualize the trend well:
- 即使我们创建更严格的基准,它们很快(而且越来越快)也会被配方解决。我的同事 Jason Wei 制作了一张漂亮的图表,很好地展现了这一趋势:
那么下半场还有什么可玩的呢?如果不再需要新方法,更难的基准测试很快就会被解决,我们该怎么办?
我认为我们应该从根本上重新思考评估 。这不仅意味着要创建新的、更严格的基准,更意味着要从根本上质疑现有的评估机制 ,并创建新的机制,从而迫使我们发明超越现有方法的新方法。这之所以困难,是因为人类有惰性,很少质疑基本的假设——你只是把它们视为理所当然,却没有意识到它们是假设,而不是定律。
为了解释惯性,假设你发明了一种基于人类考试的历史上最成功的评估方法之一 。这在 2021 年是一个非常大胆的想法,但 3 年后它已经饱和了。你会怎么做?很可能是设计一个难度更大的考试 。或者假设你只是解决了一些简单的编码任务 。你会怎么做?很可能是寻找更难的编码任务来解决,直到你达到 IOI 黄金水平。
惰性是自然的,但问题就在这里。人工智能在国际象棋和围棋比赛中击败了世界冠军,在 SAT 和律师资格考试中超越了大多数人类,并在 IOI 和国际海事组织中达到了金牌水平。但世界并没有发生太大变化,至少从经济和 GDP 来看是如此。
我把这称为效用问题 ,并认为这是人工智能最重要的问题。
Perhaps we will solve the utility problem pretty soon, perhaps not. Either way, the root cause of this problem might be deceptively simple: our evaluation setups are different from real-world setups in many basic ways. To name two examples:
也许我们很快就能解决效用问题,也许不会。无论如何,这个问题的根本原因可能看似简单: 我们的评估设置在许多基本方面与现实世界的设置不同 。举两个例子:
- Evaluation “should” run automatically, so typically an agent receives a task input, do things autonomously, then receive a task reward. But in reality, an agent has to engage with a human throughout the task — you don’t just text customer service a super long message, wait for 10 minutes, then expect a detailed response to settle everything. By questioning this setup, new benchmarks are invented to either engage real humans (e.g. Chatbot Arena) or user simulation (e.g. tau-bench) in the loop.
评估“应该”自动运行 ,因此通常情况下,代理会接收任务输入,自主执行任务,然后获得任务奖励。但实际上,代理必须在整个任务过程中与人类互动——你不能只是给客服发一条很长的短信,等待 10 分钟,然后期待得到详细的回复来解决所有问题。通过质疑这种设置,新的基准被发明出来,以便让真人(例如 Chatbot Arena )或用户模拟(例如 tau-bench )参与到循环中。
- Evaluation “should” run i.i.d. If you have a test set with 500 tasks, you run each task independently, average the task metrics, and get an overall metric. But in reality, you solve tasks sequentially rather than in parallel. A Google SWE solves google3 issues increasingly better as she gets more familiar with the repo, but a SWE agent solves many issues in the same repo without gaining such familiarity. We obviously need long-term memory methods (and there are), but academia does not have the proper benchmarks to justify the need, or even the proper courage to question i.i.d. assumption that has been the foundation of machine learning.
评估“应该”运行独立同分布。 如果您有一个包含 500 个任务的测试集,您可以独立运行每个任务,计算任务指标的平均值,然后得出一个总体指标。但实际上,您是按顺序而不是并行解决任务的。随着 Google SWE 对代码库越来越熟悉,她解决 google3 问题的能力会越来越强,但 SWE 代理在没有达到这种熟悉程度的情况下解决了同一个代码库中的许多问题。我们显然需要长期记忆方法(而且确实存在 ),但学术界没有适当的基准来证明这种需求,甚至没有足够的勇气去质疑作为机器学习基础的独立同分布假设。
These assumptions have “always” been like this, and developing benchmarks in these assumptions were fine in the first half of AI, because when the intelligence is low, improving intelligence generally improves utility. But now, the general recipe is guaranteed to work under these assumptions. So the way to play the new game of the second half is
这些假设“一直”如此,在人工智能的前半段,基于这些假设制定基准测试也没什么问题,因为**当智能水平较低时,提升智能水平通常可以提高效用 。**但现在,通用方案在这些假设下肯定行得通。因此,在后半段,玩转新游戏的方法是
- We develop novel evaluation setups or tasks for real-world utility.
我们为现实世界的实用性开发了新颖的评估设置或任务。 - We solve them with the recipe or augment the recipe with novel components. Continue the loop.
我们用配方解决问题,或者用新的成分来增强配方。继续循环。
这个游戏很难,因为它不为人熟知。但它也很刺激。前半部分的玩家解决电子游戏和考试问题,而后半部分的玩家则能够利用智能构建实用产品,打造价值数十亿甚至数万亿美元的公司。前半部分充斥着渐进式方法和模型,而后半部分则在一定程度上对其进行了过滤。通用的配方只会碾压你的渐进式方法,除非你创造出打破配方的新假设。这样,你才能进行真正改变游戏规则的研究。
Welcome to the second half!
欢迎来到下半场!
这篇博文基于在斯坦福大学 224N 和哥伦比亚大学的演讲。
参考
https://ysymyth.github.io/The-Second-Half/