COT系列是基于Computational Optimal Transport开源书的读书笔记
第一章-Introduction
最优传输(Optimal Transport)关键的一点是,要考虑怎样把多个数据点同时从一个空间映射到另一个空间上去,而不是只考虑一个数据点。
这里借用书中一个形象例子:把一堆沙子里的每一铲都对应到一个沙雕上的一铲沙子,怎么搬沙子最省力气,这就是个最优传输问题(注:这里“省力气”等于是cost function,现实中当然有很多不同的cost function来得到不同特点的传输)。
很明显能够看出最优传输和机器学习之间千丝万缕的关系,比如GAN本质上就是从输入的空间映射到生成样本的空间。
这是很短的一章,剩下的主要都是further reading,感兴趣可以去看这些有关文献,在这里就不多解释了。
第二章
2.1-2.2
几个重要的notation:
/:measure
a/b:measure中每个元素的weight/probability
x/y:measure中的元素(具体值)
这里给出了蒙日(Monge)问题的定义:找出从一个 measure到另一个measure的映射,使得所有的和最小。当然c是个cost function,根据具体应用定义。
这里的映射一定需要surjective(onto),也就是说上每个元素都至少又一个。
接近结尾时,书中介绍了 push-forward operator ,作为一个Radon measure到另一个Radon measure的传输。Radon measure也就是一个空间上所有measure的集合。也可以看为是普通map T的延伸:T把一个measure里的一个点映射到另一个measure上,那么就把一个空间中的所有measure都映射到另外一个空间里去
2.3 Kantorovich relaxation
Kantorovich relaxation可以说是原本蒙日问题的一个延伸
蒙日问题的原本定义中,一个measure中的每个元素都要对应到另一个measure的一个元素上,导致这个定义只能用来分析同等大小的measure (也就是说只能比较和最优化permutation)
于是就有了kantorovich relaxation,用来比较不同大小的measure
这里“relaxation”可以帮助记忆,因为kantorovich本质上就是把原本的蒙日问题定义变得更加宽松了
kantorovich里,一个measure里的元素通过mass-splitting,可以对应到目标Measure里的多个元素
也就是说kantorovich 的传输可以用一个矩阵来表示,代表到的质量传输大小
每个传输仍然需要保证质量守恒(eq. 2.10)
于是eq. 2.11给出了最优传输问题用kantorovich的定义:
这里U是从a到b的所有可能传输P的集合,而P就是当前的传输
C仍然是cost matrix
Remark 2.10是个现实例子,有助于理解
当然原本的蒙日问题是kantorovich的一个特例,也就是说kantorovich是包含原本问题的
结尾时书中提起了Discrete,Semi-discrete,和Continuous三种映射
第五章全部都在讲Semi-discrete,也就是从一个continuous measure映射到discrete measure。(注:现实中很多算法都是用continuous方程来模拟现实中的discrete example)