论文浅尝 - ICLR 2020 | 用于文本推理的神经模块网络

论文笔记整理:邓淑敏,浙江大学在读博士,研究方向为低资源条件下知识图谱自动化构建关键技术研究。



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

Demo链接: https://demo.allennlp.org/reading-comprehension

代码链接: https://nitishgupta.github.io/nmn-drop/

这篇文章解决的任务是复杂问题问答,比如回答“谁在第二节比赛中得到最高分?”类似的问题。解决这个任务需要:理解问题->在蕴含答案的文本中做信息抽取à符号推理,所以问题的难点也显而易见:(1)理解问句语义,将复杂问题拆分成简单问题;(2)文本理解,理解文本中实体、关系和事件等;(3)进行推理,比如判断大小,计数等。传统的方法比如语义解析,或者pipeline的模型,要么需要基于结构化或半结构化数据去做,要么在子任务中依赖更多的监督信号,这对复杂问题问答任务来说都很难实现。因此这篇文章提出用神经模块网络去解决这个问题,先将问题解析成logicalform,然后在文本中运行可执行的模块。这里的模块可看成用于推理的可学习的函数。

模块概览

复杂问题问答包含的推理可分为两大类:自然语言推理和符号推理。自然语言推理可以看成是文本信息抽取的过程,符号推理就是基于抽取出的结构化知识进行推理判断。这两大类推理中定义的模块如上图所示。

下面看一个用神经模块网络解复杂问题问答的例子。

第一步:将问题解析成logicalform。

将问题解析成logicalform

第二步:在蕴含答案的文本中执行模块。

模块运行的最终结果

执行第一个模块:find(),找出得分这个实体

执行第二个模块:find-num(),找出得分的数值

执行第三个模块:max-num(),找出最大的得分值

执行第四个模块:extract-argument(),找出得到最大得分的人,这个模块类似于事件抽取中的argumentextraction

那接下来的问题就在于,如何组合这些模块,以及如何学习出这些模块。组合这些模块目前主要用一些seq-to-seq的模型,至于学习这些模块,下面给出学习find()模块的示例。

问题的嵌入用Q表示,蕴含答案的文本嵌入用P表示,find(Q)->P,输入问句的tokens,输出蕴含答案的文本中和输入tokens相同或相似的token分布,如下图所示

find(Q)->P示例

具体做法就是先计算一个“问题-蕴含答案文本”的相似度矩阵

然后按行标准化S,得到“问题-蕴含答案文本”的权重矩阵

最后得到蕴含答案文本的token权重分布:

其他模块的做法这里就不赘述了,可以参见原文。

