Kernel MMDs, Optimal Transport

Thanks to its support of the Sum and LogSumExp reductions, KeOps is perfectly suited to the large-scale computation of Kernel norms and Sinkhorn divergences. Going further, the block-sparse routines allow us to implement genuine coarse-to-fine strategies that scale (almost) linearly with the number of samples, as advocated in (Schmitzer, 2016).

Relying on the KeOps routines generic_sum() and generic_logsumexp(), the GeomLoss library provides Geometric Loss functions as simple PyTorch layers, with a fully-fledged gallery of examples. Implemented on the GPU for the very first time, these routines outperform the standard Sinkhorn algorithm by a factor 50-100 and redefine the state-of-the-art for discrete Optimal Transport: on modern hardware, Wasserstein distances between clouds of 100,000 points can now be computed in less than a second.