本文参考 Lilian Weng的文章《From GAN to WGAN》From GAN to WGAN主要针对文中所提到的Wasserstein距离展开,做一些笔记与大家分享。
对于绝大多数的机器学习问题,尤其是预测问题和隐变量模型(latent factor model)中,学习到数据集背后所服从的分布往往是模型所要解决的最终问题。在变分推断(variational inference)等领域中,往往会先从一个简单的分布引入,比如高斯分布或者多项式分布等;希望由这个简单的分布模型能不断学习进而逼近最终想要的、符合数据背后规律的分布,注意这时候的分布往往可能在形状上与初始假设的分布有所差异。
KL散度和JS散度
在学习Wasserstein距离,首先回顾在机器学习算法中,衡量两个分布相似程度的指标常常是KL散度(Kullback-Leibler Divergence)以及JS散度 (Jensen-Shannon Divergence)。
KL散度
KL散度描述的是,评价训练所得的概率分布p与目标分布q之间的距离,可以表示为
![equation?tex=D_%7BKL%7D%28p%7C%7Cq%29%3D%5Cint_%7Bx%7Dp%28x%29log%5Cfrac%7Bp%28x%29%7D%7Bq%28x%29%7Ddx](https://i-blog.csdnimg.cn/blog_migrate/1c6c112e8bc97f763cf0b1a1cc60816b.png)
机器学习的算法最终的目的是缩小
![equation?tex=D_%7BKL%7D](https://i-blog.csdnimg.cn/blog_migrate/c74e9eb9f473687ded2528234c931923.png)
![equation?tex=p%28x%29%3D%3Dq%28x%29](https://i-blog.csdnimg.cn/blog_migrate/cdfc073b2e05e29ae4b3c685635b3727.png)
但同时必须注意的是,由于KL散度中,对数项中p(x)与q(x)相对位置的关系,决定了KL散度其实是非对称的,即
![equation?tex=D_%7BKL%7D%28p%7C%7Cq%29+%5Cneq+D_%7BKL%7D%28q%7C%7Cp%29](https://i-blog.csdnimg.cn/blog_migrate/c74e9eb9f473687ded2528234c931923.png%28p%7C%7Cq%29+%5Cneq+D_%7BKL%7D%28q%7C%7Cp%29)
JS散度
既然KL散度不具备对称性,那么依然从参考系的角度出发,那我们直接把所有参考系下计算的距离平均即可(在本文环境下只有目标分布和预测分布两个参考系)。这样便是JS散度的思想,具体的定义为