大部分的文章讲WGAN都会从GAN开始扯,然后到WGAN这里直接扔出一个公式
![W(P_r,P_g)=\mathop{inf}_{\gamma\in\prod(P_r,P_g) }E_{(x,y)\sim\gamma}[\left \|x-y\right \|]](https://i-blog.csdnimg.cn/blog_migrate/f0131505b2910d7a3128d7ab7c6eef7b.gif)
或者
![W(P_r,P_g)=\mathop{sup}_{\left\|f\right|_L\leq 1}E_{x\sim P_r}[f(x)]-E_{x\sim P_\theta}[f(x)]](https://i-blog.csdnimg.cn/blog_migrate/b647a327f1b20d1ad467b5db43f63dd0.gif)
然后开始讲这就是EM距离,讲的是模拟推土机推土的距离,至于怎么推土的,不好意思,没有。
《从Wasserstein距离、对偶理论到WGAN》这篇文章中讲的是这土是怎么推的,本文内容基于这篇文章,主要工作是根据自身理解情况调整内容顺序,并添加一些个人理解的内容。
1.Wasserstein距离
真正的Wasserstein距离公式实际上是长下面这个样子的:
![\mathcal{W}_{[p,q]}=\mathop{inf}_{\gamma\in\prod_{[p,q]}}\iint{\gamma(x,y)d(x,y)dxdy}](https://i-blog.csdnimg.cn/blog_migrate/fd45ec5d16889716826e0502729c4e02.gif)
其中
表示
服从
的联合分布,
是
的边缘分布,因此有下面的关系成立
和
表示下确界,简单理解就是最小值。
分布
和
的距离。距离可以使用各种形式,最常用的有各种范数,还有余弦距离等等。
边缘分布可以从概率的角度来解释,但在EM距离中通常采用“推土机”推土的比喻,实际上就是将一个分布转换成另一个分布需要做的工作是多少,
表示的就是从x处搬运
到y处所需要的成本,这个成本可以理解为做的功是多少,或者移动的距离是多少,总是会得到一个表示成本的数字,如下图所示:

推土机距离图示:左边p(x)每处的沙土被分为若干部分,然后运输到右端q(x)的同色的位置(或者不动)
因此,可以将
理解为成本(也就是距离),将
理解为搬运的策略,
取最小就得到了最小的搬运成本。
2.从W距离到线性规划
![\mathcal{W}_{[p,q]}=\mathop{inf}_{\gamma\in\prod_{[p,q]}}\iint{\gamma(x,y)d(x,y)dxdy} \qquad\qquad(1)](https://i-blog.csdnimg.cn/blog_migrate/fd45ec5d16889716826e0502729c4e02.gif%20%5Cqquad%5Cqquad%281%29)
公式(1)看起来比较复杂,实际上可以转换成一种更好理解的形式,即有约束的优化问题:
问题1:目标是求

的最小值,其中
是确定的,且需要满足以下约束:

积分只是求和的连续极限形式,因此可以将式(2)写成离散的形式,将
和
离散化,写成很长的向量[1]
本文详细介绍了Wasserstein距离的理论,从定义到线性规划,再到对偶形式的弱对偶和强对偶形式。接着,通过线性规划的对偶问题导出WGAN的优化目标,并讨论了WGAN实现中的关键点,如去掉sigmoid激活、使用RMSProp优化器和权重修剪。最后,提供了Wasserstein距离的代码实现,解析了WGAN中最大化问题转换为最小化问题的技巧。
最低0.47元/天 解锁文章
1772

被折叠的 条评论
为什么被折叠?



