计算点质量集合之间的2-Wasserstein距离

时间:2018-08-27 18:22:41

标签: python distance transport

是否存在用于计算两个点质量集合之间的2-Wasserstein距离的软件包(例如,Python,R,Matlab,C ++),其中每个点都是一个d维向量? 在这里,d >= 2作为d = 1的情况以封闭形式提供。

我只能找到用于计算Python optimal transport library中的1-Wasserstein距离(即地球行者的距离)的软件包,但无法找到 2-Wasserstein距离。

1 个答案:

答案 0 :(得分:0)

我不确定这是否是您所需要的,但是我看了scipy.stats.wasserstein的源代码。他们在后台调用scipy.stats._cdf_distance,并传递参数p,其中

  

p是一个正参数; p = 1给出Wasserstein距离,p = 2   给出能量距离。

scipy.stats.energy_distance

在文档字符串中为_cdf_distance表示的公式看起来与您所需的相似:

l_p(u, v) = \left( \int_{-\infty}^{+\infty} |U-V|^p \right)^{1/p}