本文的实验用了DROP数据集(https://www.aclweb.org/anthology/N19-1246.pdf),实验结果如下

实体预测的实验结果比较

由于篇幅限制省略了一些细节,如果大家对这篇文章的工作感兴趣,可以阅读原文,也欢迎一起交流。



 

OpenKG

开放知识图谱(简称 OpenKG)旨在促进中文知识图谱数据的开放与互联,促进知识图谱和语义技术的普及和广泛应用。

点击阅读原文,进入 OpenKG 博客。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/479013.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

全栈深度学习第3期: 怎样科学管理实验数据?

一起追剧鸭简介Berkeley全栈深度学习追剧计划是由夕小瑶的卖萌屋发起的优质公开课打卡项目,通过微信群为同期追剧的小伙伴提供交流平台。关于该计划的详请见这里。1. Berkeley深度学习追剧群目前已有1000小伙伴加入,公众号后台回复口令 深度学习追剧 入群…

论文浅尝 - ICLR2020 | 通过神经逻辑归纳学习有效地解释

论文笔记整理:朱渝珊,浙江大学直博生。研究方向:知识图谱,快速表示学习等。论文链接:https://arxiv.org/pdf/1910.02481.pdf本文是ICLR 2020的一篇关于知识图谱中关于复杂(树状、组合)规则可微学…

上海交大张拳石:神经网络的变量交互可解释性研究

文 | Qs.Zhang张拳石知乎可解释性研究一直有两副嘴脸,一副烈火烹油繁花似锦,一副如履薄冰零丁洋里叹零丁。在2018年我开始发知乎是为了“活着”——被刷榜为王的风气屡屡打击之后,一朝中稿,倒过一口气来,终于可以跟大家…

基于TensorFlow Serving的深度学习在线预估

一、前言 随着深度学习在图像、语言、广告点击率预估等各个领域不断发展,很多团队开始探索深度学习技术在业务层面的实践与应用。而在广告CTR预估方面,新模型也是层出不穷: Wide and Deep[^1]、DeepCross Network[^2]、DeepFM[^3]、xDeepFM[^…

python库Camelot从pdf抽取表格数据以及python库camelot安装及使用中的一些注意事项

一、python库camelot安装及使用中的一些注意事项 1)camelot方法有两种解析模式:流解析(stream)、格子解析(lattice),其中格子解析能够保留表格完整的样式,对于复杂表格来说要优于流…

LeetCode 561. 数组拆分 I

1. 题目 给定长度为 2n 的数组, 你的任务是将这些数分成 n 对, 例如 (a1, b1), (a2, b2), …, (an, bn) ,使得从1 到 n 的 min(ai, bi) 总和最大。 示例 1:输入: [1,4,3,2]输出: 4 解释: n 等于 2, 最大总和为 4 min(1, 2) min(3, 4).来源:力扣&…

论文浅尝 - 计算机工程 | 知识图谱可视化查询技术综述

本文转载自公众号:计算机工程。知识图谱可视化查询技术综述王鑫, 傅强, 王林, 徐大为, 王昊奋知识图谱作为符号主义发展的产物,是人工智能技术和系统中的重要组成部分,其在百科知识、生物信息、社交网络以及网络安全等领域被广泛运用。知识图…

用VS Code直接浏览GitHub代码 | 12.1K星

文 | 金磊(发自凹非寺)源 | 量子位“看GitHub代码”这件事上,还在网页上点点点?用开发工具看代码,不香吗?于是,它来了,它来了——可以直接用VS Code方式打开GitHub代码的工具。而且在短短几天时间里&#x…

APPKIT打造稳定、灵活、高效的运营配置平台

一、背景 美团App、大众点评App都是重运营的应用。对于App里运营资源、基础配置,需要根据城市、版本、平台、渠道等不同的维度进行运营管理。如何在版本快速迭代过程中,保持运营资源能够被高效、稳定和灵活地配置,是我们团队面临的重大考验。…

Android官方开发文档Training系列课程中文版:通知用户之大视图通知

原文地址:http://android.xsoftlab.net/training/notify-user/expanded.html#big-view 通知在通知栏中以两种风格呈现:正常视图与大视图。只有在通知展开的时候才会展示大视图。这只有在通知处于通知栏顶部时或者用户点击了通知时才会出现。 大视图于A…

论文浅尝-WSDM | Stepwise Reasoning for Multi-Relation QA

论文笔记整理:谭亦鸣,东南大学博士。来源:WSDM ’20链接:https://dl.acm.org/doi/pdf/10.1145/3336191.33718121.介绍知识图谱问答旨在利用知识图谱的结构化信息回答以自然语言提出的问题。当面对多关系问题时,现有基于…

从零搭建基于知识图谱的问答系统(以医疗行业为例)

清华大学人工智能研究院院长张钹院士2020年发表署名文章,首次全面阐述第三代人工智能的理念,提出第三代人工智能的发展路径是融合第一代的知识驱动和第二代的数据驱动的人工智能。基于知识图谱的推理,恰恰体现了第三代人工智能的特点。知识图…

Android官方开发文档Training系列课程中文版:通知用户之在通知中显示进度

原文地址:http://android.xsoftlab.net/training/notify-user/display-progress.html#FixedProgress 通知中包含了一个进度指示器,用来向用户展示一项正在进行中的工作状态。如果你可以确保任务会花费多长时间,并且可以在任何时候得知它完成…

LeetCode 109. 有序链表转换二叉搜索树(快慢指针+递归)

1. 题目 给定一个单链表,其中的元素按升序排序,将其转换为高度平衡的二叉搜索树。 本题中,一个高度平衡二叉树是指一个二叉树每个节点 的左右两个子树的高度差的绝对值不超过 1。 来源:力扣(LeetCode) 链…

beeshell —— 开源的 React Native 组件库

背景 beeshell 是一个 React Native 应用的基础组件库,基于 0.53.3 版本,提供一整套开箱即用的高质量组件,包含 JavaScript(以下简称 JS)组件和复合组件(包含 Native 代码),涉及前端…

论文浅尝 - ACL2020 | 用于链接预测的开放知识图谱嵌入

本文转载自公众号:PaperWeekly。 作者:舒意恒,南京大学硕士,研究方向:知识图谱。当前大量的知识图谱都是通过文本直接构建的。由于当前的知识图谱构建方法的局限性,其中难免包含对同一实体或关系…

论文审稿人可以下岗了?CMU都做出论文审稿机器人了!

文 | Sheryc_王苏机器学习真是越来越火了,这从各大会议逐年增加的投稿量上就可见一斑:AAAI21收到了9034篇投稿,NeurIPS20收到了9467篇投稿,一篇投稿至少要经过3位审稿人同行评议,耗费的人力可想而知。那么问题来了&…

Android官方开发文档Training系列课程中文版:多样屏幕之支持不同的屏幕尺寸

原文地址:http://android.xsoftlab.net/training/multiscreen/index.html 引言 Android运行于数以百计不同尺寸的设备上。范围小到手持移动电话,大到电视设备。因此,在设计APP时应当兼顾到尽可能多的屏幕尺寸。这样才能照顾到较多的潜在用户…

阿里云开源EasyTransfer:业界首个面向NLP场景深度迁移学习框架

阿里云开源EasyTransfer:业界首个面向NLP场景深度迁移学习框架 原文链接:https://zhuanlan.zhihu.com/p/267392773 阿里云正式开源了深度迁移学习框架 EasyTransfer,本文详细介绍了 EasyTransfer 框架的核心功能。机器之心发布,机…

LeetCode 559. N叉树的最大深度

文章目录1. 题目2. 解题2.1 递归2.2 按层queue遍历1. 题目 给定一个 N 叉树,找到其最大深度。 最大深度是指从根节点到最远叶子节点的最长路径上的节点总数。 2. 解题 2.1 递归 class Solution { public:int maxDepth(Node* root) {if(root NULL)return 0;int …