论文浅尝 | BAG:面向多跳推理问答得双向 Attention 实体图卷积网络

本文主要是介绍论文浅尝 | BAG:面向多跳推理问答得双向 Attention 实体图卷积网络,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

论文笔记整理:谭亦鸣,东南大学博士生,研究兴趣:知识图谱问答


来源:NAACL 2019

链接:https://www.aclweb.org/anthology/N19-1032/

 

      实现多跳推理问答需要模型能够充分理解文本和 query 之间的关系,本文提出了一种双向注意力实体图卷积网络(BAG),该方法利用实体图中的节点及实体图与query之间的attention信息处理上述推理问答任务。其中,实体图通过文本的多层特征构建得到,图卷积网络用于获取实体图中节点的表示(带有关系感知信息),双向attention被用到图与query上,以生成query感知的节点表示,将用于最后的预测中。在QAngaroo WIKIHOP数据集上的实验表明,BAG是目前准确度最高的模型。

动机

       作者发现,在 QAngaroo 任务中(该数据集含有多个文本,目标是对于给定的 query,从一系列候选答案中找出正确的那个),大多数情况下,仅依赖一篇文档无法获得query对应的答案,问答过程需要通过文档之间的多跳推理来完成。因此,仅理解部分文本段落可能会使多跳推理失去有效性,对于过去的模型来说,这是一个巨大的挑战。

       本文提出基于图的 QA 模型,将多个文本转换为图,其中的节点是实体,边是实体之间的关系(多源文本->单个图谱),接着使用一个图卷积网络对实体图中带有关系感知的节点做表示学习。而后在图和带有multi-level feature的query之间构建一个双向attention,用于最后的预测。

贡献

作者总结本文贡献如下:

  1. 在query和图之间使用一个双向attention建立基于query感知的表示学习用于阅读理解;

  2. 利用multi-level feature参与理解关系,同于图节点的GCN表示学习过程。

方法

首先,作者正式定义多跳QA任务(以QAngarooWIKIHOP数据集为例)如下:

给定一个文档集包含N个文档,任务目标是对于query(包

这篇关于论文浅尝 | BAG:面向多跳推理问答得双向 Attention 实体图卷积网络的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/851140

相关文章

如何通过海康威视设备网络SDK进行Java二次开发摄像头车牌识别详解

《如何通过海康威视设备网络SDK进行Java二次开发摄像头车牌识别详解》:本文主要介绍如何通过海康威视设备网络SDK进行Java二次开发摄像头车牌识别的相关资料,描述了如何使用海康威视设备网络SD... 目录前言开发流程问题和解决方案dll库加载不到的问题老旧版本sdk不兼容的问题关键实现流程总结前言作为

5分钟获取deepseek api并搭建简易问答应用

《5分钟获取deepseekapi并搭建简易问答应用》本文主要介绍了5分钟获取deepseekapi并搭建简易问答应用,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需... 目录1、获取api2、获取base_url和chat_model3、配置模型参数方法一:终端中临时将加

四种Flutter子页面向父组件传递数据的方法介绍

《四种Flutter子页面向父组件传递数据的方法介绍》在Flutter中,如果父组件需要调用子组件的方法,可以通过常用的四种方式实现,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 目录方法 1:使用 GlobalKey 和 State 调用子组件方法方法 2:通过回调函数(Callb

SSID究竟是什么? WiFi网络名称及工作方式解析

《SSID究竟是什么?WiFi网络名称及工作方式解析》SID可以看作是无线网络的名称,类似于有线网络中的网络名称或者路由器的名称,在无线网络中,设备通过SSID来识别和连接到特定的无线网络... 当提到 Wi-Fi 网络时,就避不开「SSID」这个术语。简单来说,SSID 就是 Wi-Fi 网络的名称。比如

Java实现任务管理器性能网络监控数据的方法详解

《Java实现任务管理器性能网络监控数据的方法详解》在现代操作系统中,任务管理器是一个非常重要的工具,用于监控和管理计算机的运行状态,包括CPU使用率、内存占用等,对于开发者和系统管理员来说,了解这些... 目录引言一、背景知识二、准备工作1. Maven依赖2. Gradle依赖三、代码实现四、代码详解五

csu1329(双向链表)

题意:给n个盒子,编号为1到n,四个操作:1、将x盒子移到y的左边;2、将x盒子移到y的右边;3、交换x和y盒子的位置;4、将所有的盒子反过来放。 思路分析:用双向链表解决。每个操作的时间复杂度为O(1),用数组来模拟链表,下面的代码是参考刘老师的标程写的。 代码如下: #include<iostream>#include<algorithm>#include<stdio.h>#

Linux 网络编程 --- 应用层

一、自定义协议和序列化反序列化 代码: 序列化反序列化实现网络版本计算器 二、HTTP协议 1、谈两个简单的预备知识 https://www.baidu.com/ --- 域名 --- 域名解析 --- IP地址 http的端口号为80端口,https的端口号为443 url为统一资源定位符。CSDNhttps://mp.csdn.net/mp_blog/creation/editor

AI hospital 论文Idea

一、Benchmarking Large Language Models on Communicative Medical Coaching: A Dataset and a Novel System论文地址含代码 大多数现有模型和工具主要迎合以患者为中心的服务。这项工作深入探讨了LLMs在提高医疗专业人员的沟通能力。目标是构建一个模拟实践环境,人类医生(即医学学习者)可以在其中与患者代理进行医学

ASIO网络调试助手之一:简介

多年前,写过几篇《Boost.Asio C++网络编程》的学习文章,一直没机会实践。最近项目中用到了Asio,于是抽空写了个网络调试助手。 开发环境: Win10 Qt5.12.6 + Asio(standalone) + spdlog 支持协议: UDP + TCP Client + TCP Server 独立的Asio(http://www.think-async.com)只包含了头文件,不依

poj 3181 网络流,建图。

题意: 农夫约翰为他的牛准备了F种食物和D种饮料。 每头牛都有各自喜欢的食物和饮料,而每种食物和饮料都只能分配给一头牛。 问最多能有多少头牛可以同时得到喜欢的食物和饮料。 解析: 由于要同时得到喜欢的食物和饮料,所以网络流建图的时候要把牛拆点了。 如下建图: s -> 食物 -> 牛1 -> 牛2 -> 饮料 -> t 所以分配一下点: s  =  0, 牛1= 1~