From a8a0995edefd437f56b91b95c2628fb031428a08 Mon Sep 17 00:00:00 2001 From: RĂ©mi Flamary Date: Mon, 24 Jul 2017 12:11:34 +0200 Subject: pep8 tests --- test/test_bregman.py | 43 +++++++++++++++++++++++++++++++++++++++++++ test/test_ot.py | 34 ++++++++++++++++++---------------- 2 files changed, 61 insertions(+), 16 deletions(-) create mode 100644 test/test_bregman.py diff --git a/test/test_bregman.py b/test/test_bregman.py new file mode 100644 index 0000000..fd2c972 --- /dev/null +++ b/test/test_bregman.py @@ -0,0 +1,43 @@ + + +import ot +import numpy as np + +# import pytest + + +def test_sinkhorn(): + # test sinkhorn + n = 100 + np.random.seed(0) + + x = np.random.randn(n, 2) + u = ot.utils.unif(n) + + M = ot.dist(x, x) + + G = ot.sinkhorn(u, u, M, 1, stopThr=1e-10) + + # check constratints + assert np.allclose(u, G.sum(1), atol=1e-05) # cf convergence sinkhorn + assert np.allclose(u, G.sum(0), atol=1e-05) # cf convergence sinkhorn + + +def test_sinkhorn_variants(): + # test sinkhorn + n = 100 + np.random.seed(0) + + x = np.random.randn(n, 2) + u = ot.utils.unif(n) + + M = ot.dist(x, x) + + G0 = ot.sinkhorn(u, u, M, 1, method='sinkhorn', stopThr=1e-10) + Gs = ot.sinkhorn(u, u, M, 1, method='sinkhorn_stabilized', stopThr=1e-10) + Ges = ot.sinkhorn( + u, u, M, 1, method='sinkhorn_epsilon_scaling', stopThr=1e-10) + + # check constratints + assert np.allclose(G0, Gs, atol=1e-05) + assert np.allclose(G0, Ges, atol=1e-05) diff --git a/test/test_ot.py b/test/test_ot.py index b69d080..9103ac8 100644 --- a/test/test_ot.py +++ b/test/test_ot.py @@ -36,7 +36,8 @@ def test_emd_emd2(): # check loss=0 assert np.allclose(w, 0) - + + def test_emd2_multi(): from ot.datasets import get_1D_gauss as gauss @@ -72,11 +73,11 @@ def test_emd2_multi(): emdn = ot.emd2(a, b, M) ot.toc('multi proc : {} s') - assert np.allclose(emd1, emdn) - - + assert np.allclose(emd1, emdn) + + def test_sinkhorn(): - # test sinkhorn + # test sinkhorn n = 100 np.random.seed(0) @@ -85,14 +86,15 @@ def test_sinkhorn(): M = ot.dist(x, x) - G = ot.sinkhorn(u, u, M,1,stopThr=1e-10) + G = ot.sinkhorn(u, u, M, 1, stopThr=1e-10) # check constratints - assert np.allclose(u, G.sum(1), atol=1e-05) # cf convergence sinkhorn - assert np.allclose(u, G.sum(0), atol=1e-05) # cf convergence sinkhorn - + assert np.allclose(u, G.sum(1), atol=1e-05) # cf convergence sinkhorn + assert np.allclose(u, G.sum(0), atol=1e-05) # cf convergence sinkhorn + + def test_sinkhorn_variants(): - # test sinkhorn + # test sinkhorn n = 100 np.random.seed(0) @@ -101,11 +103,11 @@ def test_sinkhorn_variants(): M = ot.dist(x, x) - G0 = ot.sinkhorn(u, u, M,1, method='sinkhorn',stopThr=1e-10) - Gs = ot.sinkhorn(u, u, M,1, method='sinkhorn_stabilized',stopThr=1e-10) - Ges = ot.sinkhorn(u, u, M,1, method='sinkhorn_epsilon_scaling',stopThr=1e-10) + G0 = ot.sinkhorn(u, u, M, 1, method='sinkhorn', stopThr=1e-10) + Gs = ot.sinkhorn(u, u, M, 1, method='sinkhorn_stabilized', stopThr=1e-10) + Ges = ot.sinkhorn( + u, u, M, 1, method='sinkhorn_epsilon_scaling', stopThr=1e-10) # check constratints - assert np.allclose(G0, Gs, atol=1e-05) - assert np.allclose(G0, Ges, atol=1e-05) # - + assert np.allclose(G0, Gs, atol=1e-05) + assert np.allclose(G0, Ges, atol=1e-05) -- cgit v1.2.3