对于绝大多数的机器学习问题,尤其是预测问题和隐变量模型(latent factor model)中,学习到数据集背后所服从的分布往往是模型所要解决的最终问题。在变分推断(variational inference)等领域中,往往会先从一个简单的分布引入,比如高斯分布或者多项式分布等;希望由这个简单的分布模型能不断学习进而逼近最终想要的、符合数据背后规律的分布,注意这时候的分布往往可能在形状上与初始假设的分布有所差异。

KL散度和JS散度

在学习Wasserstein距离,首先回顾在机器学习算法中,衡量两个分布相似程度的指标常常是KL散度(Kullback-Leibler Divergence)以及JS散度 (Jensen-Shannon Divergence)。

KL散度

KL散度描述的是,评价训练所得的概率分布p与目标分布q之间的距离,可以表示为

机器学习的算法最终的目的是缩小的值,可以看到当的时候,KL散度处处为0,达到最优结果。

但同时必须注意的是,由于KL散度中,对数项中p(x)与q(x)相对位置的关系,决定了KL散度其实是非对称的,即。从物理学参考系的角度可以直观感受出,如果要想评价两个物体(分布)的相似程度,相似程度的值(比如KL散度)应该不能因为选取的参考目标(目标分布)的不同而改变。

JS散度

既然KL散度不具备对称性,那么依然从参考系的角度出发,那我们直接把所有参考系下计算的距离平均即可(在本文环境下只有目标分布和预测分布两个参考系)。这样便是JS散度的思想,具体的定义为

因而JS散度便有了对称性,并且形式上更为平滑,更适合作为最后最大似然的函数,这点在生成对抗网络(GAN)的损失函数取得了不错的成绩。

Wasserstein距离

