[NLG] Domain Adaptive Dialog Generation via Meta Learning

总述:

这篇文章貌似就是把end2end模式的dialogue system套了一层maml的更新方式,然后在few-shot领域上的效果比之前赵天成的ZSDG效果要好。感觉思路很清新也很简单,不知道是不是我没看懂QAQ总之要看懂这篇论文,首先得看下Sequicity 和 MaMl

模型:

        首先介绍一下maml的主要思想:maml就是说有多个domain的数据a1,a2,a3,a4.然后普通的深度学习就是根据a1反向传播计算一个梯度a1' 然后更新网络,然后在a1'的基础上依次根据a2来更新得到a2'再得到a3',a4'。但是maml有点不同,分别从原始的网络只根据a1更新得到a1',只根据a2更新得到a2’,只根据a3得到a3',然后在a1'的基础上,再用a1的数据得到a1'', 同样可以得到a2'',a3'',等等。最后将ai''累加起来得到了一个梯度,用这个梯度对最开始的那个网络进行更新就好了。这样就可以学到不同domain a1,a2,a3,a4之间的通性,然后应用的新的domain。可以见到,maml实际上是可以套到任何一个序列模型上的,因为他只是一种更新参数的方式,而并不是一种网络结构。

       至于sequicity呢,可以参考一下我的这篇阅读笔记 他本身就是将dialogu system做成了一个end2end的模式,什么事end2end呢,就是从nlu到nlg是一条龙服务,可以从nlg的loss一直求梯度,直到更新到nlu那一层。也就是说是一个序列模型。把对话系统做成序列模型还是挺厉害的了~,既然这个dialogue是序列的,为啥不试试把他套到maml上做一做few-shot呢?果然效果很棒。

[NLG] Domain Adaptive Dialog Generation via Meta Learning_第1张图片

模型存在的问题i:

 1. 对复杂的语句不能很好的理解

2. 在新领域中出现的实体,出现unk问题

一句话总结:

   在end2end模式dialog system 的序列模型上,结合了meta learning的MaMl参数更新方式,实现了few-shot dialog system的最佳效果。

 

你可能感兴趣的:(NLP,对话系统)