最优传输系列是基于Computational Optimal Transport开源书的读书笔记
Sinkhorn算法
在上一篇里,我们介绍了加入熵正则化的最优传输问题–熵正则化通过限制最优传输问题解的复杂度,可以以大幅降低的复杂度得到最优传输问题的近似解。
不过,熵正则化仍然是一个概念,需要一个有效的算法,才能够释放它的潜力。
所以,在这一篇里,我们探索实际应用中十分常见的Sinkhorn算法。
得到Sinkhorn算法的第一步在于换一种方式表达正则化后的问题
正则化后的Kantorovich问题的解可以写为以下形式(4.12):
∀ ( i , j ) ∈ [ n ] × [ m ] , P i , j = u i K i , j v j \forall(i, j) \in[n] \times[m], \quad \mathbf{P}_{i, j}=\mathbf{u}_{i} \mathbf{K}_{i, j} \mathbf{v}_{j} ∀(i,j)∈[n]×[m],Pi,j=uiKi,jvj
这里 K i , j = e − C i , j / ε \mathbf{K}_{i, j}=e^{-\mathbf{C}_{i, j} / \varepsilon} Ki,j=e−Ci,j/ε