前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Paper | ACL2017 对话模型之CVAE的多样性回复

Paper | ACL2017 对话模型之CVAE的多样性回复

作者头像
用户3946442
发布2022-04-11 18:37:38
4750
发布2022-04-11 18:37:38
举报
文章被收录于专栏:程序媛驿站

一、导读

本期:

在对话模型上学习带有指导的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。

三、贡献

本文的三个贡献:

  1. CVAE: 提出一个新的引入CVAE改进的神经对话模型
  2. kgCVAE: 提出Knowledge-Guided CVAE ,kgCVAE,集成知识提高模型的效果&可解释性。
  3. 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)

或者自行阅读相关论文🤭。

在本文所示encoder-decoder+CVAE的模型中,所用到的变量如下:

  • C:编码得到的 dialog context
  • X:模型解码得到的回答
  • Z:CVAE中由高斯采样得到的潜在变量
  • Y:the set of linguistic features as y

模型在训练过程中使用 recognition network qφ(z|x, c) 来近似真实的后验分布 posterior distribution p(z|x, c),损失函数写为:

L(θ, φ; x, c) = −KL(qφ(z|x, c || pθ(z|c))

+ Eqφ(z|c,x)[log pθ(x|z, c)]

≤ log p(x|c)

在生成过程中,首先从 the prior network pθ(z|c) 中采样得到 z,然后使用decoder pθ(x|z,c) 得到回答X。(图 2 (a)):

图2: Graphical models of CVAE (a) and kgCVAE (b)

本处理解困难或者没有CVAE基础的童鞋可以先阅读这篇:条件变分自编码器(CVAE)

或者自行阅读相关论文🤭。

2 Kg-CVAE

过去对对话系统和语篇分析的研究表明,许多语言线索都能捕捉关键特征。在训练过程中,显式的提取话语特征,可以使模型学习有意义的潜在变量z。

因此,为了将语言特征(linguistic features)合并到基本CVAE模型中,我们提出kgCVAE。

首先将语言特征集表示为y。假设x的生成取决于c,z和y。y依赖于z和c,如图2(图 2 (b))。我们将修改后的模型称为知识导向的CVAE(knowledge-guided CVAE, kgCVAE)。

此模型的优点:

  1. 由于y的重建是损失函数的一部分,因此与baseCVAE相比,kgCVAE可以将与y相关的信息更有效地编码为z。
  2. kgCVAE可以输出高级标签(e.g. dialog act)以及word- level的回答,从而可以更轻松地解释模型的输出(可解释性)。

解码器的每个step的输入为cat[et,y],其中et是第t个单词在X中的word emb。

MLPy可基于Z和C来预测y'= MLPy(z,c)。(下图3中蓝色y)

损失函数写为:

L(θ, φ; x, c, y) = −KL(qφ(z|x, c, y)∥Pθ(z|c))

+ Eqφ(z|c,x,y)[log p(x|z, c, y)]

+ Eqφ(z|c,x,y)[log p(y|z, c)]

3 BOW-loss

前文提到的,由于潜在变量消失问题 vanishing latent variable problem (Bowman et al., 2015),使带有RNN解码器的简单VAE/CVAE无法在z中编码有意义的信息。

我们提出了一种简单的技术:bag-of-word loss(BOW-loss)

引入一个额外的loss,要求decoder预测回答X中的词袋(bag-of-words),如图3b所示(黄色部分)。

修改后的带有 bag-of-word loss 的CVAE的变分下界为(kgCVAE参见附录A):

L′(θ,φ;x,c) = L(θ,φ;x,c)

+Eqφ(z|c,x,y)[logp(xbow|z,c)] (6)

七、实验相关

数据集:Switchboard (SW) (Godfrey and Holliman, 1997)

数据集大小:train/validate/test:207, 833/5, 225/5, 481 (c, x) pairs

图5展示出,学习到的潜在空间与dialog act和回答X的长度高度相关,这证实了我们的假设。

Figure 5: t-SNE visualization of the posterior z for test responses with top 8 frequent dialog acts. The size of circle represents the response length.

最后,我们评估了使用RNN解码器训练VAE / CVAE的BOW loss丢失的有效性,比较了四种不同的训练设置:

(1)没有任何启发式的标准VAE;

(2)具有KL annealing(KLA)的VAE;

(3)带BOW loss的VAE;

(4)具有BOW损失和KLA的VAE。

对于所有带有KLA的模型,在前5000 batches中,KL weight从0线性增加到1。

Table 3: The reconstruction perplexity and KL terms on Penn Treebank test set.

表3显示了测试集的重建困惑度和KL cost。KLA有助于改善重建损失,但需要尽早停止,因为在KL权重变为1之后,模型将恢复为标准VAE。最后,具有BOW loss的模型实现了更低的困惑度和更大的KL成本。

八、结论

本文提出了两个新颖的模型,这些模型显示出了在discourse级别上的多样回答的卓越性能。

作者:西柚媛

编辑:西柚媛

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

本文分享自 程序媛驿站 微信公众号,前往查看

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

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

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