先锋 趋势 方法 投研 作者
Francois Chollet:ARC 反思——NeurIPS 2024
返回节目精读

Francois Chollet:ARC 反思——NeurIPS 2024

摘要

  • ARC Prize 2024表明,更好的想法可以抵消1,000倍的算力优势。 Kaggle参赛方案在一块P100上运行不到12小时,成本约10美元;前沿模型方案则可能花费1万美元,但两者最终都达到约55%的准确率,即使按单个任务计算,前沿赛道使用的算力也约多出200倍。Chollet的投资框架非常直接:「算力本质上是想法的乘数」(“Compute is really a multiplier for ideas”),因此单纯堆算力无法替代更好的方法。

  • 两种成功范式分别是深度学习引导的程序合成和测试时训练,但两者的适应方式存在根本差异。 静态LLM转导在ARC上的准确率停留在约10%以下;针对每个任务的示例进行微调后,准确率可提升至50%-55%,而且「可能很快达到60%」。Chollet承认这属于合理的泛化,但更偏好通过搜索构造可验证程序的系统:「我不认为用梯度下降替代编程过程是个好主意。」

  • ARC 1正在接近基准饱和,但业界距离有意义的AGI仍然很远。 2020年最佳单项提交得分为20%,但集成方案达到49%;2024年,单项提交达到约55%,完整集成达到81%,接近85%的目标,而人类得分大约为97%-99%。基准被攻克与智能真正实现之间的落差,正是Chollet称ARC为「通往AGI的指南针」而非AGI测试的原因;他计划推出ARC 2,使用更多样、冗余更低的任务,并加强数据泄漏控制。

  • 这场竞赛支持混合架构,因为感知和算法在相反的任务类别上各有优劣。 神经转导擅长模糊、结构连续的识别;符号归纳擅长离散流程,并能在示例上执行验证。因此Chollet偏好的技术栈是:先尝试可验证的归纳,失败后再退回转导,同时在两者之间共享表示:「有些问题适合用向量空间作为数据结构,有些问题则适合用符号离散程序作为数据结构。」

  • Chollet认为,o1——明确只是推测——是在思维链上进行测试时搜索,这使其真正区别于静态推理。 在他看来,系统似乎会探索分支、回溯和编辑,直到构造出接近最优的自然语言程序;考虑到token数量和延迟,单次前向传播「肯定不可信」。准确率应当随搜索算力呈对数提升,因此按算力归一化报告基准成绩至关重要。

  • 他的智能理论围绕适应新颖性展开,并进一步将重复解决方案转化为可复用抽象。 在这一框架下,人类System 2推理是反复迭代的模糊直觉,被约束进一个符号化产物;意识则提供自洽性检查,防止过程变成「幻觉」或「做梦」。这也解释了为什么今天的智能体在串联不可靠猜测时会失败,却能在人工设计的工作流提供任务分解和「强护栏」时表现更好。

  • 离开Google后,Chollet正在围绕深度学习引导的程序合成,最终目标是人类水平AGI,打造一家研究公司。 其产品愿景是让用户通过自然语言、绘图和输入输出示例进行编程,由系统主动要求用户消除歧义;可复用抽象随后将在新的终身分布式学习架构中流通。他明确表示,当前前沿模型「连o1也不例外」尚未达到这一水平,但最终系统将让非程序员把软件复杂性交给AI处理,而不只是自动补全代码。

精读

1. ARC Prize推动业界走出“只靠预训练实现AGI”的路径

  • Chollet对2024年的核心反思,是一场叙事反转:此前的处方是「模型扩大100倍、数据增加100倍」,认为AGI会从规模扩张中自然涌现。如今更明确的认识是,必须通过测试时搜索、程序合成或类似机制,显式加入某种System 2推理。

  • ARC Prize之所以成功,是因为它满足了研究者的潜在需求——他们早已怀疑「普通LLM不可能走到AGI」。竞赛的热度把这种直觉变得具体,但Chollet反对把成绩当作二元化的AGI指标:ARC是一个研究工具,目的是把注意力引向强泛化能力。

  • 这并不意味着他转向纯符号主义。Chollet大约从2013年开始从事深度学习研究,2014年起通过Keras推广深度学习,并从2017年开始倡导深度学习引导的程序合成:「我一直都是深度学习派。」他的方案是在神经模式识别上增加离散推理,而非将其替换掉。

