开放领域的人机对话在过去几年中受到越来越多研究者的关注。然而,对于开放领域的对话系统不存在一个标准的自动评测方法,研究人员通常采用人工标注来评估其模型,这种方法不仅耗时而且不能很好的扩展。在本文中我们提出一种结合无参考回复和有参考回复的评测方法,该方法同时考虑问题(先前用户的话语)和参考回复来对生成的回复进行评测,我们将该指标称之为 RUBER (a Referenced metric and Unreferenced metric Blended Evaluation Routine)。
RUBER 评价指标是可学习的,但它的训练不需要人工评价的标签。因此,相对于其他的可学习的评测方法,RUBER 更为灵活并且易于扩展到不同的数据集和语言。通过在两种典型的的对话系统上(基于检索和基于生成的)的实验测试表明,RUBER 与人工评价具有很高的相关性。
简介
近年来开放领域对话由于其广泛的应用受到越来越多的关注[1][2][3],自动评测作为对话系统研究中一个重要组成部分,它不仅能够减轻模型比较和选择的负担,而且能够极大的促进该领域的进一步研究。然而在现有的研究中,并没有一个针对对话系统的评测方法,许多研究人员采用人工标注来评估其模型,这样不仅耗时而且不能很好的扩展。
在一些其他语言生成任务中已经先后提出了一些自动评测方法,例如用于机器翻译质量评测的 BLEU[4]和 Meteor[5],以及用于文本摘要 ROUGE[6]。对于对话系统,一些研究人员也采用这些评价方法来进行评估[7][8][9]。最近 Liu 等人[10]在对话系统上进行一系列的相关实验,表明现有的一些自动评测指标(如:BLEU, ROUGE, METEOR)和人工打分之间的相关性很弱。
最近,Lowe 等人[11]提出了一种基于神经网络的对话系统评测方法,它通过学习预测在给定问题(先前用户的话语)和参考回复的情况下生成回复的质量。这种评价模型需要大量的人工标注的分数来训练网络,因此不太灵活并且可扩展差。
在本文中,我们针对开放领域对话提出 RUBER 评测方法,该方法具有以下特点:
我们在两种主要的对话系统(包括检索和生成)上评估RUBER的性能。实验表明, RUBER 和人工打分的 Pearson 和 Spearman 相关系数明显优于现有的自动评价指标。
模型介绍
图1:RUBER 评测模型的总体设计
如图1显示了 RUBER 评测模型的总体设计方法。我们将分别介绍 referenced 和 unreferenced 的评测方法,最后讨论如何将两种方法进行结合。
— 01 —
Referenced Metric
我们使用生成回复 r^和参考回复 r 之间的相似度作为 referenced 评价指标,并将其表示为Sr(r, r^)。传统的 referenced 评测方法大多数是衡量 n 元词的重叠,如 BLEU 计算 n-gram 准确率,ROUGE 计算 n-gram 的召回率。但是由于开放领域对话中语言表述的多样性,这种基于词重叠的方法并不能很好的运用到对话评测任务中。
本文中我们采用词向量池化的方法,通过选择每个维度的最大值和最小值来表示句子信息;然后通过余弦距离来衡量两个句子之间相似度。令 W1, W2,..., W3 表示为句子中的单词的词向量,因此 max-pooling 可表示如下:
其中[·]表示词向量的维度索引。同样,min-pooling产生一个向量 v_min,然后将 v_max 和 v_min 向量级联得到 v = [v_max ; v_min]。令v_r^表示生成回复的句子向量表示,v_r 是参考答复的句子向量表示,使用cosine距离衡量 r 和 r^ 之间的相似性:
在无监督词向量嵌入学习中,由于常见的词经常出现在不同的上下文中,因此这些词的词向量通常都靠近原点(接近零)。选择每个维度中的最大值和最小值可以提取更多关于非常见词的信息。相比于 Forgues 等人[12]提出的 vectorextrema 方法(选择最大正值或最小负值),其特征更容易受到符号的影响。
— 02 —
Unreferenced Metric
图2:无参考回复的评测网络结构图
然后我们衡量生成的回复 r^和它的问题 q 之间的相关性,由于该评测方法不依赖于参考回复,因此称之为无参考回复的评测方法(Unreferenced Metrics),将其表示为 s_u (q, r^)。不同于 r - r^评测方法,其主要衡量两个语句的相似性,而 q - r^评测涉及更高层次的语义关联度。因此,本文设计一个神经网络来预测一个回复对于一个问题的适当性(或称之为匹配度),网络结构如图2所示。
首先将问题 q 和回复 r^中的每个单词嵌入到一个固定维数的向量,然后将单词序列通过带有 GRU 单元的双向递归神经网络(Bi-GRU RNN)。前向 RNN 的数学形式表示如下:
其中 x_t 是当前输入单词的词嵌入向量,h->t 是隐藏状态。同样,反向 RNN 给出隐藏状态可以表示为 h<-t。然后我们将两个方向的最后一个隐含层状态级联,从而得到问题和回复的句子表示向量,分别表示为 q 和 r。
我们引入了类似于文献中[13]的“二次特征”(表示为 qMr,其中 M 是一个参数矩阵),然后我们将该二次特征与 q 和 r 级联并通过一个多层感知器(MLP)来预测最终的得分。 MLP 的隐藏层使用 tanh 作为激活函数,我们希望最终的得分在 0 到 1 之间,因此最后一个单元(标量)使用 sigmoid 激活函数。
为了训练神经网络,我们采用负采样,这使得我们的训练不需要人工标记的打分数据。给定一个真实的问题—回复对,我们在训练集中随机采样一个回复 r-作为负样本。我们希望真实回复的得分比负样本的得分要高,并且至少高出∆。网络的训练目标是最小化函数:
网络所有参数都由 Adam 算法[15]反向传播训练。
上述网络结构主要受到之前话语匹配的相关研究工作[13][14]的启发,我们还可以使用其他变体网络结构来进行匹配,具体细节不是我们的研究重点。本文的研究验证了负采样对于对话评测任务的有效性,相比与 Lowe 等人[11]提出的基于监督学习的评测方法,本文的方法不需要使用人工打分数据来训练网络,这不仅减轻了人工标注的的负担,也使得我们的评测模型具有很好的扩展性。
— 03 —
Hybrid Evaluation
我们首先将每个指标归一化至[ 0, 1 ],使得它们通常具有相同的比例。
其中min(s’)和 max(s’)分别指特定度量的最大值和最小值。
然后我们通过一些简单的启发式方法将~s_R 和~s_U 组合为最终的 RUBER 评测方法,如:min,max,几何平均和算术平均。我们将在 3.2 中看到的,不同的策略产生类似的结果,并且明显优于传统的评测方法。
实验
一个好的评测方法应该和人工打分具有很好的相关性,本节中我们测试 RUBER 评测方法和人工打分之间的相关性。由于文化背景以及人工打分的便捷性,本文的实验是在中文语料库上进行的,但我们认为 RUBER 可以适用于不同的语言。
— 01 —
实验设置
我们从中文论坛—豆瓣中爬取了大量的对话数据,该训练集包含了 1,449,218 个样本,并训练集语料进行中文分词。本文将 RUBER 评测方法(以及一些传统的评测方法)用于评测两个主要的对话系统。一是基于检索的对话系统,其首先通过关键字匹配检索出一个候选集,然后通过人工特征对候选集重新排序,最后选择排名最高的结果作为生成回复[9]。另一个是基于递归神经网络的语言生成模型(Seq2Seq)[16],该网络首先通过一个编码器将问题编码为一个向量,然后通过解码器将其解码为的对应的回复,此络中还使用了注意机制[17]来增强问题—回复之间的交互。
实验中邀请了 9 个志愿者来对两个对话系统(检索或生成)的答复来进行打分,打分根据生成回复的流畅性、逻辑一致性、语义相关性分为 0,1,2 三档。分数 2 表示好的答复,0 表示差的回复,1 表示一般的回复。
— 02 —
实验结果及分析
表1:不同的自动评测方法与人工打分之间的相关性
表 1 显示了 RUBER 以及各种传统评测方法和人工打分(平均值)之间的相关性。其中 Pearson 和 Spearman 相关系数广泛应用于其他领域(如机器翻译)自动评测方法的性能比较。
我们发现与现有基于词重叠的评测方法(如 BLEU,ROUGE)相比,基于词向量的评测方法 s_R 和人工打分表现出更高的相关性。这意味着参考回复可用于候选回复的评测,但是在对话领域,词重叠匹配过于严格,而基于词向量嵌入的方法以一种较“软”方式来衡量句子的之间的相似度,因此效果更好。
无参考回复的评测方法 s_U 和人工打分得相关性明显高于 s_R,该结果表明单独的问题也是富含信息的,并且负采样对于训练评测网络是有用的,尽管它不需要作为标签的人类注释。此外,在无参考回复的评测方法中,基于神经网络的评测方法优于基于词向量余弦相似度的方法,这是因为余弦值衡量的是浅层次的相似度,而问题与回复之间丰富的语义关系需要更复杂的机制去捕获,如神经网络。
我们将 s_U 和 s_R 两种评价方法合并为最终 RUBER。实验结果表明,max 策略(选择两者中较大值)显得过于宽松,其性能略逊于其他策略。选择较小的值(min)和取平均值(几何或算术平均)产生类似的结果,虽然最优性能在两个对话模型中不一致,但它们明显优于单个评测方法,这显示了在开放域对话系统中使用混合评测方法的合理性。
此外,我们进一步注意到 RUBER 评测方法与人工评价之间的相关性和人工评价的平均自相关性(人工评价的一致性)是可比拟的。更重要的是,RUBER 中涉及的评测方法都是启发式、无监督的,它比现有的基于监督学习的评测方法更为灵活,并且可以更好地扩展到不同的数据集。
参考文献
.
.
.
[6]. Chin-Yew Lin. 2004. ROUGE: A package for automatic evaluation of summaries. In Text Summarization Branches out: Proceedings of the ACL-04 Workshop. pages 74–81. .
.
.
.
.
新服务
一直以来,想做这么一件事情,就是帮助更多好的paper展示给更多的人,让更多优秀的工作被更广泛的人关注。那么,如果你觉得你的paper还不错,希望可以和更多优秀的人得到更广泛的交流,那么请发送以下的内容给我们:
-
paper题目
-
paper链接(可查看全文)
-
paper自评(中文,150-200字)
-
作者基本信息
-
联系方式(邮箱或,用于反馈结果)
我们会有专业的同学来审核你的工作,一经通过,即会发布在 PaperWeekly 的每周 paper 推荐中,如果你的工作引起大家热议的话,我们还将邀请你和感兴趣的读者们进行在线交流互动。
以下是一个示例:
-
Dialog Context Language Modeling with Recurrent Neural Networks
-
https://arxiv.org/abs/1701.04056
-
-
Bing Liu, CMU PhD, PaperWeekly Chatbot组写作人员
如果你觉得自己的工作不错,请通过PaperWeekly微信公众号后台留言,或发送邮件至mcgrady150318@gmail.com和我们取得联系。
来源:paperweekly