https://blog.csdn.net/nockinonheavensdoor/article/details/82055147

注明:直观理解而已,正儿八经的严谨证明看最下面的参考。

Earth Mover’s Distance

推土机距离的例子:有一堆土的分布是 PrPr, 其随机变量是xx,现在要求把这堆土挪动成为分布 PgPg ,其随机变量是yy(图上是PθPθ),这样做的方法很多,那么做最小功的挪动该是什么?这是一个优化问题对应着的最优解是:

这里Π(Pr,Pg)Π(Pr,Pg) 表示的是边缘分布是PrPr 和 PgPg 的联合分布(Pr,Pg)(Pr,Pg) 集合,即 ∑xγ(x,y)=Pr(y)∑xγ(x,y)=Pr(y) ,∑yγ(x,y)=Pθ(x)∑yγ(x,y)=Pθ(x).

γ∈Π(Pr,Pθ)γ∈Π(Pr,Pθ), 求解(x,y)(x,y)服从联合分布γγ 时,关于||x−y||||x−y||的期望,所有的解中最小的期望便是推土机距离。

直观的测度论
测度论提供了一些集合的特征,用来描述适用于RnRn空间的大多数点。
零测度:零测度集合在我们的度量空间中不占有任何的体积。比如二维空间中的一条直线的测度是0。

高维空间的低维子空间
高维空间中的很多点是多余的,真实数据蜷缩在低维子空间的流形上(即高维曲面),因为维度低,所占空间体积几乎为0,所以原始的GANs存在的问题是生成器的生成数据广泛分布在高维空间中,侦测不到真实数据,KL距离始终是log2,所以对生成器的梯度始终是0,怎么训练也没用。

Wasserstein距离的对偶式

相当于找到一个函数 ff 求(3)的最大目标函数。这个函数满足∥f∥L≤1‖f‖L≤1, 1-Lipschitz 函数。
参考:https://www.zhihu.com/question/41752299
:https://vincentherrmann.github.io/blog/wasserstein/
:《深度学习》《hulu百面》
---------------------
作者:NockinOnHeavensDoor
来源:CSDN
原文:https://blog.csdn.net/nockinonheavensdoor/article/details/82055147
版权声明:本文为博主原创文章,转载请附上博文链接!

wasserstein 距离的更多相关文章

  1. KL散度、JS散度、Wasserstein距离

    1. KL散度 KL散度又称为相对熵,信息散度,信息增益.KL散度是是两个概率分布 $P$ 和 $Q$  之间差别的非对称性的度量. KL散度是用来 度量使用基于 $Q$ 的编码来编码来自 $P$ 的 ...

  2. Wasserstein距离 和 Lipschitz连续

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

  3. 【深度学习】K-L 散度,JS散度,Wasserstein距离

    度量两个分布之间的差异 (一)K-L 散度 K-L 散度在信息系统中称为相对熵,可以用来量化两种概率分布 P 和 Q 之间的差异,它是非对称性的度量.在概率学和统计学上,我们经常会使用一种更简单的.近 ...

  4. PyTorch 实战:计算 Wasserstein 距离

    PyTorch 实战:计算 Wasserstein 距离 2019-09-23 18:42:56 This blog is copied from: https://mp.weixin.qq.com/ ...

  5. Wasserstein距离

    https://blog.csdn.net/leviopku/article/details/81388306 https://blog.csdn.net/nockinonheavensdoor/ar ...

  6. 不要怂,就是GAN (生成式对抗网络) (六):Wasserstein GAN(WGAN) TensorFlow 代码

    先来梳理一下我们之前所写的代码,原始的生成对抗网络,所要优化的目标函数为: 此目标函数可以分为两部分来看: ①固定生成器 G,优化判别器 D, 则上式可以写成如下形式: 可以转化为最小化形式: 我们编 ...

  7. 概率分布之间的距离度量以及python实现(四)

    1.f 散度(f-divergence) KL-divergence 的坏处在于它是无界的.事实上KL-divergence 属于更广泛的 f-divergence 中的一种. 如果P和Q被定义成空间 ...

  8. Generative Adversarial Nets[Wasserstein GAN]

    本文来自<Wasserstein GAN>,时间线为2017年1月,本文可以算得上是GAN发展的一个里程碑文献了,其解决了以往GAN训练困难,结果不稳定等问题. 1 引言 本文主要思考的是 ...

  9. Wasserstein CNN: Learning Invariant Features for NIR-VIS Face Recognition

    承接上上篇博客,在其基础上,加入了Wasserstein distance和correlation prior .其他相关工作.网络细节(maxout operator).训练方式和数据处理等基本和前 ...

随机推荐

  1. day15-函数进阶

    1.函数嵌套 多个函数嵌套在一起即为函数嵌套 在调用函数时,函数需在调用之前定义,如果函数在调用之后才定义,则不能被成功调用.当定义多个函数时,函数名称不能相同,否则后定义的函数会将之前的函数覆盖,即 ...

  2. virtual 初探

    两种代码方式: class person { public: void f() { cout << "person.f()" << endl; } }; c ...

  3. ACM__01背包,完全背包,多重背包

    今天写题的时候碰到了一道完全背包题,可是没有看出来,乱写了一通,浪费了一个晚上,顺便复习一下背包的知识 01背包 每种物品只能选择一次或者不选,求背包容量内的最大价值 先给出状态转移方程: f[i][ ...

  4. centos7,进程最大打开文件数 too many open files错误

    遇到一问题,tomcat最近发生几次异常,查看日志,发现一直报 too many open files,熟悉的同学都知道这是用户打开文件数过多导致的, 再用命令ls /proc/20861/fd/ | ...

  5. Linux学习笔记--vim

    Vim是从 vi 发展出来的一个文本编辑器.代码补完.编译及错误跳转等方便编程的功能特别丰富,在程序员中被广泛使用. vim的三种模式 命令模式(Command mode),输入模式(Insert m ...

  6. [PHP]更新中间关联表数据的两种思路

    ---------------------------------------------------------------------------------------------------- ...

  7. Hibernate学习笔记2.1(Hibernate基础配置)

    Hibernate基础配置 1.<property name="hbm2ddl.auto">update</property> 在SessionFactor ...

  8. 学JS的心路历程-JS支持面向对象?(一)

    昨天在看Prototype看到JS支持面向对象,被前辈问到说那什么是面向对象?JS是面向对象语言吗? 便开始了一连串艰辛爬文过程,今天就来看一下两者有什么差异吧(rgwyjc)! 首先面向对象有三大特 ...

  9. 历届试题 买不到的数目-(dp)

    问题描述 小明开了一家糖果店.他别出心裁:把水果糖包成4颗一包和7颗一包的两种.糖果不能拆包卖. 小朋友来买糖的时候,他就用这两种包装来组合.当然有些糖果数目是无法组合出来的,比如要买 10 颗糖. ...

  10. CSS 边框图像

    border-image border-image 可以将图像应用到盒子的边框上. border-image 属性需要3个值同时存在: URL 图片的地址 切割图片的位,4个边需要写4个值 如何处理边 ...