fGAN 对GAN理论的深度理解 @Aiken 2021 onenote部分的拓展编写,到时候拷过去,整合在一起。
fGAN: 不只是JS-Div散度,我们可以将所有的散度都应用到GANs的框架中。该部分的阅读是对GAN的基本理论最重要的文章之一。
基本理论体系和推演 首先给出fGAN中提出的基本理论:可以将所有的Div放入GANs的框架中,来做那个核心的关键演化判别指标:
$$ D_{f}(P||Q) = \int_xq(x)f(\frac{p(x)}{q(x)}dx) $$ 上述公式将衡量P和Q两个分布之间的差距,公式中的 $f$ 可以是很多不同的版本,但是要求满足如下的两个条件:
是一个凸函数; $f(\frac{(x1+x2)}{2})\leq \frac{[f(x1)+f(x2)]}{2}$ ,需要注意国内外的凹凸相反 $f(1)=0$ 。 而我们知道 $q(x)$ 是概率密度分布函数,实际上可以看成凸函数性质的推广,所以我们可以证得:
$$ D_{f}(P||Q) = \int_xq(x)f(\frac{p(x)}{q(x)}dx) \geq f(\int q(x) \frac{p(x)}{q(x)} dx) = f(1) = 0 $$ 显然当我们取得合适的f,KL( $f(x) = xlog(x)$ ); ReverseKL( $-log(x)$ );chi square ( $f(x) = (x-1)^2$ );
Fenchel Conjugate共轭 补充Fenchel共轭的知识来对后续的fGAN推导进行补充,定理内容如下:
每个凸函数都有一个对应的共轭函数读作 $f^*(x)$
$$ f^*(x) = \max \limits_{x\in dom(f)} xt - f(x) $$ t是给定的,对于所有的变量t, $xt-f(x)$ 对应了无数条直线:
...