引言

想象一下,你教会了一个孩子“红球”和“蓝立方体”的样子。如果你随后给他们看一个“红立方体”或“蓝球”,他们很可能立刻就能认出来。这种理解熟悉概念的新组合的能力被称为系统性 (Systematicity) , 或者叫组合泛化 (compositional generalization)。它是人类智能的基石。我们不需要看过宇宙中颜色和形状的所有可能组合,就能理解它们是如何搭配在一起的。

然而,人工神经网络通常在这方面表现挣扎。如果你用红球和蓝立方体训练一个视觉问答 (VQA) 模型,但从未给它看过红立方体,当被要求识别红立方体时,它可能会完全失败。这种失败代表了系统性差距 (systematicity gap)——即在已见组合上进行推理与在未见组合上进行推理之间的性能差异。

多年来,深度学习领域的一个普遍假设是“规模即一切 (scale is all you need)”。如果模型泛化能力不强,那就喂给它更多数据。但是,一篇引人入胜的研究论文《Attribute Diversity Determines the Systematicity Gap in VQA》 (属性多样性决定了 VQA 中的系统性差距) 挑战了这一观念。研究人员引入了一个新的诊断数据集 CLEVR-HOPE , 并证明仅仅增加训练数据的数量并不能弥补系统性差距。相反,关键在于数据的多样性

在这篇文章中,我们将剖析这篇论文,探索 CLEVR-HOPE 数据集,并理解为什么“属性多样性”是教机器像人类一样思考的秘密配方。

背景: VQA 与组合性问题

视觉问答 (Visual Question Answering, VQA) 是一项多模态任务,AI 系统会接收一张图像和一个关于该图像的自然语言问题 (例如,“那个闪亮的圆柱体是什么颜色的?”) 。模型必须处理视觉信息和文本信息来给出答案。

虽然像 LXMERT 这样的现代基于 Transformer 的模型在标准基准测试中取得了很高的准确率,但它们往往依赖于统计捷径而非真正的推理。例如,如果训练数据中包含的大多是“黄色”香蕉,模型可能会学会将单词“香蕉”与颜色输出“黄色”联系起来,而实际上并没有去观察图像中的颜色。

当模型面对分布外 (Out-Of-Distribution, OOD) 数据——特别是属性的新颖组合 (比如“紫色香蕉”或“橡胶圆柱体”,如果它之前只见过金属圆柱体) 时,这种依赖性就会崩溃。

这项研究的目标是分离这种特定现象。作者想要回答两个问题:

  1. 更多的数据进行训练是否有助于模型学会系统地组合概念?
  2. 如果不能,那么数据的什么属性实际上驱动了这种能力?

核心方法: 引入 CLEVR-HOPE

为了严格测试系统性,你不能使用像 COCO 或 VQA v2 这样的标准“野生”数据集,因为几乎不可能确切追踪模型看过了哪些属性组合 (比如“毛茸茸的”+“狗”) 。

研究人员基于 CLEVR 构建了他们的数据集。CLEVR 是一个包含各种属性 (材质、颜色、大小、形状) 的 3D 渲染几何形状 (立方体、球体、圆柱体) 的合成数据集。他们创建了一个名为 CLEVR-HOPE (CLEVR Held-Out Pair Evaluation,CLEVR 留出对评估) 的新诊断数据集。

留出对 (Held-Out Pairs, HOPs)

CLEVR-HOPE 的核心机制是留出对 (Held-Out Pair, HOP) 。 HOP 是两个属性值的特定组合——例如,材质: 橡胶形状: 圆柱体——这一组合被严格地从训练集中移除。

模型在训练时会看到成千上万张包含橡胶物体和圆柱体物体的图像,但从未见过一个既是橡胶又是圆柱体的单一物体。

数据集划分

为了准确诊断模型在哪里失败,CLEVR-HOPE 被划分为非常特定的几个部分。这种架构对于理解结果至关重要。

图 1: CLEVR-HOPE 子数据集的图像-问题对示例,对应于“橡胶圆柱体”。

