提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档
前言
本文是作者在学习SeqGAN时,对于GAN在序列任务上问题的具体分析。 通过阅读GAN相关的研究资料,整理了如下问题
提示:以下是本篇文章正文内容,下面案例可供参考
一、Exposure Bias
在Bengio等人在2015年的论文中提到的暴露偏差问题,那么在了解什么是Exposure Bias,需要知道其出现的原因。 这具体表现在RNN的训练过程的两种策略,free running和teacher forcing。 Free running是训练中把上一个节点的输出当成下一个节点的输入,但这会使得训练过程变慢,而且由于输入结果依赖于上一个节点的输出,如果发生偏差,会导致后续学习效果变差。
而Tearcher forcing就是针对上面的问题,做出调整,使每个节点的输入都是句子的实际输出或者是基于数据集的最大期望输出,这使得tearcher forcing依赖于Ground Truth。这在没有Ground Truth的测试集上表现并不好。 正如上面叙述,Free running在训练过程中由节点输出和真实不同产生的偏差,导致后序序列产生错误传播的问题便是Exposure Bias问题。
二、现有方法
1.Scheduled Sampling
如1中所述,Tearcher forcing虽然可以一定程度上避免Exposure Bias,但也产生了新的问题,即在无Ground Truth时效果很差。为了解决这个问题,Bengio等人又提出了一种新的训练策略----scheduled sampling,翻译过来就是有计划采样。具体表现为: 模型初始设定一个p,p代表RNN训练中Tearcher forcing所占的比率,范围[0,1],p的初始值较高,表明训练之初,对Ground Truth较大,但随着时间推移,p的值会慢慢衰减,使得模型减少对Ground Truth的依赖。 这个方法可以一定程度上缓解Ground Truth依赖问题。
2.评价指标
另外有一部分人发现另一种可以解决Ground Truth依赖问题,便是设置一种新的损失函数,这其中最为人所熟知的便是Papineni等人在2002年提出bilingual evaluation understudy (BLEU),引入的长度惩罚因子乘上最后的评分。 但是这种方法在很多文本生成任务上不适用。
三、GAN的应用
根据上述问题的展开,我们发现GAN的网络结构似乎可以缓解上述问题。但同时GAN在应用在文本上仍存在两大难题。 过往GAN在图像上取得成功,但是图像和文本的数据表示存在很大区分度,图像的数据是连续的,这使得如果输入发生变化,输出是能够感知这类变化。而文本表示是离散的,如果输入发生细微变化,输出端可能没办法感知。使得loss为0,模型无法进行训练。 GAN的评估往往是在句子生成完之后进行评估,而通过对1产生的原因剖析,我们发现对非完整序列的评估同样重要。
总结
通过叙述SeqGAN产生的来龙去脉。为之后分析SeqGAN的做好铺垫。
|