adversarial evaluation of Dialogue models- 类似gan的思路来做对话评测

        • 常用的评价方法
        • 本文思想
        • model
        • Experiment
        • 分析
        • 小总结

文章链接:Adversarial Evaluation of Dialogue Models

常用的评价方法:

  • perplexity:从fit层面,但是不能评估在具体任务中的表现
  • N-gram,BLEU:在翻译任务中比较好,不适用于对话
  • human evaluation:不完全可行。

本文思想:

通过一个回答能被判别出是人的回答还是模型的回答的程度来评估模型的好坏
  • generator:生成回答
  • discriminator:给定义一个message和一个response,判别是人的回答还是generator的生成。

model

corpus:message pairs(o, r)
o: {o1,o2,...,on} 表示原始的信息
r: {r1,,r2,...,rm} 表示response

generator

o,rlogP(r1,...,rm|o1,...,on)

discriminator
o,r,ylogP(y|o1,...,on,r1,...,rm)

y=1表示从training data中sample的结果

Experiment

数据用的是邮件的回复对话,一半真实数据,discriminator分值为1,另一半是generator的生成数据,discriminator的分值为0。

分析

discriminator和generator所倾向于依赖的特征是不同的。

  • discriminator强烈的依赖于长度特性。先前已经有文档表明seq2seq模型是有length bias。虽然它过于依赖长度特性,但是也不是啥坏事儿,起码表明了它能注意到一些人类之前指出的模型生成结果的弱点。

  • 当长度相等时:discriminator中的rank和generator不一样,平均spearman系数为-0.2【spearman系数是啥O_o】discriminator更倾向于去选择那些不常见的词。同上,虽然生成回复的多样性是现有模型的一个常见缺点,但是discriminator更倾向于选择少见的回复,并不代表这样就是一个好的结果。

小总结

文章很短,只是一个关于discriminator是否能用在对话评测的一个常识,有很多问题依然待探索。

P.S. 这篇文章太短了其实没必要写这个博客,主要是为了熟悉markdown的编辑器。用着蛮爽的,哈哈。

你可能感兴趣的:(NLP-理论)