【QA论文笔记】问答对排序新方法,层次循环编码器与主题聚类结合

【导读】这篇发表在自然语言处理领域顶级会议的NAACL的文章,提出了一种新的端到端神经网络架构,用于对候选回答进行排序。该文章提出的模型,文本分别按照词和块的级别进行编码,有效地捕捉了整句话的含义。在此基础之上,增加了话题聚类模块,从回答中提取语义信息,将回答进行分组,进一步提升了排序的性能。

【NAACL 2018 论文】

Learning to Rank Question-Answer Pairs using Hierarchical Recurrent Encoder with Latent Topic Clustering

简介



最近神经网络已经在许多机器学习领域取得了巨大成功,如图像分类,语音识别,机器翻译,聊天机器人,问答等领域。其中,自动问答(QA)任务一直被认为是人工智能的主要目标。

在商业领域,通常通过使用预先组织的知识库和/或使用基于信息检索(IR)的方法来处理QA任务。而在学界,研究人员不断研究QA系统核心技术:问答对排序任务。排序任务是指,从知识库或基于检索的模块中选择候选回答中的最佳答案。有许多端到端的神经网络试图来解决这一任务。这些作品侧重于匹配句子级别的文本对。因此,他们在理解更长的文本(如多回合对话和解释性文档)方面存在局限性,文本变长时,排序性能随之下降。为了解决这个问题,这篇文章的创新点在于:

• 引入分层递归对偶编码器(HRDE)模型来计算问答对之间的匹配度来确定排名。通过使用分层体系结构将文本从单词级别编码为块级别,HRDE可以防止在理解更长的文本时性能下降,同时支持其他最先进的神经网络模型。

提出了一个潜在主题聚类(LTC)模块来从目标数据集中提取潜在信息,并将这些额外的信息应用于端到端的训练。该模块允许每个数据样本找到最近的话题聚类,从而帮助神经网络模型分析整个数据。 LTC模块可以与任何神经网络相结合,作为额外信息的来源。这是一种利用潜在话题集群信息进行QA任务的新颖方法,特别是通过将HRDE和LTC的组合模型应用于QA对排名任务。

该论文在Ubuntu对话语料库和三星官方网站抓取的真实QA数据上对提出的模型进行评估,可以看出达到了state of art 的效果。

模型



HRDE(Hierarchical Recurrent Dual Encoder )

首先解释模型中的几个词语,解释之后,模型的结构以及为什么这样设计就很容易理解了。

Dual :Dual是“对偶”的意思,在排序任务中,需要分别对问题和候选回答会进行编码,这就体现了“Dual”

Recurrent:循环,代表RNN循环神经网络,在文本处理时,充分考虑了上下文的关系,在对当前词语进行编码的时候,还会加入到前几个词的编码信息,并加入一些遗忘机制(LSTM,GRU)等。

其实用循环神经网络编码问答对前人已经做过(Lowe 2015),而由于RNN的遗忘的机制,针对长文本编码时往往不能顾及全局的信息,因此,本文的作者提出了分层结构。

• Hierarchical 所谓的分层结构,就是首先将一整个回答首先按照句子或其他方式切分成几个部分,首先对各部分的词分别进行编码,然后在结合整个词的编码作为整个部分的编码,完成了所谓的分层编码的效果。这种做法避免了在处理长文本时由于“遗忘”而导致排序性能下降的问题。

模型的框图如下所示,右边蓝色框中的即展示了分层编码: 表示第i个部分的中的t个词, 表示对第i个部分中第j个词用RNN编码的结果。 表示在对词编码的基础上,对这部分进行编码的结果。

LDT( Latent Topic Clustering )



而为了进一步提高排序的性能,在HRDE的基础上,还进行了分组。这一操作只应用于回答。在HRDE输出的基础上,首先将输入与代表K个“主题”的向量做内积,并softmax,得到该回答与所有主题的“相似度”(或“权值?”),然后用“相似度”和K个主题”构造“输入的向量中的主题特征,即按照相似度对“主题“进行加权求和,和原始输入拼接在一起,作为下一步排序的输入。

LDT的结构图如下所示(蓝色虚线框):

实验结果



数据集

文章中使用了Ubuntu 数据集和从三星官网上爬的数据来验证模型。数据的特点如下所示:

句子的样例如下所示,可见回答都是较长的文本:

在三个数据集上的实验结果如下所示,可见加入了分层结构对实验结果有十分明显的提升,而后期主题聚类又在此基础上有微弱的提升。

参考链接:

https://arxiv.org/pdf/1710.03430.pdf

更多教程资料请访问:专知AI会员计划

-END-

原文发布于微信公众号 - 专知(Quan_Zhuanzhi)

原文发表时间:2018-05-14

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏机器学习算法与Python学习

以为GAN只能“炮制假图”?它还有这7种另类用途

最近,AI方案设计师Alexandor Honchar在Medium网站上分享一篇文章。他认为生成对抗网络(GAN)目前在生成图像取得了巨大进展,生成的图像几乎...

1053
来自专栏数据科学与人工智能

【机器学习】10 种机器学习算法的要点

前言 谷歌董事长施密特曾说过:虽然谷歌的无人驾驶汽车和机器人受到了许多媒体关注,但是这家公司真正的未来在于机器学习,一种让计算机更聪明、更个性化的技术。 也许我...

2537
来自专栏大数据文摘

代码实现! 教学视频!Python学习者最易上手的机器学习漫游指南

1703
来自专栏机器之心

学界 | 神经网络quine:自我复制 + 解决辅助任务

选自arXiv 作者:Oscar Chang、Hod Lipson 机器之心编译 参与:程耀彤、路 近日,哥伦比亚大学的研究者发布论文,从生命的角度看待人工智能...

3605
来自专栏量化投资与机器学习

【全网首发】机器学习该如何应用到量化投资系列(二)

有一些单纯搞计算机、数学或者物理的人会问,究竟怎么样应用 ML 在量化投资。他们能做些什么自己擅长的工作。虽然在很多平台或者自媒体有谈及有关的问题,但是不够全面...

2826
来自专栏Duncan's Blog

Twitter用户数据Profiling

传统的数据摘要包括data exploration/data cleansing/data integration.而之后,data management和bi...

2023
来自专栏CSDN技术头条

Yoshua Bengio等大神传授:26条深度学习经验

【编者按】8月初的蒙特利尔深度学习暑期班,由Yoshua Bengio、 Leon Bottou等大神组成的讲师团奉献了10天精彩的讲座,剑桥大学自然语言处理与...

2116
来自专栏人工智能头条

Yoshua Bengio、 Leon Bottou等大神传授:深度学习的26条经验

2382
来自专栏AI研习社

TOP 5% Kaggler:如何在 Kaggle 首战中进入前 10% | 干货

编者按:本文作者章凌豪,复旦大学计算机科学专业。有兴趣的同学可以移步他的个人主页:https://dnc1994.com/Introduction(点击文末“阅...

3876
来自专栏大数据文摘

剑桥大学研究院总结:26条深度学习经验

2906

扫码关注云+社区

领取腾讯云代金券