2. 10美元方案追平1万美元的前沿模型算力

  • 私有Kaggle赛道要求提交自包含notebook,因为任务不能发送给第三方API。每个方案都能在一台配备单块P100 GPU的虚拟机上运行不到12小时,算力成本约10美元,同时保留完全私有的测试集。

  • 公开前沿模型赛道使用400个公开评测任务和100个半私有任务,后者发送给包括OpenAI和Anthropic在内的模型提供商。参赛方案可以消耗1万美元的API额度:总预算是前者的1,000倍;由于评测任务更多,按单个任务计算,使用的算力约多出200倍。

  • 结果令Chollet感到意外:两条赛道的得分都在55%左右。花费10美元的系统,与花费1万美元的系统取得了相同的头部准确率,证明「算力本质上是想法的乘数」,也说明大幅增加投入无法挽救效率明显更低的方法。

  • 如果搜索语言足够合适,无限算力仍然可以暴力破解ARC;Chollet估计,破解整个数据集可能需要数亿美元的算力。这在理论上有效,但会是「极其低效、极其愚蠢的想法」,因此如果不披露算力消耗,单独报告分数正变得越来越没有意义。

3. 测试时训练有效,但程序搜索的结构更清晰

  • 两类方法取得了成功。深度学习引导的程序合成使用LLM生成代码并反复调试,基于DSL的合成仍未得到充分探索;测试时训练则在每个新任务上,利用示例输入输出对预训练ARC模型进行微调,再直接预测输出网格。

  • 没有适应过程时,静态LLM转导的准确率停留在约10%以下,因为它只能提取并重新应用预训练模式。按任务进行微调,会把潜在知识重新组合成任务专属模型,将准确率推高至50%-55%;Chollet认为「可能很快达到60%」。

  • Scarfe反驳称,任务专属增强和微调可能违反面向开发者的泛化要求,因为它依赖了人类专业化。Chollet不同意:监督信号来自系统自主处理的示例,而人类知道ARC的格式,并不比程序归纳内部使用针对该格式的机制更具排他性。

  • 他仍然偏好离散适应。测试时训练让梯度下降完成重组,并将任务解存储在修改后的权重中;程序搜索则将其存储为显式程序。在Chollet看来,人类解决ARC更接近函数组合而非梯度下降,因此类似o1的搜索更具吸引力。

  • Chollet对前沿规模部署测试时训练的疑虑,主要不是基础设施问题:服务流程可以重新设计,但该方法需要清晰的输入—目标对,而ARC具备这一条件,大多数现实问题却没有。

4. 架构调整只是把智能问题重新定位

  • Scarfe认为,未来的Transformer或许能克服复制、计数和分布外算法输入上的失败,使转导重新具备可行性。Chollet同意,架构变化可以嵌入强结构先验,也能让梯度下降发现泛化距离更远的解。

  • 但问题在于,首先必须由人类工程师理解因果结构,并编码出与其「同构」的架构。因此,完全自主的新颖性适应需要一台机器自行识别结构并生成架构;在Chollet看来,这一问题至少与通用程序搜索同样困难。

  • 有些方案在半私有数据集上的得分,比公开评测低约10个百分点。程序合成方案则没有出现类似下滑,在两套数据集上的成绩基本一致。

  • 不过,Symbolica提出的路径仍然令Chollet感到兴趣:先用符号过程把任务定义转化为专用深度学习架构,再对其进行训练。他称这一方法「非常、非常原创」,并表示不知道还有其他人在推进同样的构造方式。

5. ARC 1远未解决智能,基准却可能先被攻克

  • 在Kaggle 2020年的首届ARC竞赛中,冠军Icecuber使用基础暴力程序枚举,得分只有20%。但将所有提交方案组合起来后,得分达到49%——这表明,早在2024年取得进展之前4年,私有数据集已有近一半可以被暴力枚举器覆盖。

  • 2024年,最佳单项提交达到约55%,仍明显低于85%的门槛;Chollet估计,人类看到私有数据集后可以得到约97%、98%或99%的成绩。但所有2024年提交的集成方案达到81%,尽管这些系统及其集成结果都谈不上接近AGI。

  • 结论令人不适,却很有用:规模可以通过叠加狭窄覆盖范围,让基准趋于饱和。ARC 1的任务多样性不够,存在一定冗余,挑战性也不够稳定,因此基准成功越来越多地衡量覆盖面和暴力搜索能力,而非它原本想要隔离的泛化能力。

