【读论文】 Learning Representation Mapping for Relation Detection in Knowledge Base Question Answering

系统简称:KBQA-Adapter
发表会议:ACL 2019
研究领域:KBQA-Relation detection (KBQA中的关系探测)
作者团队:南京大学NLP组
代码仓库:https://github.com/wudapeng268/KBQA-Adapter

论文简介

该工作主要关注KBQA关系探测中unseen relation的探测,并关注zero-shot relation的探测,使用一个简单的映射方法——representation adapter来将预训练的relation embedding映射到task specific的embedding空间中,训练该adapter时采用了对抗学习loss以及重建loss。
作者重新分配了SimpleQuestion的train,dev和test,使得test和dev中未见关系的比例提升至50%,重新分配后的数据集被叫做SimpleQuestion-Balance (SQB)。
相比baseline HR-BiLSTM (https://github.com/StevenWD/HR-BiLSTM.git),该方法在SQB的test上提升明显,micro-accuracy从33提升到了77.3。

任务背景

关系探测任务,即给定问句和目标知识库,探测出现在该句中的关系。本文做的是SimpleQuestion,这是一个简单问句集,每个问句只有一条对应的关系。目标知识库是Freebase。如下图所示,需要从where was ... born探测出people.person.place_of_birth。


简单问句集上的关系探测其实是一个较为简单的任务,传统做法就是先做实体链接,再从实体出发找邻接关系,对邻接关系进行排序或者分类就得到了该问句所蕴含的关系,比如HR-BiLSTM就是这种做法。

但是这种方法的问题在于,若某候选关系在训练集中未出现过,则排序模型(分类模型)就很难判断正确。也就是存在zero-shot learning的问题。在SimpleQuestion数据集中,99%的test中的relation在train中出现过,即这不是一个zero-shot问句集。

本文希望通过某种方式,使得模型能够更好地学习zero-shot地关系,从而具有更强的泛化性。

方法

方法其实较为简单,就是给pretrained 的relation embedding加一个转换层(Adapter),使得转换后的embedding能够更好地适应relation detection任务。下图中红框圈出来的就是本文的主要贡献。那么问题在于,如何去训练这个adapter。

这里作者提了3种loss,分别是basic loss, adversarial loss 和 reconstruction loss。


basic adapter

首先,将关系分为两类,分别是seen relations,用表示,unseen relations,用来表示。
第一遍训练,不加adapter,可以得到中的relation fine-tune之后的表示,记作,这是伪目标向量。未经fine-tune的relation embedding记作。
basic adapter的目标就是把映射到,记作,就是一个线性映射层,其loss为:


就是 集合中所有关系的loss之和,这里loss可以自定义,比如MSE。

adversial adapter

为了加强adapter的表示,作者又提出了adversial adapter loss,也就是对抗学习的loss。具体就是需要再训练一个discriminator,记作。的目标是判断哪些embedding是伪目标,哪些是adapter生成的,就是一个而分类器。所以adversial adapter的loss是:


这有两个loss,一个是判别器 的,还有一个是adpater 的。

reconstruction adapter

上面两种loss,都是在seen relation上训练的,那么unseen的呢?作者这里提出了reconstruction loss。
具体而言,就是在训练一个从反向映射回的线性映射,记作。
reconstruction adapter的loss为:

reconstruction loss的优势在于可以同时在seen 和 unseen的relation上训练。

实验

SQB数据集的构成


SQB中 test和dev上的seen 和unseen大概各占一半,而原来的SQ中几乎没有unseen。

Relation Detection结果


micro-average accuracy:对instance做平均的acc。
macro-average accuracy:对relation做平均的acc。

假设实体已知,相比HR-BiLSTM,在unseen数据上提升较为明显。
adapter和adversial adapter以及reconstruction都起了一定的效果。

对KBQA的提升


实体mention用FocusPrune探测,然后用surface form精准匹配freebase中的实体。
从48.5提升到63.7。

对seen relation的偏好


之前HR-BiLSTM在选择关系时会偏好seen 的relation,因为它们得到了更好的训练。
adapter可以降低这种偏好。

其它分析

训练数据量


不管训练数据量有多少,对HR-BiLSTM都呈领先优势。

embedding可视化

总结一下

这份工作是一份比较好的对unseen relation detection的探索,放在19年这些技术都较为常规,个人觉得idea到实验再到分析都挺完备的,是一份不错的工作。
当然,放到22年再看,预训练模型如BERT等的引入,肯定会带来更好的效果提升。同时,对于复杂问题数据集如CWQ和GrailQA上的unseen relation还需要进行探索,这不失为一个好的研究方向。

你可能感兴趣的:(【读论文】 Learning Representation Mapping for Relation Detection in Knowledge Base Question Answering)