快捷搜索:  汽车  科技

量化学习机器人:从Bengio演讲发散开来 探讨逻辑推理与机器学习

量化学习机器人:从Bengio演讲发散开来 探讨逻辑推理与机器学习1.2.3 数学推理自动化归纳程序设计的目标是学习给定一组输入和输出示例的计算机程序。归纳程序设计处理的是可以从这些例子中学习的生成系统。这种系统通常是用逻辑来表述的。最先进的归纳程序设计系统可以从几个例子中学习复杂的递归程序。目前,归纳程序设计方法已经被用来学习数据清理和转换程序任务[2]。1.2.1 科学中的自动发现逻辑学最成功的应用之一是在科学领域中表示结构化的科学知识。2007 年,威尔士和英格兰的一个小组创建了一个名为 Adam(自动发现和分析机器)的系统 [1]。Adam 可以自动形成科学假设,进行实验来检验假设并记录实验结果。这是第一个自动系统,用来发现各类的科学信息。Adam 成功地应用于确定酵母中的一些基因。在这个系统中,假设、实验结果和结论都以逻辑的形式表达出来。1.2.2 归纳程序设计

同样,我们也可以写下其他数字的其他约束条件。在我们的约束条件下,总共有 9^3=729 个原子。每一个原子可以是真或假,即表征总共 2 种可能的状态(远大于宇宙中物理原子的数量)。

一阶逻辑通过引入原子来改进命题逻辑,这些原子可以接受域中对象的参数。在一阶逻辑中将有一个原子来接受这些变量作为参数,而不是用一个原子 A_ijk 来表示 i、j 和 k 的每个组合。例如,A(1 3 5)表示第 1 行和第 3 列中有一个 5。下图表示第 1 行中有一列的数字是 5。

量化学习机器人:从Bengio演讲发散开来 探讨逻辑推理与机器学习(1)

一阶逻辑是许多现代逻辑系统在研究和工业中应用的基础。许多其他逻辑系统建立并扩展了一阶逻辑(例如,二阶逻辑、三阶逻辑、高阶逻辑和模态逻辑)。每一种逻辑都增加了一个新的维度或特性,以便更容易对世界的某些方面进行建模。例如,被称为时态逻辑的逻辑被用来对时间和变化进行建模。

1.2 AI/ML 中的逻辑

1.2.1 科学中的自动发现

逻辑学最成功的应用之一是在科学领域中表示结构化的科学知识。2007 年,威尔士和英格兰的一个小组创建了一个名为 Adam(自动发现和分析机器)的系统 [1]。Adam 可以自动形成科学假设,进行实验来检验假设并记录实验结果。这是第一个自动系统,用来发现各类的科学信息。Adam 成功地应用于确定酵母中的一些基因。在这个系统中,假设、实验结果和结论都以逻辑的形式表达出来。

1.2.2 归纳程序设计

归纳程序设计的目标是学习给定一组输入和输出示例的计算机程序。归纳程序设计处理的是可以从这些例子中学习的生成系统。这种系统通常是用逻辑来表述的。最先进的归纳程序设计系统可以从几个例子中学习复杂的递归程序。目前,归纳程序设计方法已经被用来学习数据清理和转换程序任务[2]。

1.2.3 数学推理自动化

上面的数独例子说明了一阶逻辑比命题逻辑更具表现力。不过,我们能用它来模拟的东西有限制吗?实际上,单是一阶逻辑就相当强大,它强大到可以模拟几乎所有的古典数学。在标准数学的概念下工作,使用一阶逻辑可以陈述你想要证明的任何目标(一个猜想),并能让机器自动检查你的工作(数学证明)。这种方法就是直接使用数学的推理自动化。

1.2.4 计算机系统(包括机器学习系统)的验证

