前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >RUBER:一种无监督对话系统回复质量的评价方法

RUBER:一种无监督对话系统回复质量的评价方法

作者头像
CodeInHand
发布2018-06-07 11:53:02
1.1K0
发布2018-06-07 11:53:02
举报
文章被收录于专栏:Pytorch实践

对于对话系统的回复质量评价,一直没有很好的方法。之前的文章写过一些评价指标,例如BLEU、PPL、Distinct、ROUGE等。这些指标给出的评估结果与人工评价得出的结果相差很大,并且也不相关。本文介绍一种无监督(不需要标记语料)的回复质量评价方法。


回复的好坏有几个维度:

(1)与问题或对话的话题相关;

(2)与该问题的已有回复相似、不能有太大偏差;

(3)不能有太多的通用性回复,例如“好的”、“是的”。


RUBER,很好地解决了上述三个问题。RUBER,全称“Referenced metric and Unreferenced metric Blended Evaluation Routine”。是一种有参考和无参考的相结合的度量。

  • 有参考的度量

有参考的度量,是参考了问题已有的人工回复答案,使用人工回复作为参考对机器回复的质量进行判断。主要用于度量上述(2)中的问题,就是判断与已有答案的相似性。相似性怎么衡量,数学中最简单的方法就是余弦距离。得到机器回复句子的向量表达和人工回复的句子的向量表达,算余弦距离即可,余弦值越大距离越近,两个句子越相似。

  1. 获取句子的向量表示

假设句子S中有N个词,分别表示为w1,w2,...,wN。每个词语通过对话模型的embedding层有一个向量表示,可以理解为word2vec的向量表示。设向量维度为d。因此句子S可以表示为d*N的矩阵,第i列表示句子中第i个词语对应的词向量。对每行分别取max-pooling和min-pooling,得到两组d维的向量Xmax, Xmin。二者拼接得到2d维度的向量即为该句子S的向量表示。

  1. 余弦距离计算

分别按照1中方法计算得到机器回复和人工回复的向量表示Vr/Vr'.余弦距离的计算公式可以表示为:

有参考的度量即表示为SR

  • 无参考的度量

无参考的度量,是不需要人工回复的答案,判断回复内容与问题本身是否相关。这里是建立人工神经网络模型进行的。模型结构如下图所示。从对话模型训练语料做为该度量模型的训练语料。Query与对应的Reply作为一个Pair,分别使用双向GRU进行建模得到句子表达。然后随机采样得到负例,负例就是当前Query对应抽取的其它Query的Reply结果。正例的模型输出为1,负例的模型输出为0,类似于训练word2vec时使用的negative sampling方法。

需要说明的是图中句子建模后得到的特征中不仅仅是Query和Reply的向量拼接,而是增加了一个新的特征:xMy这样的双向性变化,用于度量Query和Reply共有的信息。再将组合特征输入到全连接层和Sigmoid函数的激活层输出Query与Reply的相关概率大小。模型输出SU即为无参考度量值。

  • 结合的度量

特征组合,首先分别将SR和SU度量值进行归一化,然后再将归一化的特征进行结合。

  1. 归一化

归一化是经常使用的方法,用于将不同度量空间的数值进行归一化后可以统一整理。具体如下:

  1. 度量组合

将归一化后的度量值,可以取平均、取最大值、取最小值、算术平均、几何平均等。根据实际任务选择。


RUBER将回复相关性、与正确答案的相似性进行了整合考虑。但是依然没能解决好回复多样性的判断问题。如果大量回复中出现通用性质的回复,还是不能很好地度量当前问答系统的好坏。但至少给定的方法能够起到一定的作用,比较综合,相比较其它指标值算overlap的要好很多。


参考文献

[1] Tao C, Mou L, Zhao D, et al. RUBER: An Unsupervised Method for Automatic Evaluation of Open-Domain Dialog Systems[J]. 2017.

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2018-05-05,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 CodeInHand 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
腾讯智能对话平台
腾讯智能对话平台(Tencent Bot Platform,TBP)专注于“对话即服务”的愿景,全面开放腾讯对话系统核心技术,为大型企业客户、开发者和生态合作伙伴提供开发平台和机器人中间件能力,实现便捷、低成本构建人机对话体验和高效、多样化赋能行业。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档