KG-FiD阅读笔记

KG-FiD: Infusing Knowledge Graph in Fusion-in-Decoder for Open-Domain Question Answering

将知识图谱注入融合解码器来解决开放域的问题回答

Current Open-Domain Question Answering (ODQA) model paradigm(范式) often contains a retrieving module and a reading module.

Given an input question, the reading module predicts the answer from the relevant passages which are retrieved by the retriever.

The recent proposed Fusion-in-Decoder (FiD), which is built on top of the pretrained generative model T5, achieves the state-of-the-art performance in the reading module. Although being effective, it remains constrained by inefficient attention on all retrieved passages which contain a lot of noise.(问题:当有噪声的时候没办法做到有效的注意 )

In this work, we propose a novel method KG-FiD, which filters noisy passages by leveraging the structural relationship among the retrieved passages with a knowledge graph. (解决:利用结构化的知识图谱来将含有噪声的passage来过滤出来)

We initiate the passage node embedding from the FiD encoder and then use graph neural network (GNN) to update the representation for reranking.(节点embedding的初始化:FiD编码器;更新:使用GNN,进行reranking)

To improve the efficiency, we build the GNN on top of the intermediate layer output of the FiD encoder and only pass a few top reranked passages into the higher layers of encoder and decoder for answer generation. (用FiD的中间层来构建GNN,只将top reranked的passage传递给编码器核解码器的更高层)

We also apply the proposed GNN based reranking method to enhance the passage retrieval results in the retrieving module. (同时使用GNN based reranking技术来提高检索模块)

Extensive experiments on common ODQA benchmark datasets (Natural Question and TriviaQA) demonstrate that KG-FiD can improve vanilla FiD by up to 1.5% on answer exact match score and achieve comparable performance with FiD with only 40% of computation cost.

Introduction

key benifit of FiD: 答案解码器可以有效地融合多个passage的信息
  • 具体做法
    • 将每一个passage与question拼接起来,分别编码
    • 将所有的passage token embeddings 拼接起来进行解码
FiD的two main drawbacks:
  • 有效性
    • 一些选出来的文章可能与input question无关,会成为噪声并且影响模型表现
  • 高效性
    • 联合model所有的passage(100个)效率较低并且限制了此类模型的真实应用。——>减少passage数量会极大提升模型表现。

解决FiD问题——> KG-FiD

  • KG的优势:能够包括无结构的文本语料以及全局知识(world knowledge),这种表示可以以一种结构化的方式来进行entitle和relation

  • 具体解决方法:联合训练 基于KG的passage reranking 与 回答解码器

    • 提高有效性:借助KG来进行passage reranking

      使用GNNs来建模passage的结构化以及语义信息并输出scores

      • GNN节点的初始embedding == FiD输出的passage embedding
      • 减少噪声passage:进行reranking后只将一部分的top-reranked passage embeddings输入到回答解码器
    • 提高高效性:使用中间层的passage representation来初始化节点 而不是最后一层

      这样只会有一部分的top reranked passages 会被送入到更高层的encoder与decoder

      • 加上了passage reranking与answer generation的联合训练
    • 在DPR之后加上基于GNN的reranking来提高passage检索的结果

OVERALL

KG-FiD阅读笔记_第1张图片
KG-FiD阅读笔记_第2张图片

文章结构

  1. 如何为Retrieved passages构建KG
  2. 如何使用passage reranking来提升有效性
  3. 如何使用中间层表示来提高高效性
  4. 如何在DPR之后使用基于KG的reranking来进一步提升模型性能

思想

使用KG构建Passage Graph

基本构成:

  • 节点:text passage
  • 边:relationship
  • 外部图:KG = {(eh,r,et) }(head entity, relation, tail entity)

步骤:

  • 明确passage的定义:100个词长度(basic unit),从文档库中切分出来的
  • 假设KG实体与文档库中的articles具有一一映射的关系。
    • 此处,文档库为English Wikipedia; KG是English Wikidata
  • 定义映射公式 e = F( p )
    • e:KG实体
    • p:文档库中的article
    • 其中passage与entity是多对一的关系
  • passage graph:G = {(pi, pj)} 此处的p为passage,当ei与ej连接时,pi与pj也形成连接关系。

不对全部wikipedia passage进行建图,只针对retrieved passage进行

通过基于图的reranking来提升FiD的有效性

FiD reading module

  • T5 Embed:T5最初的embedding layer得到的embedding。

  • T5 Encoder:将T5 Embed得到的passage和question拼接起来送入到后续层里,最终encoder输出的是拼接起来的结果。
    在这里插入图片描述

  • T5 Decoder:所有passage与question拼接起来的结果共N1(检索到的passage数)个得到decoder的结果。
    在这里插入图片描述

Graph-based passage reranking

