自人工智能的概念提出以来,关于符号主义和连接主义的争论就不绝于耳。究竟哪一种方式可以实现更好的人工智能?这一问题目前还没有定论。深度学习的快速发展让我们看到连接主义在构建 AI 系统中的优势,但其劣势也很明显,如对大量数据的依赖。因此,越来越多的学者开始寻求取两者之长的 AI 系统实现方式,本文中介绍的 Neuro-Symbolic Concept Learner 便是其中的一项工作。

人工智能应该复制人脑的哪一部分功能?这个问题的答案反映了一场辩论的焦点,这场辩论和 AI 的历史一样久远。20 世纪 50 年代,人类开始探索如何创建可以思考的机器,也是从那时候起,AI 领域的研究和发展之路陷入了分歧:符号主义和连接主义 AI 应如何取舍?

符号主义 AI 也叫「基于规则的 AI」,其基本思想是将世界上的所有逻辑和知识转换为计算机编码。在符号主义 AI 中,每个问题都必须拆分为一系列的「if-else」规则或其他形式的高级软件结构。

连接主义 AI 体现在机器学习和深度学习中,其基本思想是:AI 模型应该通过统计比较和发现不同信息之间的关联来学习发展自己的行为,即不告诉模型如何找出图像中的猫,而是给它一千张猫的图像,让它自己找出发现图像中猫的方法。

在该领域早期的六十年中,创建 AI 系统的主流方法多数以符号主义为主。但在过去的十年里,人工神经网络的一场变革使得深度学习成为 AI 领域的主角。

在符号主义、连接主义两个阵营继续争论哪种方法能产生更好的结果之际,一些研究者却另辟蹊径,开始着手研究如何取二者之长。代表性研究包括前段时间介绍的 DeepMind 新型端到端神经网络架构 PrediNet(参见:结合符号主义和深度学习,DeepMind 提出新型端到端神经网络架构 PrediNet)以及 MIT-IBM Watson AI Lab 研究者提出的神经-符号概念学习器(Neuro-Symbolic Concept Learner,NS-CL)。

论文:THE NEURO-SYMBOLIC CONCEPT LEARNER: INTERPRETING SCENES, WORDS, AND SENTENCES FROM NATURAL SUPERVISION

论文链接:https://openreview.net/pdf?id=rJgMlhRctm

该论文出现在今年的 ICLR 会议上。在论文中,研究者介绍了一种将神经网络与基于规则的人工智能结合在一起的 AI 模型——「Neuro-Symbolic Concept Learner」,并称这种混合方法有望克服每种方法面临的挑战,同时创造出大于二者总和的能力。

该模型可以学习视觉概念、词以及句子的语义分析,且不需要对它们进行显式的监督。它仅通过看图像、阅读成对的问题和答案来学习。该模型构建了一个基于对象的场景表征,并将句子转换成可执行的符号程序。

为了填补两种学习模块之间的鸿沟,研究者使用了一种能够在潜在场景表征上执行这些程序的神经-符号推理模块。与人类的概念学习方式类似,该感知模块基于被提及对象的语言描述来学习视觉概念。同时,学到的视觉概念有助于学习新单词、分析新句子。他们使用课程学习(curriculum learning)来指导对图像和语言构成的大空间的搜索。

大量实验表明,NS-CL 模型在学习视觉概念、词表征和句子的语义分析方面具有很高的准确率和效率。此外,该模型可以轻易泛化到新的对象属性、构成、语言概念、场景、问题甚至是新的程序域,还可用于、图像-文本双向检索等应用。

为什么要结合符号主义和连接主义

符号主义的局限

在过去的几十年里,多数研究集中在创建可模拟人脑推理功能的符号 AI 系统上,但经验表明,人类解决的许多问题都无法分解为符号表征。

人类可以凭借符号检测出猫的特征(如尖耳、三角鼻等),但这一过程非常复杂,涉及到不同的角度、光照等,甚至在遮挡情况下也能脑补出全貌。但对于计算机来说,将这些相同的特征转换为符号相当困难,需要写出大量代码,从无限种可能中抽象出这些特征。

简而言之,符号 AI 不适合处理图像、音频等非结构化数据,即使在充满非结构化文本数据的自然语言处理任务中,它的应用也十分有限。

连接主义也不是万能的

与符号主义 AI 相比,神经网络在处理非结构化数据方面要擅长得多,但它也有自己的局限。

神经网络要依赖大量的数据,而且往往是经过标注的数据。如果数据量不足,深度学习模型就很难发挥自己的作用。因此在某些数据匮乏的领域,应用深度学习解决实际问题是非常困难的。

此外,神经网络还存在可解释性差、面对对抗样本时鲁棒性差等问题。

虽然神经网络可以解决一些符号主义 AI 难以解决的问题,但在符号主义 AI 可以轻易解决的一些简单推理问题上,神经网络可能无能为力,比如高中数学。

二者结合才能碰撞出智慧的火花

MIT 和 IBM 研究者设计的神经-符号概念学习器(NS-CL)结合了符号主义 AI 和深度学习的长处,主要想法是结合基于规则软件的推理能力和神经网络的学习能力,构建一个强大的混合 AI 模型。

在这个混合 AI 模型中,符号主义构件利用神经网络处理、分析非结构化数据的能力。同时,神经网络也受益于基于规则的 AI 系统的推理能力,这种能力可以减少神经网络学习新事物时所需的数据量。

二者结合产生了「1+1>2」的效果。

神经-符号概念学习器

这项研究提出的神经-符号概念学习器(NS-CL)利用一种符号化推理过程联结视觉概念、词以及句子的语义分析,且无需对其中任何一种提供显式注释。研究者首先使用视觉感知模块为场景构建基于对象的表征,然后运行语义分析模块将问题转换为可执行的程序。接下来,他们应用了一个 quasi-symbolic 程序执行器,根据场景表征来推理答案。他们使用成对的图像、问题和答案来联合训练视觉和语言模块。

图 2:该研究提出用神经符号推理来联合学习视觉概念、词和句子的语义分析。

如图 2 所示,给定一个输入图像,视觉感知模块负责检测场景中的对象并提取出每个对象的潜在表征。语义分析模块将用自然语言表示的输入问题转换为用给定领域特定语言(DSL)写成的可执行程序。生成的程序具有符号和功能模块的层次结构,每个模块完成场景表征上的一种特定操作。显式程序语义具有组合性、可解释性和可泛化性。

程序执行器根据得到的场景表征来执行程序并回答问题。该程序执行器以一种符号化、确定性的方式工作。这种特征可以确保对程序进行透明的执行追踪。该程序执行器有一个对视觉表征和概念表征完全可微的设计,从而支持训练期间基于梯度的优化。

Quasi-symbolic 程序执行

给定从自然语言问题中恢复的潜在程序,符号程序执行器执行该程序并根据基于对象的视觉表征得到答案。该程序执行器是一个确定性的功能模块的集合,这些模块用于实现 DSL 中指定的所有逻辑操作。图 4B 展示了该程序的执行追踪。

 图 4B:用于 VQA(视觉问答)的神经-符号推理模型图示。感知模块首先将视觉场景解析为基于对象的深度表征,语义分析器将句子解析为可执行的程序。然后符号执行过程将两个模块连接起来。

课程视觉概念学习

受人类概念学习的启发,研究者采用课程学习方法来促进联合优化。他们将训练样本分为四步(图 4A):1. 学习对象级别的视觉概念;2. 学习关系问题;3. 在感知模块固定的情况下学习更加复杂的问题;4. 联合精调所有模块。他们发现,这对学习神经-符号概念学习器(NS-CL)至关重要。

图 4A:通过看图、阅读成对的问题和答案,对视觉概念、词和句子的语义分析进行课程学习。

实验

研究者通过实验展示了 NS-CL 的多项优势:

  1. 以惊人的准确率学习视觉概念;

  2. 在 CLEVR 数据集上实现数据高效的视觉推理;

  3. 能够很好地泛化至新属性、视觉构成和语言领域。

研究者在 5000 张图像上训练 NS-CL(数据量不到 CLEVR7 万张训练图像的 10%),在课程学习过程中为每个图像生成 20 个问题。Mask R-CNN 模块是在 4000 张生成 CLEVR 图像上预训练的,这些图像具备边界框标注。

视觉概念学习

NS-CL 模型将属性作为神经算子,从潜在对象表示映射到属性特定的嵌入空间,如下图 3 所示:

图 3:研究者将「Shape」、「Color」等属性作为神经算子。这些算子将对象表示映射到视觉语义空间。研究者使用基于相似度的指标进行对象分类。

下表 2 总结了 NS-CL 和其他强大基线模型的对比结果:

表 2:该研究使用包含「How many red objects are there?」等简单问题的诊断问题集,评估模型学到的视觉概念。NS-CL 的性能优于卷积和注意力基线模型。这表明基于对象的视觉表示和符号推理方法能够更好地理解视觉概念。

数据高效和可解释的视觉推理

NS-CL 通过观察图像、读取成对问答来联合地学习视觉概念、词汇和语义分析。它可以直接应用于视觉问答任务(VQA)。

下表 4 总结了多个模型在 CLEVR 验证集上的结果。在不使用程序注释的所有模型中,NS-CL 取得了最优性能。

表 4:NS-CL 模型在没有程序注释的情况下,取得了超过所有基线模型的性能,甚至与使用完整程序注释的 TbD 等模型相比,也达到了 类似的性能。

研究者还对视觉特征和数据效率进行了系统研究,他们实现了基线模型的两个变体:TbD-Object 和 MAC-Object。表 3 总结了实验结果。NS-CL 模型的数据效率优于所有基线模型。

表 3:研究者对视觉特征和数据效率进行了系统研究,对比了 NS-CL 和多个基线模型及其变体。在仅使用 10% 训练图像的情况下,NS-CL 可与使用完整数据集训练的基线模型获得相似的性能。

在新属性和视觉构成上的泛化效果

图 5:研究者测试了场景中对象数量和问题复杂度(即程序树深度)的组合泛化效果。研究者将数据分割为四组,它们具备不同的场景和问题复杂度。而该研究提出的基于对象的视觉表示和显式程序语义取得了最好(几乎完美)的组合泛化效果。

新场景和问题的组合泛化效果

如下表 5 所示,NS-CL 在更大场景和更复杂问题上实现了几乎完美的泛化效果,其 QA 准确率至少超过其他基线模型 4%。

表 5:研究者引入了一种新型简单的 DSL 用于图像-描述检索,以评估视觉概念迁移的效果。由于 VQA 和图像描述检索存在差异,因此 VQA 基线模型仅能在部分数据集上推断出结果。而 NS-CL 基于对象的视觉概念可以直接迁移到新领域。

扩展至其他程序域

表 5c 对比了 NS-CL 和典型的图像-文本检索基线模型在完整图像-描述数据集上的性能。在没有句子语义标注的情况下,NS-CL 可以将图像描述解析为新 DSL 程序,其性能比 CNN-LSTM 基线模型好 30%。

扩展到自然图像和语言

图 7 展示了 NS-CL 在 VQS 上的执行追踪。

图 7:左:来自 VQS 数据集的图像-问题对示例,以及对应的 NS-CL 执行轨迹。右:模型在 VQS 测试集上的结果。NS-CL 取得了和基线模型类似的性能。

图 8:从 VQS 中学到的概念,包括对象类别、属性和关系。

原文链接:https://bdtechtalks.com/2019/06/05/mit-ibm-hybrid-ai/

1+1>2:MIT&IBM提出结合符号主义和连接主义的高效、准确新模型的更多相关文章

  1. 商汤提出解偶检测中分类和定位分支的新方法TSD,COCO 51.2mAP | CVPR 2020

    目前很多研究表明目标检测中的分类分支和定位分支存在较大的偏差,论文从sibling head改造入手,跳出常规的优化方向,提出TSD方法解决混合任务带来的内在冲突,从主干的proposal中学习不同的 ...

  2. XTU | 人工智能入门复习总结

    写在前面 本文严禁转载,只限于学习交流. 课件分享在这里了. 还有人工智能标准化白皮书(2018版)也一并分享了. 绪论 人工智能的定义与发展 定义 一般解释:人工智能就是用 人工的方法在 **机器( ...

  3. Tensorflow系列专题(四):神经网络篇之前馈神经网络综述

    目录: 神经网络前言 神经网络 感知机模型 多层神经网络 激活函数 Logistic函数 Tanh函数 ReLu函数 损失函数和输出单元 损失函数的选择 均方误差损失函数 交叉熵损失函数 输出单元的选 ...

  4. [摘录]第三部分 IBM文化(2)

    第二十二章 原则性领导 在一个组织程序已经变得不受其来源和内容的约束,而且其编纂出来的组织宗旨已经代替了个人责任的组织之中,你所面临的首要任务,就是要全盘抹掉这个程序本身,以便让整个封闭的系统呼吸新鲜 ...

  5. 了解常见的开源协议(BSD, GPL, LGPL,MIT)

    一直对各种开源协议比较模糊, 特意在网上搜索了一下资料, 整理总结,以作记录 如果不喜欢长篇大论的话, 看下图就可以了 基本概念了解: 1. Contributors 和 Recipients Con ...

  6. 浅析 Hinton 最近提出的 Capsule 计划

    [原文]    浅析 Hinton 最近提出的 Capsule 计划     关于最新的 Hinton 的论文 Dynamic Routing Between Capsules,参见 https:// ...

  7. IBM的“认知计算时代”

    IBM 提出信息技术进入“认知计算时代”.所有电子设备都有潜力发展出认知能力,换言之,都可以像人一样‘思考’. 何为认知计算时代呢?  认知计算系统能够学习并与人类自然地交流,以扩展人类或机器可亲自执 ...

  8. 人工智能范畴及深度学习主流框架,IBM Watson认知计算领域IntelligentBehavior介绍

    人工智能范畴及深度学习主流框架,IBM Watson认知计算领域IntelligentBehavior介绍 工业机器人,家用机器人这些只是人工智能的一个细分应用而已.图像识别,语音识别,推荐算法,NL ...

  9. IBM新合作伙伴计划助力企业转型升级

        IBM作为老牌企业,一直在引领者技术方面的变革.当IBM再一次从自我革新开始,期望能够更快的将认知计算和云推广给自己的合作伙伴和用户们,以帮助他们在新的转型期内,能够快人一步.         ...

随机推荐

  1. AI:拿来主义——预训练网络(一)

    我们已经训练过几个神经网络了,识别手写数字,房价预测或者是区分猫和狗,那随之而来就有一个问题,这些训练出的网络怎么用,每个问题我都需要重新去训练网络吗?因为程序员都不太喜欢做重复的事情,因此答案肯定是 ...

  2. python复制多层目录下的文件至其他盘符对应的目录中

    一.需求 app打包需要打入一些H5进去,以便更快的加载页面.这些H5文件是散落在各个文件夹中的[如下列所示],偶尔各个文件夹还需新增文件,每次新增一个文件,需要改动jenkins上job脚本,比较麻 ...

  3. 死磕Lambda表达式(二):Lambda的使用

    城市就是森林,每一个男人都是猎手,每一个女人都是陷阱.--<三体> 在哪使用Lambda表达式? 在上一篇文章(传送门)中介绍了Lambda表达式的基本语法,其中的举了一个Lambda表达 ...

  4. 小白学 Python 数据分析(13):Pandas (十二)数据表拼接

    人生苦短,我用 Python 前文传送门: 小白学 Python 数据分析(1):数据分析基础 小白学 Python 数据分析(2):Pandas (一)概述 小白学 Python 数据分析(3):P ...

  5. 神奇的background——绘制图形

    相信大家在平时工作中少不了会被要求在某些元添加一些特殊的背景图片,这时候通常就拿起ps就是切切切.不说这种方式麻烦,有ui给你切好的情况已经不错,没有的就有自己动手.还可能有需要切一整张超大图的情况. ...

  6. ASP.NET Core身份认证服务框架IdentityServer4 介绍

    IdentityServer4是ASP.NET Core 2的OpenID Connect和OAuth 2.0框架.它可以在您的应用程序中提供以下功能: 它使你的应用程序具有如下特点: 认证即服务 适 ...

  7. Openwrt 路由器上 安装 svn server

    Openwrt 上也可以搭建 svn 服务了,这样就不用开着 ubuntu 了,省电. 在后台打开 ssh 服务,或者使用 telnet 服务,使用 putty 登录路由器. 如下图所示,这里刷的是 ...

  8. unittest测试框架详解

    单元测试的定义 1. 什么是单元测试? ​ 单元测试是指,对软件中的最小可测试单元在与程序其他部分相隔离的情况下进行检查和验证的工作,这里的最小可测试单元通常是指函数或者类,一般是开发来做的,按照测试 ...

  9. Oracle 11.2 RAC on Redhat 6.5 安装最佳实践

    本文讲述了在Redhat 6.5 上安装Oracle 11.2 RAC的详细步骤,是一篇step by step指南,全文没有什么技术难度,只要一步步跟着做就一定能安装成功. 环境介绍 分类 项目 说 ...

  10. MATLAB神经网络(3) 遗传算法优化BP神经网络——非线性函数拟合

    3.1 案例背景 遗传算法(Genetic Algorithms)是一种模拟自然界遗传机制和生物进化论而形成的一种并行随机搜索最优化方法. 其基本要素包括:染色体编码方法.适应度函数.遗传操作和运行参 ...