为什么抽象推理对于通用智能如此重要?想想著名的阿基米德“尤里卡”时刻(古希腊语“我知道了”,源自学者阿基米德发现浮力理论时表达喜悦脱口而出的话):他注意到物体体积等于其所排开的水的体积,并在概念层面形成了对体积的理解,进而推断出其他不规则形状物体的体积测量方法。
我们希望人工智能拥有类似的能力。虽然目前的系统已经能够在复杂的战略游戏中击败世界冠军,但却往往在其他看似简单的任务中折戟——特别是那些需要在新环境中发现并重新应用抽象概念的场景下。例如,即使是最强大的 AI 模型,也无法在仅了解如何计算三角形面向的前提下,自行推理出如何对方形及其它图形进行面积计算。
因此,要构建更好、更智能的系统,了解神经网络目前的抽象概念处理方式以及改进空间就变得非常重要。为了达成这一目标,我们借鉴了人类 IQ 测试中的抽象能力衡量方法。
创建抽象推理数据集
这项演示说明了模型的推理能力,其过程非常有趣,大家可以点击链接亲自动手尝试:
演示链接:https://deepmind.com/blog/measuring-abstract-reasoning/
在(a)中,暗含的基础抽象规则是每一列的图形数量呈算术级增长。 在(b)中,规则是每一行中形状的位置存在 XOR(逻辑异或)关系(方框 3 = XOR(方框 2 – 方框 1))。其他特征(如形状类型)则不属于需要考虑的因素。两者的正确答案均为 A。
标准的人类智商测试通常要求测试者通过他们日常学习到的经验原则来解释简单的感知视觉场景。例如,人类测试者可能已经在生活中通过观察植物或建筑物施工了解到“增长”的概念,通过数学课或银行账户里的利息增加来学习加法(某些属性可以相加的概念)。此后,他们可以在测试中应用这一概念,用于推断形状的数量、大小,甚至发现颜色的持续加深趋势。
我们还没有能力在机器学习代理的训练过程中引入“日常生活体验”之类的训练方法,这意味着我们无法简单地衡量它们将知识从现实世界转换为视觉推理测试的能力。尽管如此,我们仍然可以创建一项可以充分利用人类视觉推理测试的试验。我们的目的不是研究从日常生活到视觉推理问题的知识转移(如在人类测试中),而是研究从一组受控的视觉推理问题到另一组视觉推理问题的知识迁移。
为实现这一目标,我们构建了一个用于创建矩阵问题的生成器,它涉及一些抽象因素,包括“渐进”关系以及“颜色”和“大小”等属性。虽然问题生成器 中使用了少量底层背景因素,但其仍然能够生成大量独特的问题。
接下来,我们控制生成器可用的因素或组合,从而创建用于模型训练及测试的不同问题集,借以测量我们的模型对测试及问题的泛化能力。例如,我们创建出一组训练集,其仅在应用于线条颜色时才会产生渐变效果 ; 而另一个训练集则集中测试形状问题。如果模型在该测试集上表现良好,就证明其拥有对“增长”这一抽象概念的推理及应用能力。换言之,即使在之前从未接触过“增长”概念,其仍然能够准确把握这一规律。
证明抽象推理的可实现性
在机器学习评估中得到广泛应用的泛化方案当中,我们训练和测试的数据是从相同的基础分布中采样获得的,其结果显示测试的所有网络都表现出较小的泛化误差,其中一些准确率达到 75%以上。效能最佳的网络明确计算出不同图像方框之间的关系,同时以并行方式评估了每项潜在答案的适用性。我们将此架构称为 Wild Relation Network(WReN)。
在需要以此前接触过的属性值为基础,利用属性值“插值”进行推理时 ; 以及在模型不熟悉的组合中应用已知抽象关系时,模型的泛化能力非常好。然而,同样的网络在“外向泛化”方案中的表现则不尽人意,这主要是因为测试集中的属性值与训练期间的属性值并不在同一范围内。例如,当训练期间涉及深色物体,但测试期间仅涉及浅色物体时,神经网络就会表现得无所适从。当训练模型将先前理解的关系(例如图形数量的增长)应用于新属性(例如大小)时,其泛化效能同样较差。
最后,我们观察到,当训练模型不仅需要预测正确的答案,同时需要提供得出预测答案的“原因”(即在解决该难题时需要考虑的特定关系及属性)时,其泛化能力将得到改善。有趣的是,下表左右两列的数据表明,模型的准确性与其对矩阵背后正确关系的推理能力密切相关:当解释正确时,模型选择正确答案的比例达 87%,但是当其解释错误时准确率只有 32%。这表明,当模型正确推理出任务背后的抽象概念时,其往往可以获得更好的效能水平。
所有模型的效能(左),以及 WReN 模型的泛化效能(右),泛化根据β= 0 的泛化误差排序。(Diff:测试与验证效能之间的差异)
一种更为微妙的泛化方法
近期发表的文献大多关注基于神经网络的方法在解决机器学习问题时的优点和缺点,而结论也通常体现为效能与泛化能力的欠缺。我们的研究结果表明,关于泛化的普遍结论可能并无太多实际意义:我们测试的神经网络在某些泛化方案中表现良好,而在其他方案中则表现很差。其成功与否取决于一系列因素,包括所用模型的架构、模型是否经过训练,及其为所选答案给出的可解释“理由”。总体而言,系统在面对超出其经验积累的输入属性、或处理完全不熟悉的属性时,大多表现不佳;而通过此次研究,我们为这一关键研究领域的未来工作指出了明确的前进方向。
在本研究的下一阶段,我们将探索泛化改进策略(例如元学习),并将进一步探讨是否及如何使用丰富多样但又普遍适用的归纳 bias。我们还希望通过 Raven-style 矩阵的处理过程更深入地理解 WReN 模型所学习到的解决思路。