Wasserstein距离也叫做推土机距离(Earth Mover's distance),这也是由于它的推导过程可以很形象的用挖土填土来解释,这也是因为该距离定义中由一个分布转变为另一个分布所需要的代价和挖土填土的过程十分相似。考虑两个离散的分布P和Q

为了让两个分布相同,我们一个个变量地观察,

  • *为了让P1和Q1相同,我们需要P1把手头上的3分2到P2去,这样P1和Q1都等于1,此时P2=4,其他数保持不变,这个过程是不是十分像挖掉P1的土填到P2上~
  • 为了让P2和Q2相同,我们也要做类似的挖土填土工作,但注意,此时P2手头上由P1填的2,因此现在P2是4,但是Q2依然是2,因而P2也要挖2分土给P3,保持和Q2一样。
  • P3和Q3也是一样,但此时P3为3,Q3为4,因为我们只能先挖土再填土,因此要Q3挖1分土给Q4,这样P4和Q4也能够一样。

每一步的代价计算公式为,第0步我们规定为0,故有

所以最终的总代价,也即Wasserstein距离则为

该挖土填土的过程可以由下图表示

图片来源:From GAN to WGAN

https://lilianweng.github.io/lil-log/2017/08/20/from-GAN-to-WGAN.html#kullbackleibler-and-jensenshannon-divergence​lilianweng.github.io

分布P变成分布Q所需的“挖土填土”过程

由离散情况理解了距离计算以后,针对一般的连续分布,Wasserstein距离则变成如下形式

其中inf指代最大下界, 表示的是分布pr和pg中所有可能的联合分布,每一个联合分布都是之前提到的“土”,用于刻画连续空间中分布间转换的代价,更具体而言, 刻画从x点转移到y点从而让x,y服从相同分布所需要的“土”的百分比。因此$\gamma$的边缘分布可以表示为

当我们将x作为我们的起始点,y作为我们要逼近的终点时,挖土填土的总量即为,也即上文离散情况下计算的代价,而点与点之间的距离则为||x-y||,因而总代价为

总代价最后可以使用EM等方法求得最小值。

为什么Wasserstein距离比KL/JS散度更好

一言蔽之,即使在低纬度且分布间没用重合的时候,Wasserstein距离的值依然能提供有用的信息。

考虑分布P和Q

画出图像则为

当theta不为0的时候,P和Q没有重合部分

时,

当 的时候,P,Q两个分布完全重合,此时这三种距离度量方式均为0。可以看出KL散度在两个分布完全没有任何交集的时候会得出无穷的结果,而JS散度则会有突然的阶跃,并且在0点出不可微,只有Wasserstein距离能够提供更为平滑的结果用于梯度下降法的参数更新。不过值得一提的是,目前主流的分布距离度量依然是KL散度,这是由于KL散度的计算方式简单,计算成本较Wasserstein低,但今年来Wasserstein距离的近似Sinkhorn distance以及其他加快距离计算方法的论文也在不断涌现。

参考  Wasserstein距离 - 云+社区 - 腾讯云

Wasserstein距离相关推荐

  1. 当支持向量机遇上神经网络:这项研究揭示了SVM、GAN、Wasserstein距离之间的关系...

    选自arXiv 作者:Alexia Jolicoeur-Martineau 编辑:小舟.蛋酱 转载自公众号:机器之心 SVM 是机器学习领域的经典算法之一.如果将 SVM 推广到神经网络,会发生什么呢 ...

  2. wasserstein距离_EMD(earth mover#x27;s distances)距离

    对于离散的概率分布,Wasserstein距离也被描述为推土距离(EMD).如果我们将分布想象为两个有一定存土量的土堆,那么EMD就是将一个土堆 转换 为另一个土堆所需的最小总工作量.工作量的定义是 ...

  3. 使用Wasserstein距离鉴别器的无监督图对齐

    来源:专知本文为论文,建议阅读5分钟 图对齐的目的是识别跨多个图的节点对应,这在各个领域具有重要意义. 图对齐的目的是识别跨多个图的节点对应,这在各个领域具有重要意义.由于监督信息往往是不可获取的,无 ...

  4. EMNLP 2020 | 基于Wasserstein距离的正则化序列表示

    ©PaperWeekly 原创 · 作者|金金 单位|阿里巴巴研究实习生 研究方向|推荐系统 论文标题: Wasserstein Distance Regularized Sequence Repre ...

  5. WGAN的成功,可能跟Wasserstein距离没啥关系

    ©PaperWeekly 原创 · 作者|苏剑林 单位|追一科技 研究方向|NLP.神经网络 WGAN,即 Wasserstein GAN,算是 GAN 史上一个比较重要的理论突破结果,它将 GAN ...

  6. 从Wasserstein距离、对偶理论到WGAN

    作者丨苏剑林 单位丨广州火焰信息科技有限公司 研究方向丨NLP,神经网络 个人主页丨kexue.fm 2017 年的时候笔者曾写过互怼的艺术:从零直达WGAN-GP,从一个相对通俗的角度来介绍了 WG ...

  7. Wasserstein距离在生成模型中的应用

    作者丨黄若孜 学校丨复旦大学软件学院硕士生 研究方向丨推荐系统 前言 本文是关于 Wasserstein 距离在生成模型中的应用的一个总结,第一部分讲 Wasserstein 距离的定义和性质,第二部 ...

  8. 信息量、信息熵、交叉熵、KL散度、JS散度、Wasserstein距离

    前两篇介绍了目标检测中的回归损失函数,本来这篇打算介绍目标检测中的分类损失函数.但是介绍classification loss function自然绕不过交叉熵,所以还是简单的把信息论中的一些概念在这 ...

  9. GANs之信息量、信息熵、交叉熵、KL散度、JS散度、Wasserstein距离

    信息量也叫做香农信息量,常用于刻画消除随机变量X在x处的不确定性所需的信息量大小.假设只考虑连续型随机变量的情况,设p为随机变量X的概率分布,即p(x)为随机变量X在X=x处的概率密度函数值,随机变量 ...

  10. Wasserstein距离 和 Lipschitz连续

    EMD(earth mover distance)距离: 在计算机科学与技术中,地球移动距离(EMD)是一种在D区域两个概率分布距离的度量,就是被熟知的Wasserstein度量标准.不正式的说,如果 ...

最新文章

  1. 拒绝加班,办公电脑换新低至¥1999
  2. 如何将sql查询出的结果,用符号隔开
  3. 【LeetCode】Recursion(共11题)
  4. 全球与中国植物基液压油市场供需预测及未来发展展望报告2022-2028年版
  5. php大文件上传失败的原因及解决方法
  6. iOS NSString中字符串的删除,替换
  7. poj 1860 bellman 求正环
  8. IS-IS详解(十)——IS-IS 骨干区域与非骨干区域访问进阶
  9. cad隐藏图层命令快捷键_这10个原生CAD图层管理命令,让你画图飞起来!
  10. ccc加拿大计算机竞赛在线评测系统,加拿大CCC计算机竞赛
  11. 牛客练习赛47 D DongDong坐飞机 (分层最短路)
  12. CSS 伪类 after 右侧线
  13. 批量ping指定端口,批量测试IP地址是否通
  14. 睡眠是锁定计算机怎么设置密码,笔记本电脑如何设置睡眠唤醒密码?
  15. 解决安卓11崩溃率高的问题
  16. 高维空间最近邻逼近搜索算法评测
  17. eNSP 路由器配置-静态路由和缺省路由
  18. MRI预处理-去颅骨
  19. addEventListener 的event事件列表
  20. 计算机考研只考一门“软件工程”的院校汇总

热门文章

  1. PCL--PCL基础
  2. 【Week 1】Preferences and Ratings
  3. HTTP略显不足 IPFS/FIL异军突起 未来可期
  4. 以数据为中心的云计算——阿里云OS浅谈
  5. 独立站SaaS建站模式是什么
  6. 163手机登录邮箱显示服务器无法登录,163邮箱登陆不了_为何无法正常登录邮箱 ?...
  7. matlab设置固定的窗宽窗位,如何设定窗宽窗位,附正常人体组织CT值
  8. 关于微信异常烦人自动生成的聊天记录截图视频
  9. 向量的加减(运算符重载)
  10. java项目远程调用别的项目接口