一、导读
本期:
在对话模型上学习带有指导的Discourse level的多样性
机构:
卡耐基梅隆大学-语言技术研究所
GitHub:
https://github.com/snakeztc/NeuralDialog-CVAE
二、Motivation
常见的神经encoder-decoder模型在建模开放域对话 (open-domain conversations) 时常常会生成乏味枯燥的常见的回答(e.g., I don’t know)。
为了解决这个问题,本文提出了一个新的架构,基于CVAE (conditional variational autoencoders) 来捕获 encoder 端 discourse-level 的多样性。
为了发现模型可能存在的潜在的回答,我们使用潜在变量 (latent variable) 对潜在回答的分布式 embedding的概率分布建模,如图1。
三、贡献
本文的三个贡献:
- CVAE: 提出一个新的引入CVAE改进的神经对话模型
- kgCVAE: 提出Knowledge-Guided CVAE ,kgCVAE,集成知识提高模型的效果&可解释性。
- BOWLOSS: 提出一个新的训练方法 bag-of-word-loss 解决了使用CVAE生成自然语言时存在的问题(Bowman et al., 2015)。
四、Related Work
1 Encoder-decoder Dialog Models
一部分工作希望可以输入更多更丰富的上下文信息:
- 编码背景信息和说话风格(Li et al., (2016a) )
- 编码主题信息(Xing et al., (2016))
另一部分工作希望改进 encoder-decoder models 的架构:
- 加入互信息损失(Li et al,. (2015) )
- 引入search-based loss(Wiseman and Rush (2016) )
- 引入强化学习
2 Conditional VAE
VAE(Kingma and Welling, 2013) 是图像生成中比较流行的。CVAE是 VAE的一种变体,能够根据某些属性生成不同的图像 (Yan et al., 2015; Sohn et al., 2015).
VAE / CVAE在图像生成方面取得了很好的结果,但将其与自然语言相结合的过程中存在着问题vanishing latent variable problem.Serban et al., (2016b)
五、baseline
下图(a)所示为baseline model,一个普通的encoder-decoder模型:
- U:输入的对话语句(utterances)
- U下方的01: 标记该语句和回答X是否来自同一个发言人,是1, 否0
- meta:meta features (e.g. topic).
六、三个贡献
1 CVAE
本处理解困难或者没有CVAE基础的童鞋可以先阅读这篇:条件变分自编码器(CVAE)
或者自行阅读相关论文