在数学之外,以一阶逻辑和类似系统为基础的逻辑被用于验证计算机系统。这种选择被称为正式验证(Formal Verification)。在正式的验证中,有一个计算机系统 S 和一个属性 P,用户必须用一种相对严格的方式来验证这个属性是有效的。例如,用于验证硬件和软件系统的工业强度系统 ACL2 (http://www.cs.utexas.edu/users/moore/acl2/)。

1.2.5 类似逻辑系统与机器学习模型

随着越来越多的应用程序和领域使用机器学习模型,仍有一些场景需要使用类似逻辑系统和机器学习模型。例如,许多欺诈检测系统使用一个或多个机器学习模型以及大量手工编制的规则,而这些规则是非常必要的。在欺诈检测领域,这些规则可能会捕获新的和不断发展的欺诈模式,而针对这些模式可能并没有足够的数据来训练得到新的模型[3]。

最近的一些研究着眼于将逻辑与深度学习系统进行结合,这也正是我们这篇文章所考虑的问题。我们将在下面的内容中选择三篇关注于逻辑推理与深度神经网络相结合的文章进行深入分析[5][6][7]。

2. 逻辑推理与深度学习(Logic Reasoning & DL)

2.1 Bridging Machine Learning and Logical Reasoning by Abductive Learning [5]

量化学习机器人:从Bengio演讲发散开来 探讨逻辑推理与机器学习(2)

本文是南大周志华教授组发表在 NeurIPS 2019 中的一篇研究成果。感知(Perception)和推理(Reasoning)是两种具有代表性的智能能力,它们在人类解决问题的过程中是无缝集成的。然而在人工智能领域,这两种能力通常是分别通过机器学习和逻辑编程来实现的,因此,这两类技术在人工智能的历史上是分开发展的。本文提出的诱因性学习(Abductive Learning)旨在将两类人工智能方法有机地统一起来,即机器学习模型学习从数据中感知原始逻辑事实,而逻辑推理方法则是引入符号领域知识并纠正错误感知的事实,以改进机器学习模型。此外,作者提出了一种新的方法来联合优化机器学习模型和逻辑推理模型。作者证明,通过使用诱因性学习,机器可以从简单的手写方程图像中同时学习识别数字和解决未知的数学运算。此外,所学习到的模型可以推广到更长的方程组并适应不同的任务,这已经超出了现有的先进深度学习模型的能力。

2.1.1 诱因性学习

为了更自然地利用学习和推理,了解感知和推理在单个系统中如何相互影响是至关重要的,本文所引入的诱因性学习则是一种有效的联合应用和分析的方法。诱因性学习是指根据背景知识有选择地推断出对观察结果作出最佳解释的特定事实和假设的过程,其中「观察」主要是感官信息,「知识」通常是象征性和结构性的。

人类使用诱因问题解决方法来解决问题的一个直观例子是玛雅象形文字的破译,它反映了人类两个显著的智能能力:1)从象形文字中直观地感知单个数字;2)基于数学和日历的背景知识,象征性地进行推理。图 1 显示了从帕伦克十字庙发现的玛雅历法,它从神话中的创世日期开始,接着是以长计数书写的时间段,最后是由 Tzolk'in 和 Haab'日历编码的特定日期。

量化学习机器人:从Bengio演讲发散开来 探讨逻辑推理与机器学习(3)

图 1. 玛雅历法,其中彩色盒子和「?」对应于未知数字

图 2 描绘了查尔斯 P. 鲍迪奇(Charles P. Bowditch)破解图 1 的记录。他首先确认了一些已知的数字,并确认第一和第六个象形文字是相同的。然后,Bowditch 尝试用视觉上相似的数字代替那些未知的象形文字,如图 2 中的「第 1 列」所示。同时,他根据自己的推测和玛雅历法中的背景知识计算出 Tzolk'in 和 Haab'的值,如图 2 的「第 2 列」所示。最后,通过观察其猜想与计算的一致性,得到了正确答案「1.18.5.4.0,1 Ahau 13 Mak」。这整个过程应用的就是诱因问题解决方法。

量化学习机器人:从Bengio演讲发散开来 探讨逻辑推理与机器学习(4)

图 2. 鲍迪奇对图 1 的解读(他把「Mak」写为「Mac」)。垂直框中的数字是他对图 1 中未知象形文字的猜测(第 1 列)。虚线黄色框根据其计算结果(第 2 栏)标记一致结果。

