Hello,
Thanks a lot for your great librairy !
We are trying to compute the transportation cost with Geomloss and we obtain inconsitent results when compared with ot. We want to use non uniforme weight with a custom cost function. Maybe you could help us to spot the error ?
OT
import numpy as np
import ot.gpu as otgpu
size = 10000
weight = np.random.rand(size)
D_1 = weight / np.linalg.norm(weight, 1)
M = np.random.rand(size,size)
X =otgpu.sinkhorn(D_1,D_2,M_cupy, reg=0.05)
transportation_cost = np.sum(np.multiply(X,M))
Hey, I had the same issue when playing with the library for early tests of one of my papers. The regularisation param does not have the same meaning in pot and geomloss (reg = blur^p).
Hello, Thanks a lot for your great librairy ! We are trying to compute the transportation cost with Geomloss and we obtain inconsitent results when compared with ot. We want to use non uniforme weight with a custom cost function. Maybe you could help us to spot the error ?
OT
We have transportation_cost=0.05004567861659549
Geomloss
We obtain loss=tensor(0.0150, device='cuda:0', dtype=torch.float64)
Are we missing something ?
Thanks a lot for your time. Cheers