Boosting Performance on ARC is a Matter of Perspective
提升 ARC 性能:视角决定成效
https://arxiv.org/pdf/2505.07859?
摘要
抽象与推理语料库(ARC-AGI)对大语言模型(LLMs)构成了重大挑战,暴露了它们在抽象推理能力方面的局限性。在本研究中,我们在训练、生成和评分阶段利用任务特定的数据增强,并采用深度优先搜索算法来生成多样化且高概率的候选解决方案。此外,我们不仅将大语言模型用作生成器,还用作评分器,利用其输出概率来选择最有前景的解决方案。我们的方法在公开的ARC-AGI评估集上取得了71.6%的得分(400个任务中解决了286.5个),展示了在公开可用方法中的最先进性能。尽管同时期的一些闭源工作报告了更高的得分,但我们的方法以其透明性、可重复性以及显著低廉的推理成本脱颖而出,平均每个任务仅需约2分钱的成本即可在现成硬件上完成。
1引言
大语言模型(Large Language Models,LLMs)在多种任务中展现出卓越的能力,从自然语言处理到代码生成。即便如此,评估这些系统在何种程度上具备抽象推理能力,仍然是人工智能领域面临的一项重大挑战。由 Chollet(2019)提出并用于评估人工智能核心知识和泛化能力的抽象与推理语料库(Abstraction and Reasoning Corpus,ARC-AGI)便体现了这一难题。尽管对于人类而言,这些任务(如图1所示)看似简单,但传统的算法方法(Wind,2020)和现代神经网络架构(Li 等,2024a)在 ARC-AGI 上都难以取得显著成功,这突显了当前人工推理方法的一些潜在局限性。
尽管模型规模的扩大无疑在许多任务上带来了显著的性能提升,但仅靠规模本身并不能完全解决像 ARC-AGI 这类挑战所暴露的核心问题。事实上,开源系统的快速发展——例如 LLaMA-3.2-3B(Dubey 等,2024)和 Nvidia NeMo-Minitron-8B(Sreenivas 等,2024)——表明即使在相对较小的规模下也能涌现出显著的能力。这也与越来越多的研究证据一致,即大语言模型的许多被认为的缺陷可能源于实现细节或次优的数据表示,而非根本性的推理缺陷(Singh & Strouse,2024b;Bostrom & Durrett,2020;Sun 等,2023)。例如,Allen-Zhu 和 Li(2024)观察到模型可能意识到自己的错误却无法纠正,而 Allen-Zhu 和 Li(2023)则强调细微的数据建模选择如何阻碍微调的进展。总体来看,这些见解表明模型通常具备应对 ARC-AGI 的潜在能力;真正的挑战在于创造一种条件,使这些能力能够被可靠地表达出来。
基于这些见解,我们开发了一种专门针对ARC数据集的方法。我们的方法在公开的ARC-AGI评估集上实现了开源模型中最先进的性能,得分为71.6%(或点数),并超过了LeGris等人(2024年)测量的平均人类表现60.2% 。
特别是,我们在大语言模型(LLM)预测的基础上采用深度优先搜索(DFS)算法,以生成多样化且高概率的解决方案,并再次利用相同的LLM作为专家的产物(见第4.1节),以选择最佳候选方案。这种双重角色使我们能够通过增强的似然估计对候选解决方案进行排序,从而有效放大模型潜在的推理能力。与更大规模或闭源系统相比,我们的方法以其透明性、可重复性以及极低的推理成本脱颖而出,每个任务的花费仅为约0.02美元,而arcprize.org(2025年)报告的o3模型每个任务的成本高达17美元。这表明,ARC-AGI上的抽象推理并非大规模专有模型的专属领域。
在接下来的章节中,我们将详细说明我们的数据建模和训练策略,描述基于DFS的解决方案探索过程,并提供全面的结果和消融研究。一旦论文被接受,我们将公开最终模型以及训练和推理代码。
2. 相关工作
抽象与推理语料库(ARC)在推动人工智能领域抽象推理研究方面发挥了核心作用,激发了大量专注于其数据集、竞争性基准测试以及受限资源驱动下的创新解决方案开发的研究。原始 ARC 数据集: 由 Chollet(2019)引入的抽象与推理语料库(ARC-AGI)挑战了语言模型能够从少量示例中有效泛化的观点,通常称为“少样本提示”(few-shot prompting)。原始的 ARC-AGI 数据集包含 900 个推理任务,分为 400 个训练任务、400 个公开评估任务和 100 个私有且未发布的评估任务。每个任务涉及大小各异的网格,范围从 1x1 到 30x30,并使用包含十种不同颜色的调色板。
个体 ARC 任务的目标是从示例中识别出规则,并将其应用于新的输入网格以生成正确的输出。当模型在最多两次尝试内生成准确输出时,该任务被视为成功解决。这些任务被设计为对人类来说简单,但对机器学习系统构成挑战,突出了当前人工智能在抽象推理方面的局限性。根据 LeGris 等人(2024)的研究,普通人类能够正确解决 60.2% 的评估任务,而通过两次猜测至少有一个参与者解决了 97.8% 的任务。
竞赛推动的进步: 自 2019 年引入 ARC 以来,多个拥有数百名参赛者的竞赛旨在开发在该数据集上表现优异的解决方案。截至 2024 年的方法通常采用基于领域特定语言(DSL)的程序搜索,并取得了 39% 的 Top-3 得分(Wind, 2020)。
2024 年,ARC-AGI 又举办了一次 Kaggle 竞赛,这是首次大型语言模型(LLM)方法主导排行榜。一种流行的方法是“测试时训练”(Test-Time Training, TTT)。这种方法最初由Sun等人(2020)提出,Cole(2024)首次将其应用于 ARC,随后 Akyurek 等人(2024)进一步推广。测试时训练利用每个挑战中提供的少量示例作为小型数据集。通过对这些示例进行微调后再生成答案,LLM可以显著提升性能。Akyurek 等人(2024)表明,TTT 使他们在 ARC-AGI 上的表现翻倍。TTT在像ARC这样的竞赛环境中特别有效,因为它允许模型从有限的示例中提取额外的训练数据,增强其泛化能力并解决新任务。
值得注意的方法: 其他方法探索了多种利用 LLM 的策略。Li 等人(2024c)将两种主要路径分类为:归纳(Induction) 和 转导(Transduction) 。其中,归纳是指 LLM 推理出一个可以解决问题的函数,然后应用它(通常使用 Python 或 DSL),而转导则是指 LLM 使用问题标记化描述直接生成解决方案(见图2)。作者认为,尽管使用相同的底层架构,这两种方法解决的是不同类型的问题。在他们的实验中,归纳和转导分别解决了约 38% 和 43% 的问题,通过集成方法可将这一比例提高到 56.75%。此外,他们还使用归纳网络生成了一组大量新颖的挑战,命名为 ARC-Heavy。
此外,一些方法使用了替代的ARC数据集,例如 ConceptARC(Moskvichev 等人,2023)。最值得注意的——也是我们唯一使用的附加数据集——是广为人知的 RE-ARC 数据集。Hodel(2024)引入了这个数据集,它重新实现了公共训练数据集中全部 400 个任务。他们的代码可用于为这些任务生成任意数量的训练数据,但并未引入新的挑战。其他所有数据集可能包含模仿评估挑战的任务——从而极大降低了这些挑战的难度。仅使用 RE-ARC 数据集,我们仍然极大地增加了训练数据量,同时保持了解决 ARC 挑战的初衷。
数据增强一直是先前 ARC-AGI 竞赛中的常见做法(Akyurek 等人,2024;Li 等人,2024b)。然而,我们的方法超越了传统的数据集增强,在整个方法中应用了变换操作,包括训练、推理和选择阶段。
表1比较了近期的 ARC 方法,结果显示 OpenAI-o3(一种闭源方法)目前报告了最高得分,但缺乏可复现的细节。此外,o3 对每个任务都使用了巨大的计算资源,单个挑战就耗费了 17 美元的算力(arcprize.org, 2025)。相比之下,TTT+BARC 是完全开源的,并且是有史以来第一个在 ARC 上超过平均人类表现的公开方法,展示了透明方法论在推进抽象推理研究方面的优势。
3. 符号与设定
为了使我们的方法具有形式上的基础,我们从贝叶斯视角出发来解决谜题问题,将每个谜题视为来自潜在解空间分布的一个部分观测结果。
我们考虑一组任务(例如从 ARC 基准中抽取),其中每个任务用 p∈P表示,P代表所有可能任务的空间。对于每个任务 p,都存在一个对应的解空间 Sp。
问题表示 。在本文中,我们交替使用“任务”(task)、“谜题”(puzzle)和“问题”(problem)这三个术语,它们都指由少量 k个输入-输出示例以及一个单独的测试输入所定义的问题描述。具体地,我们表示:
对于 ARC 谜题来说,这类增强包括对每个任务进行旋转和反射、打乱示例顺序以及对颜色进行置换。增强集合 Φ 通过编码所有有效解都应满足的不变性,定义了先验概率 P(s)的一部分。
4. 方法
其中 T>0是对 LLM 概率估计设定的一个阈值。在实际操作中,我们在潜在解空间上执行深度优先搜索(DFS),并对累积概率低于阈值 T的任何部分路径进行剪枝。如果多个增强形式产生了相同的解(在增强意义下等价),我们会将它们合并为一个候选解。通过在推理过程中缓存中间计算结果,这种基于 DFS 的方法可以快速定位所有高于阈值 T的可能解。这确保了具有足够高概率的解 P^(s∣p)不会被遗漏,而概率较低的解则不会被考虑。
(3) 基于“专家乘积”的候选排序 。然而,一旦我们生成了候选集合 Cp,T,根据单一增强形式所得到的最高概率解并不总是正确的,部分原因在于自回归生成中的不一致性。
我们可以通过重新利用增强来缓解这一问题,甚至从中受益:即对每一个候选解 s,在每一种增强变换 ϕj∈Φ下重新评估,并使用 LLM 提供的概率 P^来计算其似然。
与前一步不同,此阶段不再依赖生成式采样;而是直接评估每个增强输入 ϕj(p)对应的解 s的各个词元的对数似然。利用这些经过重新增强的候选解,我们通过对所有增强情况下的概率取乘积,形成一个综合得分:
这种基于乘积的方法对异常值较为敏感,能够过滤掉那些在不同增强视角下看起来不太可能的解。因此,正如我们在下一节中所证明的那样,这种方法平均而言优于随机选择的增强方式。最后,我们选择得分最高的解作为最终答案:
这种两步方法——(1)基于深度优先搜索(DFS)的生成,结合单一增强下的剪枝;以及(2)事后多增强评分——确保我们系统地探索高概率解,并随后对其排名进行优化,从而考虑到大型语言模型在不同问题表示下的不一致性。在实际应用中,即使有多个解进入了候选集 Cp,T ,它们的最终排名仍可能差异很大。通过整合来自多个视角的证据,正确的解往往能够脱颖而出,变得更加容易识别。
4.1. 专家乘积增强
接下来,我们从 KL 散度的角度分析所提出集成方法的性能,即集成分布 P^相对于真实分布 P的差异。设每一个有效的增强变换 ϕj通过 LLM 对真实增强后的分布 P(ϕj(s)∣ϕj(p))进行近似,记作:
由于大语言模型在不同增强样本上的表现可能不一致(与真实分布 P 不同),我们在上一节中描述的方法通过几何平均集成(geometric-mean ensemble)来整合这些结果:
关于定理 4.1 的证明,请参见附录 A。关键结论是,当增强样本之间存在分歧时,logZ≤0会变得更小,这在期望上可以使集成结果优于任意一个随机选择的单个增强样本的预测器。因此,当不同的“专家”(即增强样本)意见不一致时,这种方法表现尤为出色——而在我们的情形中,由于大语言模型(LLMs)具有因果关系的自回归特性,这种状态自然就会出现。
实际意义:在实践中,“专家乘积”(product of experts)方法在不同增强样本能够捕捉不同错误的情况下往往表现出色。只要真实解在任何一个增强样本下都没有被赋予零概率,它就仍然是可行的。因此,尽管增强样本之间的分歧可以剔除那些看似合理但错误的候选答案,正确的候选答案却能在不同视角下不断积累优势。这种协同效应通常能产生比仅依赖单一问题表示更可靠的预测结果。
5. 实验
我们解决 ARC-AGI 问题的方法结合了数据扩展、语言模型的多阶段微调以及专门的解法评估。下面,我们将解释这些组件是如何协同工作,在控制计算成本的同时提升模型性能的。
5.1 数据建模
为了将大语言模型(LLMs)应用于 ARC-AGI 谜题,我们需要以适合模型的方式对数据进行分词(tokenize)。这一过程需要仔细考虑两个主要挑战:
首先,由于典型的 LLM 架构中上下文长度有限,长上下文任务会导致推理时间增加且性能下降(Liu 等,2024),因此我们需要一种能够最小化模型所需处理 token 数量的表示方式。其次,已有广泛认识的是,大语言模型(LLMs)中的许多常见失败模式源于分词过程(Singh & Strouse, 2024b;Bostrom & Durrett, 2020;Sun 等,2023)。例如,标准的分词技术会将一个、两个或三个连续数字中的某些(但不是所有)组合合并为专用的“数字组合 token”(Singh & Strouse, 2024a)。这类合并会使谜题变得不必要地复杂。
为了解决这个问题,我们选择简化模型可用的 token 集合。具体来说,我们将可用 token 的数量从超过 120,000 个减少到 64 个(见附录中的表 5)。
这种简化带来了关键优势。它显著减小了模型大小,因为我们能够从嵌入层中删除大部分行。此外,通常在文本分词过程中发生的 token 合并不再可能发生。这确保了模型可以专注于数据本身,而不会受到数字分隔符的干扰。
如图 2 所示,我们在每个任务的开头添加了一小部分额外的 token。令人惊讶的是,这种添加提升了模型的表现。我们认为,在微调过程中(此时嵌入层也在训练),模型学会了将这些额外的 token 用作一种计算缓冲区,从而影响后续每一个 token,进而提升整体性能。
5.2 训练模型
选择一个合适的大型语言模型(LLM)对于实现优异的性能至关重要。在评估了多个模型之后,我们发现 Mistral-NeMo-Minitron-8B-Base(Sreenivas 等,2024)在我们的实验中表现最佳。鉴于该模型的规模,我们需要采用高效的微调方法才能有效使用它。
因此,我们采用了低秩适应(LoRA)(Hu 等,2021)、4 位量化以及梯度检查点技术,这些功能都得到了 unsloth 库的支持。我们将 LoRA 适配应用于网络的所有层,包括输入和输出嵌入层。
对于每一个任务,
初始微调 :初始微调使用了 LoRA 秩数(rank)为 256,并在单个 H100 GPU 上完成。尽管存在多个类似 ARC 的数据集,例如 Concept-ARC(Moskvichev 等,2023)和 ARC-Heavy(Li 等,2024b),但我们选择仅使用 RE-ARC(Hodel,2024)进行训练。这样做的目的是最小化“概念泄漏”(conceptual leakage)的风险,即某些类型的问题可能出现在训练数据中,从而非预期地大幅降低评估任务的难度。相反,我们只训练官方 ARC-AGI 训练集的复制品(即 RE-ARC),以最小化这种影响,确保我们的结果具有鲁棒性。
测试时训练 (Test-time training):第二阶段的训练时间受限,且仅针对评估集进行,使用 LoRA 秩数为 32,共运行 64 个训练步,批量大小为 1。仅使用测试时训练就能显著提升正确解决任务的比例,如表 2 所示。调整不同的训练参数仅对结果产生微小影响。
初始微调在 NVIDIA H100 GPU 上耗时 98 小时,而测试时训练在 NVIDIA RTX 4090 GPU 上平均每个任务仅需 51 秒。有关我们训练参数的概览,请参见附录中的表 4。
5.3 解法推理
如第 4 节所述,我们使用基于深度优先搜索(DFS)的采样方法生成潜在解法的候选集 Cp,T。此处的目标是快速生成一个包含少量候选解的小集合,并且该集合中包含正确解的概率较高。
我们的增强函数集合 Φ每个任务包含 16 个函数——每个 D8 对称变换被使用两次,但分别搭配不同的、随机选择的颜色置换和示例重排序。
表 3 提供了 DFS、束搜索(Beam Search)、多项式采样和贪心采样之间的对比。DFS 采样能够快速高效地找到高质量的候选集合,相比用于生成多个解的随机采样方法,其计算开销更低,而且比束搜索使用的显存(VRAM)显著更少。此外,它还具有较低的误报率(false positive rate)。
虽然在 T=9%的情况下,DFS 找到的正确解数量略少于 4 倍随机采样(76.0% vs. 77.3%),但它仍能获得更好的“选择得分”,因为平均而言,它返回的误报数量只有后者的一半左右。此外,DFS 只用了四分之一的推理时间(9 小时 32 分 vs. 39 小时 47 分)。
虽然采用4束的束搜索(beam search)可以达到深度优先搜索(DFS)在T = 9%时的相同性能,但它需要大约两倍的显存(7.3GB对比14GB),并且耗时是后者的4倍(37小时36分钟对比9小时32分钟)。需要注意的是,与其他实验中使用的Unsloth库相比,束搜索算法并未在该库中实现,这可能会带来一些时间节省。然而,即使考虑这些节省,束搜索仍然需要更多的时间,因为它会返回大量的误检结果,这增加了后续选择过程中的运行时间,因为每个候选结果都需要在不同的增强条件下进行评估。
由于我们事先不知道正确解的采样概率,因此必须将概率下界 T视为一个超参数。我们发现,T在 5% 到 20% 之间时,在推理时间和正确解数量之间取得了合理的平衡;但具体数值取决于所使用的模型和训练流程。
同样地,由于概率质量在解树上的分布方式,当模型对其预测有更高置信度时,DFS 的效率也会更高。
我们在图 4 中比较了不同 T值下包含正确解的候选集数量。这个函数随着 T的增加而单调递增,但推理成本和集合 Cp,T的大小也随之上升,使得从候选集中挑选出正确解变得更加困难。
最终结果使用的是 T=9%,因为它的推理时间大致与贪心采样相当。
我们在附录中的算法 1 中提供了 DFS 采样算法的伪代码。
5.4 选择策略
到目前为止,我们的方法生成的候选解集合很可能包含正确解。然而,要真正解决任务,还需要在最多两次猜测中从这些候选解中识别出正确解。
如第 4.1 节所述,我们再次使用一组增强函数 Φ来计算“专家乘积”集成(product of experts ensemble)的结果 P。如果某个候选解 s∈Cp,T在 P中具有(第二)最高概率,则它会被选为我们两次猜测中的一次。
在图 5 中,我们比较了使用增强过程前后正确解的排名情况。在大多数情况下,当正确解初始排名不在第一位时,这种增强能够提升它的排名,从而提高了我们解决给定任务的可能性。
在定理 4.1 中,我们已证明我们的“专家乘积”(product of experts, PoE)方法优于随机选择一个增强结果的方法,这一点在表 3 中也清晰可见。在此部分中,我们比较了不同的采样方法和不同的聚合方法。在所有情况下,使用概率的乘积都带来了分数的提升,其中使用最小值 minPi的方法在大多数采样方法下排名第二,而最大值 maxPi的表现最差。
对于我们 T=9%的 DFS 推理,“专家乘积”方法相比对概率取平均的方法,最终得分提升了 5%(66.6% vs. 71.6%)。
6. 讨论
我们的方法建立在一些熟悉的技术基础之上——数据增强、贝叶斯建模和专家乘积评分——但针对类似 ARC 的谜题进行了专门的定制。
我们方法的核心是让一个经过微调的大语言模型(LLM)扮演两个角色:作为生成器(generator),它为每个谜题的增强版本提出解法;作为评分器(scorer),它通过对所有增强下的似然值取乘积(几何平均)来对每个生成的候选解重新打分。这种方法带来了两方面的优势。
首先,一个候选解必须在每一种有效的变换下都具有较高的联合合理性,才能获得较好的排名,这使得模型难以依赖仅在某一种表示中出现的虚假相关性。其次,正如我们在第 4.1 节所展示的那样,这种对数线性池化(log-linear pooling)方法自然地起到了集成学习的作用。
尽管 ARC 以复杂著称,我们这种“先生成再重评分”的两阶段策略仍在开源模型中达到了最先进的(SOTA)表现。虽然目前只有一个闭源解决方案(arcprize.org, 2025)在绝对得分上更高,达到每任务 17 美元成本,但我们完全开源的流程以其透明性、可复现性,以及尤其突出的成本效益(每任务仅 0.02 美元)脱颖而出。
通过将这些思想应用于 ARC,我们强调了一个更广泛的原则:在处理结构化或抽象推理任务时,关键因素是利用语义保持(semantic-preserving)的有效变换,迫使模型在面对同一问题的不同视角时保持一致性。这使我们能够将单一模型用作一个“专家集成体”。
我们认为这一视角可以推广到更多复杂的符号推理挑战中,只要能为这些问题定义出相应的变换方式。我们的结果表明,大语言模型在推理过程中若能受到恰当引导,并辅以前验感知(prior-aware)的评分机制,就可以超越默认的采样方法,在抽象领域中捕捉更深层的结构。
原文链接:https://arxiv.org/pdf/2505.07859?
特别声明:以上内容(如有图片或视频亦包括在内)为自媒体平台“网易号”用户上传并发布,本平台仅提供信息存储服务。
Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.