如上图 1 所示,数据集围绕 HOP (在本例中为“橡胶圆柱体”) 进行构建:

  1. 训练集 (Train): 标准的 CLEVR 风格图像和问题。 至关重要的是,“橡胶圆柱体”从未出现在这里,无论是图像中还是文本中。
  2. 复杂-分布内 (Complex-IID): 遵循训练分布的测试数据。它需要复杂的推理 (计数、比较) ,但不包含橡胶圆柱体。
  3. 复杂-分布外 (Complex-OOD): 需要复杂推理且确实包含橡胶圆柱体的测试数据。这测试了模型是否可以在复杂任务中使用未见过的组合。
  4. 极简-分布内 (Minimal-IID): 仅包含已见组合的简单“存在性”问题 (例如,“有一个金属球吗?”) 。图像仅包含单个物体。
  5. 极简-分布外 (Minimal-OOD): 关于 HOP 的简单“存在性”问题 (例如,“有任何橡胶圆柱体吗?”) 。图像仅包含单个物体。

极简 (Minimal) 分组是一个绝妙的设计。它们剥离了计数或空间推理 (如“在左边”) 的复杂性。如果模型无法通过 Complex-OOD 测试,我们可能会疑惑是因为问题太难还是因为它没认出物体。Minimal-OOD 测试隔离了识别能力。如果模型在这里失败,那就说明它根本不知道什么是“橡胶圆柱体”。

确保测试公平

为了确保模型不是在瞎猜,Minimal-OOD 测试通过“干扰”图像进行了仔细的平衡。

图 7: 极简-分布外 (minimal-OOD) 测试集的四个图像-问题对示例。

在图 7 中,你可以看到极简测试是如何工作的。对于问题“有任何哑光圆柱体吗?” (其中哑光圆柱体是 HOP) ,测试集包括:

  1. 正例: 一个哑光圆柱体 (答案: 是) 。
  2. 干扰项 1: 一个哑光立方体 (材质匹配,形状错误) 。
  3. 干扰项 2: 一个金属圆柱体 (材质错误,形状匹配) 。
  4. 干扰项 3: 一个金属立方体 (材质错误,形状错误) 。

这迫使模型必须同时真正理解两个属性,而不是仅仅抓住“哑光”或“圆柱体”不放。

实验

研究人员测试了两种主要的模型架构:

  • LXMERT: 一种将视觉和语言一起处理的基于 Transformer 的模型 (类似于 VQA 版的 BERT) 。他们测试了在其他数据上预训练过的版本和从头开始训练的版本。
  • Tensor-NMN: 一种神经符号 (Neuro-Symbolic) 模型,它将问题分解为程序 (例如,count(filter_shape(cylinder))) 。

他们在 29 个不同的留出对 (HOP) 上训练这些模型,并改变训练集的大小 (2.5万、20万和56万张图像) 以检验“规模”假设。

结果: 数量的迷思 vs. 多样性的现实

结果为我们理解这些模型的学习方式提供了细致的视角。

1. 系统性差距存在且顽固

首先,好消息是: 模型确实可以泛化。有了足够的训练数据,分布外 (OOD) 数据集的准确率通常很高。然而,它始终于分布内 (IID) 的准确率。

这种差异就是系统性差距 (Systematicity Gap)

如果关于系统性的“规模即一切”假设是真的,我们应该期望随着训练数据的增加,这种差距会消失。模型会变得非常稳健,以至于未见过的组合会像已见过的组合一样容易。

图 5: 复杂示例上的平均系统性差距,显示出停滞不前的趋势。

然而,图 5 显示了相反的情况。虽然差距起初略有缩小,但很快就进入了平台期 。 即使训练集从 2.5万增加到 56万个样本,LXMERT 的差距仍然保持在 5-6% 左右 (其他模型甚至更差) 。增加更多数据提高了整体准确率,但它以大致相同的速度提高了 IID 和 OOD 的准确率,使得它们之间的差距保持不变。

2. 属性多样性是关键