在encoding的过程中进行rerank来排除noisy passages,并将新的topN2个passage喂给decoder(N2

base1——passage graph

base2——passage的语义信息,使用T5encoder得到的passage结果,question-aware

  • base2即为passage graph的节点初始化embedding,更新方式如下:
    在这里插入图片描述

​ h为一个可学习的非线性公式,同时考虑了它自身以及与他相邻的所有其他节点

​ l表示GNN的第l层

​ Z表示节点

  • reranking score计算方式如下:

在这里插入图片描述

​ W是模型参数矩阵

  • 将top-N2个passages送给decoder

在这里插入图片描述

passage reranking loss计算方式如下:

在这里插入图片描述

​ 当passage是gold passage时,yi=1;反之为0

因此passage reranking与answer generation被联合训练,称 L α \mathcal{L}_{\alpha} Lα,因此最终政改革reader模块的loss为:
L = L α + λ L r \large\bold{\mathcal{L} = \mathcal{L}_{\alpha}+\lambda\mathcal{L}_{r}} L=Lα+λLr
​ 此处 λ \lambda λ 作为一个超参数来控制reranking在loss中占据的权重

通过使用中间层表示来提升FiD的高效性

使用最后一层的passage表示来进行reranking——>使用中间层的

  • 一个直觉是answer generation的任务相较于passage reranking来说更为困难,此处passage reranking只需要预测(predict)这个passage是否包含正确答案,因此我们不需要整个encoder的表示来进行passage reranking。

因此在中间会有非topN2的文档不在进行传递计算:

在这里插入图片描述

在检索器后使用graph-based reranking

问题:DPR没有考虑到passage之间的信息

解决:检索N0(N0>N1)个passages, graph-based rerank至N1个

DPR思想简述:采用两个BERT模型,一个对passage进行编码,另一个对question进行编码,使用FAISS进行快速的点积相似度计算,并最终得到N0个passage。

在这里插入图片描述

步骤:

  • 为N0个passage构建G1,使用DPR的passage encoder对passage得到的embedding作为节点的初始化表示。

在这里插入图片描述

​ E表示节点

  • 使用GAT模型来更新节点,进行reranking

    在这里插入图片描述

  • reranking score计算方式类似上面公式(3):

在这里插入图片描述

​ 此处Q为qustion embedding

  • loss计算方式同公式(5)

实验

知识来源

  • 文档库:English Wikipedia
  • 图知识:English Wikidata

模型细节

  • retriver:DPR
  • reader:T5-base,T5-large
  • GNN reranking:3-layer Graph Attention Networks
  • Implementation:HuggingFace Transformer libraby
  • number of passages:N0=1000, N1=100, N2=20

训练过程

  • 框架:DPR ONLY ———— reranking in DPR ————KG-FiD
  • retriver optimizer:AdamW, learing rate = 1e-3, linear-decay schedular(deccay rate=0.01)
  • KG-FiD optimizer:learing rate——T5-base:1e-4 & T5-large:5e-5, 其他一致
  • batch size:64
  • total training steps:15k, evaluated every 500 steps

评估

  • 方法:EM(exact match score)
  • 生成的answer在进行normalization后若认为是acceptable即为正确
  • 对于所有的实验,使用不同的随机种子进行5轮后记录平均分数

baseline

  • FiD

    • KG-FiD
    • FiD-KD(better retriver)
    • KG-FiD-KD(使用FiD-KD中的retriever替换DPR)
  • else

    • 采用知识图谱:Graph-Retriver、UniK-QA
    • 在大型语料库上进行额外的无监督预训练:REALM、RAG、Joint Top-K,EMDR 2 ^2 2
    • 使用多个reader的混合型方式:R2-D2、UnitedQA

结果

  • 与baseline的比较

KG-FiD阅读笔记_第3张图片

  • 在T5-large上进行高效性以及准确性的比较

KG-FiD阅读笔记_第4张图片

  • KG的有效性

    • 有无graph-based reranking的比较

    KG-FiD阅读笔记_第5张图片

    • 中间层选择对reranking的影响

    KG-FiD阅读笔记_第6张图片

  • Retriver-Reranking相较于DPR的提升

    KG-FiD阅读笔记_第7张图片

总结

这项工作解决了开放域问题回答的任务。我们专注于目前表现最好的reader模型FiD,并提出了一种新的基于KG的重新排序方法来提高其的有效性和高效性。我们的重排序模型重复使用了由reader编码器生成的passage表示,并应用了图神经网络来计算排序分数。我们提出了使用编码器的中间层来减少计算成本同时保持良好的性能的方法。我们进一步表明,我们的基于GNN的重排方法也可以应用于检索器,以进一步提高模型性能。在Natural Question和TriviaQA上的实验表明,我们的模型显著提高了原始FiD的1.5%,实现了与FiD相同的性能,但减少了60%的计算成本。

你可能感兴趣的:(自然语言处理,人工智能,神经网络,深度学习)