Dynamically Fused Graph Network for Multi-hop Reasoning (ACL 2019)阅读笔记
动机: | single-hop QA 任务无法测试潜在模型的深度推理能力。 1.现有的工作从输入段中构建实体图,并利用GNN对该实体图执行信息融合;现有的所有工作是在静态图上执行GNN,这是一种隐式推理。 2.之前的工作将文本信息汇集成实体图,选择实体图中的某一个实体作为答案,然而在现实中,答案并不总是为所提取得实体图中的一个实体。这样的方法很难直接运用到open-domain 的QA 任务中 |
贡献: | 1.本文基于query和document中的entity mention构建动态实体图。 2.本文提出一个信息融合的过程。该过程不仅可以将信息从document 传递到图的实体中,还可以将信息从实体图中反向传播回到document 中。 |
模型: | 作者提出了一个dynamically fused graph network (DFGN)。该模型分为五个部分:段落选择子网络, 实体图构建模块, 编码层, 多跳推理融合块 和答案预测层。 1. 段落选择子网络该子网络由一个预训练好的BERT模型,上层再接一个分类层。该子网络的输入为问题和某一段落,输出一个评分。该评分表示该段落含有至少一个support sentence的概率。在这篇论文中,主要计算出的评分大于0.1,就认为该段落为问题相关段落。最终问题Q,和筛选后的段落C. 2. 构建实体图
3. 对query 和 contex 进行编码
4.用融合块推理.该部分的输入为 该模块主要执行以下流程:通过计算document tokens 中的实体向量实现信息从tokens 向图中的实体结点传递; 在实体图间执行信息传播; 从实体图向文本tokens 传播信息; (1) Document to Graph Flow. 目的是将实体中的多个token 向量压缩成一个向量. 作者的做法是:利用max-pooling 和mean-pooling 将多个token向量压缩成一个,并将这两个压缩后的向量拼接起来,构成维度为 对于第t层的fusion block, 记输入的context为 (2) Dynamic Graph Attention.
其中 利用上述步骤实现信息在实体图之间传播,得到更新后的实体表示 (3) Updating Query. 在每一层Fusion Block结束后,还会使用新的实体表示通过Bi-Attention来更新Query的表示。 (4) Graph to Document Flow.将该层输入的Context的表示 (5)Prediction:使用一个级联结构依次预测1.support evidence 2. start positioin 3 end positing 4 answer type. 其中, 最终的目标函数为四个交叉熵损失函数:
|
IDEA | 1. 仅使用识别出的命名实体作为entity 存在局限性,因为在现实场景,回答问题并不总是以命名实体为驱动的。总的来说,使用实体作为图的节点是不完备的。 2. 在答案预测部分,四个级联的结构存在不合理性。比如,先预测答案类型再预测start 和end更为合理点。
|
部分内容参照这位大佬,感谢!