如果数量不是解决办法,那什么才是?研究人员观察了训练数据的属性多样性 (Attribute Diversity)

属性多样性被定义为对应于留出对类型的可能属性值的数量。

  • 低多样性: 考虑留出一个“大号橡胶”物体。在 CLEVR 中只有 2 种大小和 2 种材质。总组合数 = \(2 \times 2 = 4\)。
  • 高多样性: 考虑留出一个“红色圆柱体”。有 8 种颜色和 3 种形状。总组合数 = \(8 \times 3 = 24\)。

表 1: 显示不同属性组合的 HOP 多样性列表。

表 1 列出了这些多样性。研究人员发现了一个惊人的相关性: 高多样性导致更小的系统性差距。

当模型被迫学习 24 种不同的 颜色+形状 组合时,它似乎内化了组合颜色和形状的规则。当它只看到 4 种 大小+材质 的组合时,它可能只是将它们作为单独的原子概念记忆下来。

图 2: 按 HOP 多样性平均后的系统性差距。

图 2 完美地展示了这一发现。看多样性 24 (蓝色) 和多样性 16 (橙色) 的线条。系统性差距接近于零 (甚至是正的,意味着 OOD 表现更好!) 。

再看多样性 4 (红色) 。差距非常大 (大约 -13%) 。当属性多样性较低时,模型在未见组合上的表现明显更差。

3. 可视化多样性效应

属性类型与泛化性能之间的这种关系可以通过热力图来可视化。

图 23: 按多样性排序的系统性差距热力图。

在图 23 中,轴代表不同的属性类型。“较浅”的颜色代表较大 (负) 的系统性差距——意味着泛化能力差。“较深”的颜色代表差距较小。

注意到这个模式了吗?左上角对应于材质大小 , 它们只有很少的可能值 (低多样性) 。这个区域是亮黄/绿色的,表明模型在这里难以泛化。

右下角对应于颜色形状 , 它们有许多值 (高多样性) 。这个区域是深色的,表明模型几乎完美地泛化了。

4. 控制混淆因素

怀疑论者可能会问: “也许颜色只是比材质更容易学习?也许这与组合的数量 (多样性) 无关,而与特定的属性本身有关?”

为了解决这个问题,研究人员进行了一项对照实验。他们取了一个高多样性的配对 (颜色 + 形状) ,但人为地限制训练数据,只显示少数几种组合 (模拟低多样性) 。

图 6: 针对 颜色+形状 (COLOR + SHAPE) 改变多样性的对照实验。

图 6 证实了他们的假设。即使对于 颜色 + 形状,当多样性被人为降低到 4 (红线/区域) 时,系统性差距显著扩大 (-7.5%) 。当他们允许更多组合时 (增加到 16 和 24) ,差距消失了。这证明了驱动泛化能力的确实是多样性 , 而不是特定的属性类型。

结论与启示

这项研究强调了我们在构建数据集方法上的一个关键局限性。我们经常关注数据的绝对数量——抓取数十亿张图像或标记。虽然数量有助于模型记忆和识别以前见过的模式,但这篇论文表明, 仅靠数量并不能教会模型世界的“规则”。

要构建能够真正系统地推理的 AI——即看过橡胶立方体和金属球后能想象出“橡胶球”的 AI——我们需要针对多样性进行优化。

关键要点:

  1. 差距是真实的: 即使模型知道单个属性,它在未见过的属性组合上的表现也会更差。
  2. 规模效应停滞: 仅仅增加相同分布的训练数据并不能消除系统性差距。
  3. 多样性为王: 训练期间看到的不仅是概念,更是不同概念组合的数量,这才是系统性泛化的主要预测因素。

对于学生和从业者来说,这提供了一个实践教训: 当为新任务整理数据时,确保你的模型在尽可能多的不同上下文中看到概念。不要只给它看 10,000 次“红苹果”。要给它看红色的车、红色的衬衫和红色的天空。正是这种上下文的多样性,让神经网络能够将“红色”这一概念从“苹果”这一物体上剥离出来,并将其应用于它从未见过的事物上。