6. ARC 2旨在抵抗过拟合和排行榜泄漏

  • ARC 2并不是在2024年结果出来后临时起意。Chollet在2020年竞赛暴露ARC 1的缺陷后,于2022年初公开宣布ARC 2,并与达沃斯的Lab42一起开始众包任务,随后继续扩充和筛选任务集合。

  • 人类测试者已经尝试这些任务,产生了包括解题率和尝试次数在内的难度数据。目标是构建3个经过难度校准的数据集:公开、半私有和完全私有,使未过拟合的公开成绩能够预测另外两套数据集上的表现。

  • 在不同竞赛中重复使用同一私有数据集,会让提交者反复观察分数,造成渐进式信息泄漏;提交次数足够多时,甚至可能重构测试内容。ARC 2将在竞赛期间返回半私有成绩,完全私有评测则等到最后生成最终排行榜时才运行。

  • 这一设计也能让受限条件下的Kaggle系统与o1 Pro等前沿模型,在相同任务上进行可比比较,即使两者算力预算不同。Chollet预计在完成最终人类测试后,于「明年初」发布。

7. 感知和算法需要不同的表示方式

  • 2024年最具启发性的发现之一,是程序归纳和神经转导解决的是「显著不同的任务集合」。转导擅长感知型模式识别;显式程序则擅长 transformation 离散、算法化且易于用流程描述的任务。

  • Chollet用字母A作类比说明这一差异:经过视觉训练的系统可以立即识别各种手写A,但要写出一个识别它们的符号算法却极其困难。Scarfe的思想实验承认,确实存在一个等价于MNIST网络的Python程序;其最简单的表示方式可能「看起来非常像当前网络正在做的事情」。

  • 因此,只要程序归纳适用,就应当优先使用,因为候选程序可以在每个示例上执行并进行形式化检查。转导是无法验证的猜测;多数投票假设错误猜测会分散在不同答案上,而正确猜测会趋于收敛。这一假设可以提高置信度,却永远无法提供证明。

8. 多视角和潜在程序提供了实用的混合路径

  • Omni-ARC使用同一个模型完成程序编写、程序解释、转导、输入生成及其他ARC相关任务。从多个角度观察问题,能提高网络恢复问题「真实形状」的概率,同时在互补目标之间转移信息。

  • 这种多任务设计也能对神经表示进行正则化。只通过一种模态训练的网络可能会抓住噪声相关性;迫使同一表示支持多个视角,可以让一个任务提供的证据抵消另一个任务中学到的噪声。

  • Chollet重点提到Clément Bonnet及其同事的工作,称其为自己最喜欢的竞赛论文之一。他们的VAE学习一个程序潜在空间,然后在测试时通过该空间进行梯度下降,这是一种既不同于离散搜索,也不同于权重微调的「潜在空间中的审议」。

  • Scarfe提出,梯度搜索是否需要一个平滑、相对同质或凸的景观。Chollet表示,梯度下降确实需要相对平滑的表面,而VAE构造出的结构化潜在空间是关键。他提出的扩展方案是:将有希望的点解码成符号程序,在示例上运行这些程序,再进行局部离散搜索,把潜在猜测转化为可验证产物。