受诱因问题解决方法的启发,本文提出了诱因性学习(Abductive Learning,ABL),一种连接机器学习和逻辑推理的新方法。在 ABL 中,机器学习模型负责将子符号数据解释为原始逻辑事实,逻辑模型可以根据一些一阶逻辑背景知识对解释后的事实进行推理,以得到最终的输出。这一过程中最主要的困难在于子符号模型和符号模型很难一起训练。更具体地说:1)它不具备训练机器学习模型的原始逻辑事实(如图 1 中的正确数字)的任何基本真理;2)没有准确的原始逻辑事实,推理模型很难推断出正确的输出或学习正确的逻辑理论。

本文提出的诱因学习(ABL)试图通过逻辑诱因和一致性优化来解决这些挑战。给定一个与最终输出相关联的训练样本,逻辑推理可以对缺失的信息(例如,示例中的候选原始事实,或能够完成背景知识的逻辑子句)进行推测,以建立从样本到最终输出的一致性证明。然后,分别用导出的原始事实和逻辑子句训练机器学习模型,并将其作为符号知识存储。一致性优化被用来最大化推测与背景知识之间的一致性。为了解决这个高度复杂的问题,作者将其转换为一个任务,即搜索函数,猜测可能错误的原始事实。

由于收集玛雅象形文字数据是非常困难的,作者设计了一个类似的任务——「手写方程解谜」用于实验。该任务具体为学习图像识别(感知)和数学运算计算方程(推理)。实验结果表明,ABL 比最先进的深度学习模型具有更好的泛化能力,并且能够以一种互利的方式利用机器学习和推理。作者在一个可视化 n 皇后任务上的实验进一步证明,ABL 框架是非常灵活的,可以利用约束逻辑编程等经典符号 AI 系统来提高机器学习的性能。

2.1.2 方法简介

诱因性学习的任务可以形式化的表示如下。诱因性学习的输入由一组标记的关于目标概念 C 和领域知识库 B 的训练数据组成 D = { . . . } 。目标概念 C 是在一组原始概念符号 P=之间的未知关系下定义的。其中每个 pk 都是 B 中定义的符号。ABL 的目标是输出一个假设模型 H=p∪∆C:

p 是从特征空间到原始符号的映射,即它是一个传统机器学习的感知模型;

∆C 是一组用 B 定义目标概念 C 的一阶逻辑子句,称为知识模型。

假设模型应满足:

(1)

其中,符号|= 表示逻辑暗含(logical entailment)。从公式(1)可以看出,诱因性学习的主要挑战是感知模型 p 和知识模型∆C 之间的相互依赖关系:1) 需要依赖于感知结果 p(x)来学习 ∆C,p(x)为 x 中原始概念的集合。2) 为了得到 p,需要得到用于训练的基本真值标签 p(x),p(x)可以从 B∪∆C 和 y 的逻辑推导出来。当机器学习模型训练不足时,感知到的原始符号 p(x)极有可能不正确,因此作者将其命名为伪基元(pseudo-groundings)或伪标签(pseudo-labels)。因此,基于公式(1)的 ∆C 推理是不一致的,当知识模型∆C 不准确时,逻辑推导出的伪标签 p(x)也可能出错,从而影响了 p 的训练,而无论哪种方式都会中断学习过程。

ABL 试图通过将机器学习与诱因性逻辑推理模块相连接,并通过一致性优化将它们的内部机制融合起来,从而解决这些挑战。ABL 的完整框架见图 3。其中, 机器学习(Machine Learning)用于学习感知模型 p:给定一个输入实例 x,p 可以预测伪标签 p(x)作为 x 中可能的原始概念的真值。当伪标签包含错误时,需要重新训练感知模型,此时,所使用的标签是逻辑诱因返回的修正后的伪标签 r(x)。逻辑诱因(Logical abduction)是诱因推理的逻辑形式化表示。给定以一阶逻辑子句形式表述的观测事实和背景知识,逻辑推理将对观测事实的可能性解释扩展为基本假设。

量化学习机器人:从Bengio演讲发散开来 探讨逻辑推理与机器学习(5)

猜您喜欢: