怎样让机器学会推理?伯克利AI研究所一文详解神经模块网络

2017 年 7 月 8 日 MOOC
| 全文共3025字,建议阅读时长3分钟 |
内容来源:BAIR博客
转载公众号:量子位

微信号:QbitAI

编译:王小新


最近,加州大学伯克利分校人工智能研究所(BAIR)的博士生Jacob Andreas在博客上发文,介绍了如何用神经模块网络(NMN)模型来完成推理任务。


这个博客是BAIR刚刚建立的,他们打算分享、讨论计算机视觉、深度学习、机器人、NLP等领域的研究成果。


这篇关于神经模块网络研究的梳理,是BAIR技术博客的第二篇文章(第一篇是博客的介绍),量子位翻译出来,和大家分享:


假设我们想要开发出一种家用机器人,能够回答关于周围环境的一些问题。


我们可能会向机器人提出这样的问题:

△ 这是什么?
和蓝色圆柱一样大小的物体是什么颜色的?


我们该怎样训练机器人来正确回答这些问题?


在深度学习领域,一种经典方法是通过收集大量问题、图像和对应的答案,构成数据集,来训练一个能直接从问题和图像映射到答案的神经网络。


对于“这是什么”一类的问题,其实我们需要解决的是一个经典的图像识别任务,这类整体方法非常有效:


△ 问:这是什么?答:猫。

但对于图1右侧的问题,这种方法效果不佳。


△ 问:和蓝色圆柱一样大小的物体是什么颜色的?答:蓝色。


这回,我们训练的神经网络似乎没理解这个问题,直接用这张图中出现最多的颜色猜了个答案。


这个问题难在哪?


即使是一张更简洁的图片,回答这样的问题仍需要多步推理。模型不能简单地识别图像中的主要物体,而是先要找到蓝色圆柱体,然后找到具有相同大小的另一个物体,再确定其颜色。


这是一个复杂的分析过程,需要对具体问题进行具体计算,不同的问题还可能有不同的解决步骤。


深度学习中大多使用了“一刀切”的方法:对于要解决的任何问题,通过设计一个固定的模型结构,希望能够从已标记的训练数据中学习到相关模型参数,捕获关于输入和输出间的一切关系。


但在现实世界中,并不能以这种方法来实现推理。我们遇到的每个新问题都涉及多种可能性,以不同的方式结合在一起。


解决这类问题所需要的模型,要能根据面对的问题来决定推理方式,建立一个能灵活地自行选择内部结构的神经网络。


在这篇文章中,我们要讨论一种名叫神经模块网络(neural module networks,NMNs)的模型。这种方法保留了深度学习有效的表现力,也为解决问题提供了更灵活的方法。


回到上文说的那个问题:


和蓝色圆柱一样大小的物体是什么颜色的?


要回答这个问题,分三步:1. 找到一个蓝色圆柱,2. 找到和它尺寸相同的另一个物体,3. 确定其颜色。


流程如下图所示:

换个问题,步骤也会不一样。当问题为“有多少与球尺寸相同的物体?”,流程图会变成这样:

像“比较尺寸”这种基本运算,在很多问题上都能共用,不过是用在不一样的地方。


NMN的核心思想是让这种“共用”更加明确:回答上面两个问题,我们用了不同结构的网络,但是在设计相同的基本运算时,两个网络相关部分共用了同样的权重。


△ “比较尺寸”部分是共用的


该如何学习得到这样的模型?


我们不是训练一个神经网络,让它能完成多对输入输出,而是同时训练大量不同的网络,然后在合适的地方将它们的参数匹配起来。

△ 网络部分节点共享示意图


一些新的深度学习框架,例如DyNet和TensorFlow Fold等,在设计的时候就考虑到了这种动态计算。


训练完成后,我们得到的也不是一个单独的深度网络,而是一组神经模块,每个模块包含推理之中的一个环节。当我们想用训练好的模型来处理一类新问题时,可以动态组合这些模块,以生成针对该问题的新网络结构。


这种方法有一个显著的优点,就是单个模块不需要低级别的监督学习:


我们不会用“蓝色对象”或者“在左边”这种关系来逐个训练神经模块,而是让它们在组合结构中,通过问题-答案这种成对数据来进行有监督学习。但是,这个神经网络能够在训练中自动推断出各个模块负责的运算,以及模块间的关系。如下图所示:


△ 神经网络在处理“蓝色圆柱和红色金属物体右侧的大积木材料一样吗?”这个问题时,自动推断出各个模块负责的运算。


在根据更真实的图片、甚至数据库等信息来源回答问题时,这个模型也同样可行:

这整个过程的关键在与一组像上面那样的高级别“推理蓝图”,根据这些蓝图,我们可以确定每个问题的分析网络应如何布局,以及如何将不同的问题联系起来。


我们应该怎么构建这些蓝图?


在对这类模型的早期研究中(相关文献1、2),我们发现,设计特定问题的神经网络与分析语法结构这两者之间,具有极大的相似性。长期以来,语言学家认为,问题的语法与回答时需要的计算过程顺序密切相关。根据自然语言处理方面的最新进展,我们可以使用现成的语法分析工具来自动提取出这些蓝图的近似版本。


但是,构建从语言结构到网络结构的准确映射,仍是一个具有挑战性的问题,转换过程中容易出错。


在后来的工作中,我们不再依靠这种语言分析方法,改用由人类专家直接标注了理想化推理蓝图的一系列问题(相关文献3)。模型通过学习模仿这些专家,大大提高了预测质量。最令人惊讶的是,当允许这些模仿训练好的模型来修改专家的预测数据时,这些模型能找到比专家更好的解决方案。


尽管近年来深度学习方法取得了显著成果,但是许多问题,如小样本学习和复杂推理等方面,仍然存在一定的挑战。不过,语义解析和程序归纳等结构化的传统方法正适合解决这类问题。


利用好神经模块网络的离散组合灵活性和数据效率,再结合深层网络的理解能力,这种方法为解决上述问题提供了一个很好的思路。NMN在很多视觉和文本推理任务中已经取得很好的效果,我们还会继续研究用NMN来解决其他人工智能问题。


相关文献

1. Neural Module Networks. 
Jacob Andreas, Marcus Rohrbach, Trevor Darrell and Dan Klein. CVPR 2016. 
https://arxiv.org/abs/1511.02799

2. Learning to Compose Neural Networks for Question Answering. 
Jacob Andreas, Marcus Rohrbach, Trevor Darrell and Dan Klein. NAACL 2016. 
https://arxiv.org/abs/1601.01705

3. Modeling Relationships in Referential Expressions with Compositional Modular Networks. Ronghang Hu, Marcus Rohrbach, Jacob Andreas, Trevor Darrell and Kate Saenko. CVPR 2017. 
https://arxiv.org/abs/1611.09978



有缘的人终会相聚,慕客君想了想,要是不分享出来,怕我们会擦肩而过~

预约、体验——新维空间站

有缘的人总会相聚——MOOC公号招募长期合作者


本文编辑:慕编组成员(小端午)


产权及免责声明 本文系“MOOC”公号转载、编辑的文章,编辑后增加的插图均来自于互联网,对文中观点保持中立,对所包含内容的准确性、可靠性或者完整性不提供任何明示或暗示的保证,不对文章观点负责,仅作分享之用,文章版权及插图属于原作者。如果分享内容侵犯您的版权或者非授权发布,请及时与我们联系,我们会及时内审核处理。


了解在线教育,
把握MOOC国际发展前沿,请关注:
微信公号:openonline
公号昵称:MOOC

 

登录查看更多
0

相关内容

Jacob Andreas是麻省理工学院的助理教授和微软语义机器的研究员。他的团队的研究目的是建立自然语言界面的智能系统和理解预测问题,塑造语言和其他表征。雅各布在加州大学伯克利分校获得博士学位,他的哲学硕士学位。他是剑桥大学的丘吉尔学者,在哥伦比亚大学获得理学士学位。他曾获得NSF研究生奖学金、Facebook奖学金、NAACL和ICML的论文奖。
【斯坦福大学博士论文】自监督场景表示学习, 97页pdf
专知会员服务
92+阅读 · 2020年6月19日
专知会员服务
44+阅读 · 2020年3月6日
机器也能学会如何学习?——元学习介绍
AINLP
19+阅读 · 2019年9月22日
神经网络原来是这样和数学挂钩的
遇见数学
8+阅读 · 2019年5月21日
理解人类推理的深度学习
论智
17+阅读 · 2018年11月7日
数学思维与编程思维怎样可以完美的结合
算法与数学之美
6+阅读 · 2018年6月11日
【观点】如何可视化卷积网络分类图像时关注的焦点
GAN生成式对抗网络
5+阅读 · 2018年3月17日
已删除
将门创投
3+阅读 · 2017年9月12日
揭秘 DeepMind 的关系推理网络
人工智能头条
3+阅读 · 2017年7月7日
Arxiv
14+阅读 · 2020年1月27日
Question Generation by Transformers
Arxiv
5+阅读 · 2019年9月14日
Arxiv
6+阅读 · 2018年5月22日
Arxiv
6+阅读 · 2018年3月31日
Arxiv
10+阅读 · 2018年2月9日
VIP会员
相关资讯
机器也能学会如何学习?——元学习介绍
AINLP
19+阅读 · 2019年9月22日
神经网络原来是这样和数学挂钩的
遇见数学
8+阅读 · 2019年5月21日
理解人类推理的深度学习
论智
17+阅读 · 2018年11月7日
数学思维与编程思维怎样可以完美的结合
算法与数学之美
6+阅读 · 2018年6月11日
【观点】如何可视化卷积网络分类图像时关注的焦点
GAN生成式对抗网络
5+阅读 · 2018年3月17日
已删除
将门创投
3+阅读 · 2017年9月12日
揭秘 DeepMind 的关系推理网络
人工智能头条
3+阅读 · 2017年7月7日
Top
微信扫码咨询专知VIP会员