李宏毅GAN笔记三fGAN

二中提到,原始GAN存在JS Div距离偏差问题,由此需要限制训练次数。这里我们想表达“任何Div(统称为f-Div)都可放入GAN架构”。

1.f-Div定义:

李宏毅GAN笔记三fGAN
重点:f(x)满足:f为凸函数且f(1)=0
以f-Div衡量P,Q的不同。二者完全一致,f-Div=0;不同,大于等于零。
f(x)不同,f-Div为不同Div。
李宏毅GAN笔记三fGAN

2.Fenchel共轭(Fenchel Conjugate)李宏毅GAN笔记三fGAN

含义:固定t,穷举所有x,使xt-f(x)最大。
有两种表示方式:
1.直接按定义李宏毅GAN笔记三fGAN
2.数形结合,固定x,改变t,绘制以t为自变量的直线。李宏毅GAN笔记三fGAN
此时,给定t,看看哪个x可取最大值。

3.f-Div GAN

转换关系式:
李宏毅GAN笔记三fGAN
代入f-div定义式李宏毅GAN笔记三fGAN李宏毅GAN笔记三fGAN
t替换为D(x)及=换位大于等于原因:给定x,找到t使式子最大。替换后,式子一定小,不会超过还未知的最大值。要不然式子等于含x,t的函数关于x的积分,t的存在导致求不出一个有具体意义的式子。
李宏毅GAN笔记三fGAN
t到D(x),将散度表示为期望。
而生成器*生的数据分布PG与真实数据分布Pdata差异应尽量小,即训练生成器的目的:
最小化???????? (????????????????????||????????) 。(也就是G*)
最后一行的V(G,D)不一定是原生GAN。f-Div GAN是对GAN模型的统一,对任意满足条件的f(凸函数,f(1)=0)都可构造对应GAN,G最小化散度就是最小化期望。所以,f-GAN告诉我们,任何Div都可放入GAN。
其余Div Function李宏毅GAN笔记三fGAN

4.意义

使用散度不同,可能会导致生成数据出现问题。
问题一:Mode Dropping
李宏毅GAN笔记三fGAN
生成样本只集中于某一群。
问题二:Mode Collapse
生成数据中出现大量相似度极高的数据。
李宏毅GAN笔记三fGAN

出现原因:选择的Div不好。若更换Div仍无效,就是其他原因。
也可以训练多个G,就可以产生不同的图片,避免Mode Collapse。
李宏毅GAN笔记三fGAN
左图Mode Collapse 右图Mode Dropping