fGAN说的是我们不仅可以用JS divergence,还可以用f divergence。
在这里插入图片描述
f有两个要求:1.凸函数,2.f(1)=0.
在这里插入图片描述
在这里插入图片描述
描绘该函数的一种方法是如上图,遍历所有可能取到的t:t1,t2…带入函数,遍历所有的x,找出使得t1取最大值的函数值;同样地遍历所有x,找出使得t2取最大值的函数值。遍历所有t可以描绘出该函数。

还有更方便一点的方法
在这里插入图片描述
我们可以把xt-f(x)在不同x取值下的函数画出来,取最大值,如上图。可以看出该函数一定是凸函数。
在这里插入图片描述
一个例子
在这里插入图片描述
上图为证明。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
fGAN的厉害之处在于上图的情形。当real data的分布很大,generate data的分布很小的时候,很容易出现一张图片蔓延的情况,看起来像同一张图片。fGAN可以很好的解决这种情况。
在这里插入图片描述
还有一种情形是,real data分布位于两块,而生成的数据只在一部分。

为什么会出现上述两种情形呢?一种远古的猜测是divergence选择的不好
在这里插入图片描述

Logo

技术共进,成长同行——讯飞AI开发者社区

更多推荐