summaryrefslogtreecommitdiff
path: root/ot/gromov/__init__.py
diff options
context:
space:
mode:
authorCédric Vincent-Cuaz <cedvincentcuaz@gmail.com>2023-03-09 14:21:33 +0100
committerGitHub <noreply@github.com>2023-03-09 14:21:33 +0100
commita5930d3b3a446bf860d6dfacc1e17151fae1dd1d (patch)
tree3897f88fae95c25314be3976f30285bc4db14494 /ot/gromov/__init__.py
parent263a36ff627257422d7e191f6882fb1c8fc68326 (diff)
[MRG] Semi-relaxed (fused) gromov-wasserstein divergence and improvements of gromov-wasserstein solvers (#431)
* maj gw/ srgw/ generic cg solver * correct pep8 on current state * fix bug previous tests * fix pep8 * fix bug srGW constC in loss and gradient * fix doc html * fix doc html * start updating test_optim.py * update tests gromov and optim - plus fix gromov dependencies * add symmetry feature to entropic gw * add symmetry feature to entropic gw * add exemple for sr(F)GW matchings * small stuff * remove (reg,M) from line-search/ complete srgw tests with backend * remove backend repetitions / rename fG to costG/ fix innerlog to True * fix pep8 * take comments into account / new nx parameters still to test * factor (f)gw2 + test new backend parameters in ot.gromov + harmonize stopping criterions * split gromov.py in ot/gromov/ + update test_gromov with helper_backend functions * manual documentaion gromov * remove circular autosummary * trying stuff * debug documentation * alphabetic ordering of module * merge into branch * add note in entropic gw solvers --------- Co-authored-by: Rémi Flamary <remi.flamary@gmail.com>
Diffstat (limited to 'ot/gromov/__init__.py')
-rw-r--r--ot/gromov/__init__.py48
1 files changed, 48 insertions, 0 deletions
diff --git a/ot/gromov/__init__.py b/ot/gromov/__init__.py
new file mode 100644
index 0000000..6184edf
--- /dev/null
+++ b/ot/gromov/__init__.py
@@ -0,0 +1,48 @@
+# -*- coding: utf-8 -*-
+"""
+Solvers related to Gromov-Wasserstein problems.
+
+"""
+
+# Author: Remi Flamary <remi.flamary@unice.fr>
+# Cedric Vincent-Cuaz <cedvincentcuaz@gmail.com>
+#
+# License: MIT License
+
+# All submodules and packages
+from ._utils import (init_matrix, tensor_product, gwloss, gwggrad,
+ update_square_loss, update_kl_loss,
+ init_matrix_semirelaxed)
+from ._gw import (gromov_wasserstein, gromov_wasserstein2,
+ fused_gromov_wasserstein, fused_gromov_wasserstein2,
+ solve_gromov_linesearch, gromov_barycenters, fgw_barycenters,
+ update_structure_matrix, update_feature_matrix)
+from ._bregman import (entropic_gromov_wasserstein,
+ entropic_gromov_wasserstein2,
+ entropic_gromov_barycenters)
+from ._estimators import (GW_distance_estimation, pointwise_gromov_wasserstein,
+ sampled_gromov_wasserstein)
+from ._semirelaxed import (semirelaxed_gromov_wasserstein,
+ semirelaxed_gromov_wasserstein2,
+ semirelaxed_fused_gromov_wasserstein,
+ semirelaxed_fused_gromov_wasserstein2,
+ solve_semirelaxed_gromov_linesearch)
+from ._dictionary import (gromov_wasserstein_dictionary_learning,
+ gromov_wasserstein_linear_unmixing,
+ fused_gromov_wasserstein_dictionary_learning,
+ fused_gromov_wasserstein_linear_unmixing)
+
+
+__all__ = ['init_matrix', 'tensor_product', 'gwloss', 'gwggrad',
+ 'update_square_loss', 'update_kl_loss', 'init_matrix_semirelaxed',
+ 'gromov_wasserstein', 'gromov_wasserstein2', 'fused_gromov_wasserstein',
+ 'fused_gromov_wasserstein2', 'solve_gromov_linesearch', 'gromov_barycenters',
+ 'fgw_barycenters', 'update_structure_matrix', 'update_feature_matrix',
+ 'entropic_gromov_wasserstein', 'entropic_gromov_wasserstein2',
+ 'entropic_gromov_barycenters', 'GW_distance_estimation',
+ 'pointwise_gromov_wasserstein', 'sampled_gromov_wasserstein',
+ 'semirelaxed_gromov_wasserstein', 'semirelaxed_gromov_wasserstein2',
+ 'semirelaxed_fused_gromov_wasserstein', 'semirelaxed_fused_gromov_wasserstein2',
+ 'solve_semirelaxed_gromov_linesearch', 'gromov_wasserstein_dictionary_learning',
+ 'gromov_wasserstein_linear_unmixing', 'fused_gromov_wasserstein_dictionary_learning',
+ 'fused_gromov_wasserstein_linear_unmixing']