9. 程序应当作为图搜索,而非token字符串生成

  • 如果Chollet在ARC上投入1年,他会推进深度学习引导的程序合成,但不会采用当前默认的逐token代码生成方式。「程序不是token序列」,而是由算子组成的图;合成过程应当是树搜索,由神经模型引导分支和定向图编辑。

  • 人类不会在脑中枚举大量ARC程序。人类首先通过对象、属性、关系,尤其是因果结构来描述网格;这一任务模型会大幅压缩候选空间,使得只需考虑少量程序。足够强的建模能力可能「几乎完全消除搜索的需要」。

  • Scarfe将这一演进类比为商业LLM软件从内嵌聊天机器人转向编排底层工具。Chollet表示赞同:图搜索允许模型局部且有意识地修改程序,而重新生成一串token,会让同样的定向干预困难得多。

  • Kevin Ellis的重混路线——从100个手工构造的解出发,生成实例,再通过检索组合概念——解决的是ARC数据稀疏问题,而不是搜索结构问题。Chollet预计,密集的合成采样会帮助LLM,但也警告这会导致严重过拟合,与半私有数据集上的已观察到的下滑一致。

10. 推理是由意识约束的新颖性适应

  • Chollet区分了重放和适应。应用记忆中的乘法算法是一种推理,适合LLM;面对新颖性时,则需要即时重新组合已有构件,形成一个新模型。因此,真正有用的问题不是「它们能否推理」,而是「它们能否适应新颖性」。

  • 抽象来自重复出现的新颖性:当同一种重组在多个成功方案中反复出现时,系统就能将其重构为可复用的构件。下一个相关问题因此只需更少步骤和更少能量。固定DSL的能力有限;系统必须持续丰富自身语言,无论这一语言建立在DSL还是Python之上。

  • Chollet不认为推理存在一个内在分数。必须先定义目标,再观察行为;给定目标后,最佳模型可能是保留实现目标所需因果因素的最简单模型。泛化能力——一个系统能够适应的新颖性规模——是一个可能的操作性指标。

  • 在认知层面,Chollet认为模糊的模式识别是基础。System 2在直觉被反复应用于结构化产物时出现:棋手先猜测哪些分支重要,只展开部分走法,并聚焦棋盘的特定区域,将连续判断与离散模拟结合起来。

  • 无约束的迭代会漂移成幻觉或做梦——「反复直觉地猜测下一步会发生什么」,却不顾过去。他的理论是,意识提供自洽性护栏,把过去和预期未来带入当下的「连接点」;因此,显式的逐步推理需要意识。

  • 他还认为,人类效率不只是廉价操作的问题:神经元比晶体管更耗能,但人类只用几卡路里就能解决ARC,因为使用的神经操作相对更少。他预计,当AI达到类似的能源效率时,AGI就会出现。

11. o1指向搜索,新公司则瞄准完整技术栈

  • Chollet强调,自己没有关于o1的内部信息。他最好的推测是,o1会对可能的思维链进行测试时树搜索,包括评估分支、回溯和编辑,直到模型生成一个看起来接近最优的自然语言程序。他称这种新颖性适应是超越经典深度学习的「真正突破」。

  • Scarfe提出另一种理论:过程监督发生在训练期间,但推理只是一次前向传播。Chollet称这「肯定不可信」:token数量、延迟和算力都清楚表明系统在进行搜索。训练过程可能类似AlphaZero式地学习复现强思维链,但推理时仍会在思维链空间中搜索;准确率随后随算力呈对数提升。

  • 当前智能体仍然受累积误差约束:LLM是有用的「猜测机器」,但串联大量易错猜测会迅速降低可靠性。Scarfe以AI Scientist为例指出,任务分解产生的成果远好于一次性生成论文;Chollet表示赞同,因为人工程序员提供了编排和「强护栏」,把迭代式System 1转化为System 2。

  • 在离开Google几周后,Chollet正与一位朋友组建公司和研究实验室,招聘团队,并将深度学习引导的程序合成作为全职工作。他希望解决方案和基准共同演进,明确以人类水平AGI为目标,同时不会参加自己负责的ARC Prize。

  • 他的产品愿景是通过输入输出对、自然语言、绘图或可视化数据流图进行编程。AI会标出含糊不清的情况,询问用户哪个输出是正确的,并与用户协作迭代程序;当前前沿系统「连o1也不例外」,尚不具备以人类工程师水平处理软件复杂性的能力。

  • 除了单一助手,他还设想「一种全新的架构」:大量实例为不同用户解决问题,识别其中的共性,并通过终身分布式学习,将这些共性作为可复用构件进行流通。Chollet拒绝透露具体实现——「我不能真正告诉你我们到底在构建什么」——但将这一抽象循环视为能力持续提升的引擎。