论文浅尝 | 面向 cQA 的跨语言问题检索方法

论文笔记整理: 谭亦鸣,东南大学博士生,研究方向为知识库问答。

来源: WWW2019

链接: https://dl.acm.org/citation.cfm?doid=3308558.3313502

本文提出了一种面向 cQA 的跨语言问题检索方法,旨在对于给定的问题检索出其对应另一目标语言的相似问题或查询。这个任务(跨语言信息检索)的常规做法是: 1. 将给定问题翻译为目标语言; 2. 应用单语信息检索方法完成查询。这种做法的缺陷在于翻译可能存在错误,并传递到之后的检索过程。针对这一缺陷,作者基于上述方法提出改进: 1. 利用单语 cQA 数据提升翻译质量; 2. 在现有的神经信息检索模型的训练过程添加译回机制( back-translation ),提升模型的鲁棒性。

贡献    

本文贡献包括以下几点:

1.      研究了 technical cQA 上的跨语言问题检索方法,并发现翻译质量是严重影响检索性能的因素

2.      评估 cQA 问题检索中 NMT 领域适应性产生的影响

3.      基于现有的商用 MT 服务也可以达到较好的性能

方法

首先对任务进行一个描述:

给定一个输入问题 q 0 和规模为 N 的相关问题 list Q=q 1 , q 2 ,…,q N (来自 cQA ),目标是对 list 进行重排序,从而找到 list 中与 q 0 最相关的问题 q i 。跨语言问题检索的给定问题语言为德语 (L 1 ) list 问题语言为英语 (L 2 )

整体的 pipeline 如图 1 所示,给定问题 q 0 首先由一个 NMT 神经翻译模型转换为 L 2 语言,而后经过一个 QR 模型将翻译后的给定问题 q 0 和待对比问题 q i 转换为向量表示,而后通过余弦相似度衡量两者的相关性。

NMT 模型

本文使用 Transformer 实现给定问题的翻译,作者使用 WMT’13 WMT’18 数据集训练了英语 德语,德语 英语的翻译模型,包含 4.5M 的英德 technical topic 平行语料。作为对比,作者引入了谷歌翻译服务

QR 模型

本文 QR 过程基于 RCNN 实现,该方法将循环单元( unit )与卷积网络相融合,将输入的问题 q 学习为一个修正维度的特征向量表示 r ,从而用于下一步的相似性计算。

目标函数方面,作者通过随机产生负例,构建了联合损失函数形式如下:

面向跨语言改进

基于合成平行语料的领域神经机器翻译( In-Domain NMT

具体做法就是,首先利用当前数据训练两个方向的翻译系统(英 德,德 英),而后将大规模领域单语数据(英语)翻译为德语,从而得到更大规模的英德领域平行语料,用于德 英翻译系统性能强化(即译回方法, back-translation )。由于这里的单语数据是本文任务需要的目标语言(英语),即生成的平行语料中即使存在错误也不在于目标语言句子中。因此在译文生成方面,并不会严重影响输出译文的语法错误或不通顺。

作者举了一些例子在表 1

QR 过程中, back-translation 则用于生成多种问题的复述形式( paraphrase ),从而扩充问题自然语言表达的多样性(当然也存在翻译错误,尤其基于少量数据训练得到的 Transformer 翻译系统存在大量的噪声,所以这里作者依赖于翻译性能更好的谷歌翻译服务来完成)。

实验

数据集

2 列举了本文问答实验数据集的一些统计信息,均来自 technical 领域。

模型与 Baseline 与实验结果

作者将实验分为了单语和跨语言两组,单语方面主要对比了 QR 模型( RCNN RCNN-A )在添加 back-translation 数据调优之后的性能变化。双语方面在此基础上则增加了直接使用谷歌翻译与自主训练 Transformer 模型之间的性能对比。

      作者也给出了一些实例进行对比,如表 4 5 所示:

OpenKG

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

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