首页 热点专区 小学知识 中学知识 出国留学 考研考公
您的当前位置:首页正文

DP-GAN解读

2024-12-13 来源:要发发知识网

DP-GAN指的是Diversity-Promoting GAN(而不是另外一篇论文里提出的Differentially Private GAN ),论文的标题是Diversity-Promoting GAN: A Cross-Entropy Based Generative Adversarial Network for Diversified Text Generation,发表于EMNLP 2018。

主要亮点

Reward

显然reward也需要重新定义一番,作者提出了两种reward:局部的word-level reward和全局的sentence-level reward

Word-level reward有点像是当前状态的immediate reward,可以直接根据当前的词来给出,采用的是language model的cross entropy输出:

Cross entropy的定义原本是这样的:

这里把ground-truth概率t都视为1,所以得到这样的公式。

不过这里reward的取值意义是越大越好,因此导致language model的输出概率尽可能小(与原本的cross-entropy loss正相反),这样一来就保证了用词的novelty。

至于sentence-level reward,则是简单地对整个句子的word-level reward取平均值:

这里对比一下SeqGAN的reward:

后者简单地以Discriminator判定句子为真的概率作为reward,带来的问题是,reward的值域只在0到1之间,而Discriminator很容易被训练到一个较高的精度,真实的文本往往得到非常接近1的reward,即使它们的novelty有所差异,这也无法反映在reward上,类似的问题也出现在生成的文本上。

下面是一个直观的对比图:

相比之下,DP-GAN的sentence-level reward对文本novelty的反映就准确得多。

一个完整句子的reward是上述两类reward的结合:


训练

类似于SeqGAN,DP-GAN Generator的目标函数同样是最大化期望的reward:

这里的Q值以“当前句子在以

作为第一个词的情况下所期望取得的reward”作为估计值,其中的计算过程论文并没有清楚地阐述出来,与师兄讨论了一番后,我们都认为应该还是需要用到类似Monte Carlo search的方法来模拟一个完整的序列出来,就如SeqGAN采用的方法一样。

小结

1.  DP-GAN和SeqGAN都采用了“GAN+RL”的模式,这套方法论让人看到把GAN应用到序列问题上的无穷潜力,同时,应用到这些问题上的具体公式也加深了我对强化学习进一步的理解。

2. DP-GAN创新性地对Discriminator进行了改进,不再局限于把Discriminator当做一个二元分类器,而且可以直接给出单个词的reward。

显示全文