summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2023-06-14Merge tag '0.9.0' into dfsg/latestdfsg/latestGard Spreemann
2023-04-07[MRG] Release 0.9.0 (#452)Rémi Flamary
* relkase text * correct typos
2023-03-24[MRG] Remove copy of hidden folder in doc deploy (#450)Rémi Flamary
* cleanup deploy and remove hidden folder
2023-03-24[WIP] Build donc in GH Action and report warnings + move contributing and ↵Rémi Flamary
code of conduct in documentation (#441) * use action for doc with wraning visible * remove space * remove space again * test pre commands * install pot properly * install compiler... * try composite action * remoe warning in sliced exmaple * pep8 * move contributing and code of conduct * cleanup * underline too short * update quickstart * replace version selector by static list to avoid jsQuery bug
2023-03-22[MRG] CO-Optimal Transport solver (#447)Huy Tran
* Allow warmstart in sinkhorn and sinkhorn_log * Added argument for warmstart of dual vectors in Sinkhorn-based methods in * Add the number of the PR * [WIP] CO-Optimal Transport * Revert "[WIP] CO-Optimal Transport" This reverts commit f3d36b2705013409ac69b346585e311bc25fcfb7. * reformat with PEP8 * Fix W291 trailing whitespace error in pep8 test * Rearange position of warmstart argument and edit its description * Implementation of CO-Optimal Transport * Optimize code and edit documentation * fix backend bug in test cases * fix backend bug * fix backend bug * Add examples on COOT * Modify API and edit example * Edit API * minor edit of examples and release * fix bug in coot * fix doc examples * more fix of doc * restart CI * reordering ref * add more tests * add more tests * add test verbose * fix PEP8 bug * fix PEP8 bug * fix PEP8 bug * fix pytest bug * edit doc for better display --------- Co-authored-by: Rémi Flamary <remi.flamary@gmail.com> Co-authored-by: Alexandre Gramfort <agramfort@fb.com>
2023-03-21[MRG] Make partial_wasserstein, partial_wasserstein2 and ↵Antoine Collas
entropic_partial_wasserstein work with backend (#449) * add test of partial_wasserstein with torch tensors * WIP: differentiable ot.partial.partial_wasserstein * change test of torch partial * make partial_wasserstein2 work with torch * test backward through ot.partial.partial_wasserstein2 * add test of entropic_partial_wasserstein with torch tensors * make entropic_partial_wasserstein work with torch tensors * add test of backward through entropic_partial_wasserstein * rm unused import * test partial_wasserstein with all backends * tests of partial fcts: check if torch is available * partial: check if marginals are empty arrays * add tests when marginals are empty arrays and/or m=None * add PR to RELEASES.md --------- Co-authored-by: Antoine Collas <22830806+antoinecollas@users.noreply.github.com> Co-authored-by: Rémi Flamary <remi.flamary@gmail.com>
2023-03-21[MRG] Remove redundant abs() (#448)Lin Hsu
* Remove redundant abs() * Update RELEASES.md
2023-03-16[MRG] fix bugs of gw_entropic and armijo to run on gpu (#446)Cédric Vincent-Cuaz
* 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 * fix exemples/gromov doc * add fixed issue to releases.md * fix bugs of gw_entropic and armijo to run on gpu * add pr to releases.md * fix pep8 * fix call to backend in line_search_armijo * correct docstring generic_conditional_gradient --------- Co-authored-by: Rémi Flamary <remi.flamary@gmail.com>
2023-03-10[WIP] Fix gromov examples gallery (#444)Cédric Vincent-Cuaz
* 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 * fix exemples/gromov doc * add fixed issue to releases.md --------- Co-authored-by: Rémi Flamary <remi.flamary@gmail.com>
2023-03-09[MRG] Semi-relaxed (fused) gromov-wasserstein divergence and improvements of ↵Cédric Vincent-Cuaz
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>
2023-03-09[MRG] Update pymanopt requirement and API for `ot.dr` (#443)Rémi Flamary
* updayte pymanopt API step 1 * add realease information * update requireents for tests on windows
2023-02-28[MRG] Add method argument to sinkhorn Transport (#440)tgnassou
* add method argument to sinkhron transport' * update release
2023-02-23[MRG] Added argument for warmstart of dual vectors in Sinkhorn-based methods ↵Huy Tran
in `ot.bregman` (#437) * Allow warmstart in sinkhorn and sinkhorn_log * Added argument for warmstart of dual vectors in Sinkhorn-based methods in * Add the number of the PR * [WIP] CO-Optimal Transport * Revert "[WIP] CO-Optimal Transport" This reverts commit f3d36b2705013409ac69b346585e311bc25fcfb7. * reformat with PEP8 * Fix W291 trailing whitespace error in pep8 test * Rearange position of warmstart argument and edit its description --------- Co-authored-by: Rémi Flamary <remi.flamary@gmail.com>
2023-02-23[WIP] Wasserstein distance on the circle and Spherical Sliced-Wasserstein (#434)Clément Bonet
* W circle + SSW * Tests + Example SSW_1 * Example Wasserstein Circle + Tests * Wasserstein on the circle wrt Unif * Example SSW unif * pep8 * np.linalg.qr for numpy < 1.22 by batch + add python3.11 to tests * np qr * rm test python 3.11 * update names, tests, backend transpose * Comment error batchs * semidiscrete_wasserstein2_unif_circle example * torch permute method instead of torch.permute for previous versions * update comments and doc * doc wasserstein circle model as [0,1[ * Added ot.utils.get_coordinate_circle to get coordinates on the circle in turn
2023-01-16[MRG] OT for Gaussian distributions (#428)tgnassou
* add gaussian modules * add gaussian modules * add PR to release.md * Apply suggestions from code review Co-authored-by: Alexandre Gramfort <alexandre.gramfort@m4x.org> * Apply suggestions from code review Co-authored-by: Alexandre Gramfort <alexandre.gramfort@m4x.org> * Update ot/gaussian.py * Update ot/gaussian.py * add empirical bures wassertsein distance, fix docstring and test * update to fit with new networkx API * add test for jax et tf" * fix test * fix test? * add empirical_bures_wasserstein_mapping * fix docs * fix doc * fix docstring * add tgnassou to contributors * add more coverage for gaussian.py * add deprecated function * fix doc math" " * fix doc math" " * add remi flamary to authors of gaussiansmodule * fix equation Co-authored-by: Rémi Flamary <remi.flamary@gmail.com> Co-authored-by: Alexandre Gramfort <alexandre.gramfort@m4x.org>
2022-12-23[MRG] Fix warning bug in sinkhorn2 (#417)arincbulgur
* Pass warn argument downstream in sinkhorn2 method. * releases.md * Fix unittest. Co-authored-by: Rémi Flamary <remi.flamary@gmail.com>
2022-12-21[MRG] Fix#421 pass stopThr to the sinkhorn function in ↵Théo Lacombe
empirical_sinkhorn_divergence (#422) * fix stopThr hardcoded in some places * added fix documentation in RELEASES.Md Co-authored-by: Rémi Flamary <remi.flamary@gmail.com>
2022-12-20[MRG] Change Doc empirical_sinkhorn_div to reflect what is computed (#423)Théo Lacombe
* Changes empirical_sinkhorn_divergence doc to mention that the entroipc term is not taken into account. * change typo regularization->contribution Co-authored-by: Rémi Flamary <remi.flamary@gmail.com>
2022-12-20[MRG] Gromov barycenter example bug (#425)Nathan Cassereau
* bug solve * releases.md
2022-12-16[MRG] Change the number of projection to match the predefined case (#419)Titouan Vayer
2022-12-15[MRG] New API for OT solver (with pre-computed ground cost matrix) (#388)Rémi Flamary
* new API for OT solver * use itertools for product of parameters * add tests for result class * add tests for result class * add tests for result class last time? * add sinkhorn * make partial OT bckend compatible * add TV as unbalanced flavor * better tests * make smoth backend compatible and add l2 tregularizatio to solve * add reularizedd unbalanced * add test for more complex attibutes * add test for more complex attibutes * add generic unbalaned solver and implement it for ot.solve * add entropy to possible regularization * star of documentation for ot.solv * weird new pep8 * documenttaion for function ot.solve done * pep8 * Update ot/solvers.py Co-authored-by: Alexandre Gramfort <alexandre.gramfort@m4x.org> * update release file * Apply suggestions from code review Co-authored-by: Alexandre Gramfort <alexandre.gramfort@m4x.org> * add test NotImplemented * pep8 * pep8gcmp pep8! * compute kl in backend * debug tensorflow kl backend Co-authored-by: Alexandre Gramfort <alexandre.gramfort@m4x.org>
2022-12-06[MRG] Fix bug in regularized OTDA l1lp with log (#413)Rémi Flamary
* correct bug in DA l1lp with log * better tests and speedup with smaller dataset size * remove jax for log test * remove trndorflow for log test * pep8!
2022-12-03[MRG] Wrong documentation in weak OT solver (#410)Nathan Cassereau
* Docstrings of weak.py updated * releases.md
2022-11-21[MRG] Replaces numpy compiler with setuptools (#409)Nathan Cassereau
* Numpy ccompiler deprecation handled with setuptools ccompiler * Remove useless OMP Macro, already provides _OPENMP * RELEASES.md * Remove forgotten temporary bug added for logging purposes
2022-09-27[MRG] Crash when computing weightless Hamming distance & Doc build (#402)Nathan Cassereau
* Bug solve * Releases.md updated * pep8 * attempt to solve docs building bug * releases.md
2022-09-12update docstring of ot.gromov.init_matrix (#398)decarpentierg
Co-authored-by: Gonzague de Carpentier <decarpentierg@gmail.com>
2022-08-18[MRG] Proper subsections in gallery (#395)Rémi Flamary
* add option for preper subsections * cleanup dodecov ignore * cleanup dodecov ignore
2022-08-17[MRG] Debug sinkhorn divergence bug and add proper test (#394)Rémi Flamary
* skip tets if not torch installed * update release.md
2022-08-17debug sinkhorn divergence gradientsRémi Flamary
2022-08-01[MRG] Solve example throwing an error when executed on a GPU (#391)Nathan Cassereau
* Solve example throwing an error when executed on a GPU * add PR to releases.md * update pep8 command * pep8
2022-07-27[MRG] Free support Sinkhorn barycenters (#387)Eduardo Fernandes Montesuma
* Adding function for computing Sinkhorn Free Support barycenters * Adding exampel on Free Support Sinkhorn Barycenter * Fixing typo on free support sinkhorn barycenter example * Adding info on new Free Support Barycenter solver * Removing extra line so that code follows pep8 * Fixing issues with pep8 in example * Correcting issues with pep8 standards * Adding tests for free support sinkhorn barycenter * Adding section on Sinkhorn barycenter to the example * Changing distributions for the Sinkhorn barycenter example * Removing file that should not be on the last commit * Adding PR number to REALEASES.md * Adding new contributors * Update CONTRIBUTORS.md Co-authored-by: Rémi Flamary <remi.flamary@gmail.com>
2022-06-21[MRG] raise error if mass mismatch in emd2 (#386)clecoz
* Two lines added in the function emd2 to ensure that the distributions have the same mass (same as it already was in the function emd). * The same mass test has been moved inside the function f(b) to be compatible with emd2 with multiple b. * Test added. The function test_emd_dimension_and_mass_mismatch (in test/test_ot.py) has been modified to check for mass mismatch with emd2. * Add PR in releases.md * Merge and add PR in releases.md * Add name in contributors.md * Correction contribution in contributors.md * Move test on mass outside of functions f(b) * Update doc of emd and emd2 Co-authored-by: Camille Le Coz <clecoz@camelot.ipsl.polytechnique.fr> Co-authored-by: Rémi Flamary <remi.flamary@gmail.com>
2022-06-13[MRG] Correct pointer overflow in EMD (#381)Nathan Cassereau
* avoid overflow on openmp version of emd solver * monothread version updated * Fixed typo in readme * added PR in releases * typo in releases.md * added a precision to releases.md * added a precision to releases.md * correct readme * forgot to cast * lower error
2022-06-01[MRG] numItermax in 64 bits in EMD solver (#380)Nathan Cassereau
* Correct test_mm_convergence for cupy * Fix bug where number of iterations is limited to 2^31 * Update RELEASES.md * Replace size_t with long long * Use uint64_t instead of long long
2022-05-16[MRG] dist: check metric is a string before calling a str method (#379)Zachary Kurtz
2022-05-13remove calls to cerr (#377)Jay Stanley
typo in releases
2022-05-11[WIP] Graphical tweaks for GWB + fixed seed method for the partial gromov ↵eloitanguy
test (#376) * GWB first solver version * tests + example for gwb (untested) + free_bar doc fix * improved doc, fixed minor bugs, better example visu * minor doc + visu fixes * plot GWB pep8 fix * fixed partial gromov test reproductibility * added an animation for the GWB visu * added PR num * minor doc fixes + better gwb logo * GWB graphical tweaks + better seed method for partial gromov test * fixed PR number * refixed seed issue * seed fix fix fix Co-authored-by: Rémi Flamary <remi.flamary@gmail.com>
2022-05-09[MRG] Fix barycenter mass (#375)Hicham Janati
* fix transpose in sinkhorn barycenters * add test for assymetric cost barycenters * fix pep8 Co-authored-by: Hicham Janati <hicham.janati@inria.fr>
2022-05-06[MRG] Torch random generator not working for Cuda tensor (#373)Nathan Cassereau
* Solve bug * Update release file
2022-05-06[WIP] Generalized Wasserstein Barycenters (#372)eloitanguy
* GWB first solver version * tests + example for gwb (untested) + free_bar doc fix * improved doc, fixed minor bugs, better example visu * minor doc + visu fixes * plot GWB pep8 fix * fixed partial gromov test reproductibility * added an animation for the GWB visu * added PR num * minor doc fixes + better gwb logo
2022-04-27Merge tag '0.8.2' into dfsg/latestGard Spreemann
2022-04-21[MRG] Release 8.2 (#365)Rémi Flamary
* release text and number * add examples in release fil build wheels * switch gallery to release * add much needed contributors file * debug circleci * une line of logos * working logo * back to stable sphinx galery
2022-04-11[MRG] Center gradients for mass of emd2 and gw2 (#363)Rémi Flamary
* center gradients for mass of emd2 and gw2 * debug fgw gradient * debug fgw
2022-04-11[MRG] MM algorithms for UOT (#362)Laetitia Chapel
* bugfix * update refs partial OT * fixes small typos in plot_partial_wass_and_gromov * fix small bugs in partial.py * update README * pep8 bugfix * modif doctest * fix bugtests * update on test_partial and test on the numerical precision on ot/partial * resolve merge pb * Delete partial.py * update unbalanced: mm algo+plot * update unbalanced: mm algo+plot * update unbalanced: mm algo+plot * update unbalanced: mm algo+plot * update unbalanced: mm algo+plot * add test mm algo unbalanced OT * add test mm algo unbalanced OT * add test mm algo unbalanced OT * add test mm algo unbalanced OT * add test mm algo unbalanced OT * add test mm algo unbalanced OT * add test mm algo unbalanced OT * add test mm algo unbalanced OT * update unbalanced: mm algo+plot * update unbalanced: mm algo+plot * update releases.md with new MM UOT algorithms Co-authored-by: Rémi Flamary <remi.flamary@gmail.com>
2022-04-07[MRG] Remove deprecated ot.gpu submodule (#361)Rémi Flamary
* remove all cpu submodule and tests * speedup tests gromov
2022-04-05[MRG] Update examples in the doc (#359)Rémi Flamary
* add transparent color logo * add transparent color logo * move screenkhorn * move stochastic and install ffmpeg on circleci * try something * add sudo * install ffmpeg before python * cleanup examples * test svg scrapper * add animation for reg path * better example OT sivergence * update ttles and add plots * update free support * proper figure indexes * have less frame sin animation * update readme and release file * add tests for python 3.10
2022-04-04[WIP] Add backend dual loss and plan computation for stochastic optimization ↵Rémi Flamary
or regularized OT (#360) * add losses and plan computations and exmaple for dual oiptimization * pep8 * add nice exmaple * update awesome example stochasti dual * add all tests * pep8 + speedup exmaple * add release info
2022-03-24[MRG] Add factored coupling (#358)Rémi Flamary
* add gfactored ot * pep8 and add doc * add exmaple for factotred OT * final number of PR * correct test on backends * remove useless loss * better tests
2022-03-24[MRG] Domain adaptation and unbalanced solvers with backend support (#343)Nathan Cassereau
* First draft * Add matrix inverse and square root to backend * Eigen decomposition for older versions of pytorch (1.8.1 and older) * Corrected eigen decomposition for pytorch 1.8.1 and older * Spectral theorem is a thing * Optimization * small optimization * More functions converted * pep8 * remove a warning and prepare torch meshgrid for future torch release (which will change default indexing) * dots and pep8 * Meshgrid corrected for older version and prepared for future versions changes * New backend functions * Base transport * LinearTransport * All transport classes + pep8 * PR added to release file * Jcpot barycenter test * unbalanced with backend * pep8 * bug solve * test of domain adaptation with backends * solve bug for tic toc & macos * solving scipy deprecation warning * solving scipy deprecation warning attempt2 * solving scipy deprecation warning attempt3 * A warning is triggered when a float->int conversion is detected * bug solve * docs * release file updated * Better handling of float->int conversion in EMD * Corrected test for is_floating_point * docs * release file updated * cupy does not allow implicit cast * fromnumpy * added test * test da tf jax * test unbalanced with no provided histogram * using type_as argument in unif function correctly * pep8 * transport plan cast in emd changed behaviour, now trying to cast as histogram's dtype, defaulting to cost matrix Co-authored-by: Rémi Flamary <remi.flamary@gmail.com>
2022-03-18[MRG] Add logo to POT (#357)Rémi Flamary
* add logo code and logo to doc * update release file