Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
11 changes: 3 additions & 8 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -96,20 +96,15 @@ using the following references from the current version and from our [JMLR
paper](https://jmlr.org/papers/v22/20-451.html):

```
Flamary R., Vincent-Cuaz C., Courty N., Gramfort A., Kachaiev O., Quang Tran H., David L., Bonet C., Cassereau N., Gnassounou T., Tanguy E., Delon J., Collas A., Mazelet S., Chapel L., Kerdoncuff T., Yu X., Feickert M., Krzakala P., Liu T., Fernandes Montesuma E. POT Python Optimal Transport (version 0.9.5). URL: https://github.com/PythonOT/POT
Flamary, R., Vincent-Cuaz, C., Courty, N., Gramfort, A., Kachaiev, O., Quang Tran, H., David, L., Bonet, C., Cassereau, N., Gnassounou, T., Tanguy, E., Delon, J., Collas, A., Mazelet, S., Chapel, L., Kerdoncuff, T., Yu, X., Feickert, M., Krzakala, P., Liu, T., Fernandes Montesuma, E., Neike, N., Genest, B., Coeurjolly, D., & Corneli, M. POT Python Optimal Transport (Version 0.9.7) [Computer software]. https://github.com/PythonOT/POT

Rémi Flamary, Nicolas Courty, Alexandre Gramfort, Mokhtar Z. Alaya, Aurélie Boisbunon, Stanislas Chambon, Laetitia Chapel, Adrien Corenflos, Kilian Fatras, Nemo Fournier, Léo Gautheron, Nathalie T.H. Gayraud, Hicham Janati, Alain Rakotomamonjy, Ievgen Redko, Antoine Rolet, Antony Schutz, Vivien Seguy, Danica J. Sutherland, Romain Tavenard, Alexander Tong, Titouan Vayer, POT Python Optimal Transport library, Journal of Machine Learning Research, 22(78):1−8, 2021. URL: https://pythonot.github.io/
```

In Bibtex format:

```bibtex
@misc{flamary2024pot,
author = {Flamary, R{\'e}mi and Vincent-Cuaz, C{\'e}dric and Courty, Nicolas and Gramfort, Alexandre and Kachaiev, Oleksii and Quang Tran, Huy and David, Laurène and Bonet, Cl{\'e}ment and Cassereau, Nathan and Gnassounou, Th{\'e}o and Tanguy, Eloi and Delon, Julie and Collas, Antoine and Mazelet, Sonia and Chapel, Laetitia and Kerdoncuff, Tanguy and Yu, Xizheng and Feickert, Matthew and Krzakala, Paul and Liu, Tianlin and Fernandes Montesuma, Eduardo},
title = {POT Python Optimal Transport (version 0.9.5)},
url = {https://github.com/PythonOT/POT},
year = {2024}
}
@software{flamary2026pot,author = {Flamary, Rémi and Vincent-Cuaz, Cédric and Courty, Nicolas and Gramfort, Alexandre and Kachaiev, Oleksii and Quang Tran, Huy and David, Laurène and Bonet, Clément and Cassereau, Nathan and Gnassounou, Théo and Tanguy, Eloi and Delon, Julie and Collas, Antoine and Mazelet, Sonia and Chapel, Laetitia and Kerdoncuff, Tanguy and Yu, Xizheng and Feickert, Matthew and Krzakala, Paul and Liu, Tianlin and Fernandes Montesuma, Eduardo and Neike, Nathan and Genest, Baptiste and Coeurjolly, David and Corneli, Marco},license = {MIT},title = {{POT Python Optimal Transport}},url = {https://github.com/PythonOT/POT},version = {0.9.7}}

@article{flamary2021pot,
author = {R{\'e}mi Flamary and Nicolas Courty and Alexandre Gramfort and Mokhtar Z. Alaya and Aur{\'e}lie Boisbunon and Stanislas Chambon and Laetitia Chapel and Adrien Corenflos and Kilian Fatras and Nemo Fournier and L{\'e}o Gautheron and Nathalie T.H. Gayraud and Hicham Janati and Alain Rakotomamonjy and Ievgen Redko and Antoine Rolet and Antony Schutz and Vivien Seguy and Danica J. Sutherland and Romain Tavenard and Alexander Tong and Titouan Vayer},
Expand Down Expand Up @@ -467,4 +462,4 @@ Artificial Intelligence.

[88] Bouveyron, C. & Corneli, M. (2026). [Scaling optimal transport to high-dimensional Gaussian distributions with application to domain adaptation](https://hal.science/hal-04930868v4/file/Article-OT-HDGauss-v4.pdf). Statistics and Computing 36.2 (2026): 88.

[89] Tipping, M.E. & Bishop, C.M. (1999). [Probabilistic principal component analysis]. Journal of the Royal Statistical Society Series B: Statistical Methodology 61.3 (1999): 611-622.
[89] Tipping, M.E. & Bishop, C.M. (1999). [Probabilistic principal component analysis](https://www.cs.columbia.edu/~blei/seminar/2020-representation/readings/TippingBishop1999.pdf). Journal of the Royal Statistical Society Series B: Statistical Methodology 61.3 (1999): 611-622.
13 changes: 11 additions & 2 deletions RELEASES.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,11 +2,19 @@

## 0.9.7

This new release adds support for sparse cost matrices and a new lazy exact OT solver that re-computes distances on-the-fly from coordinates, reducing memory usage from O(n×m) to O(n+m). Both implementations are backend-agnostic and preserve gradient computation for automatic differentiation.
This new release adds support for sparse cost matrices and a new lazy exact OT solver that re-computes distances on-the-fly from coordinates, reducing memory usage from O(n×m) to O(n+m). Both implementations are backend-agnostic and preserve gradient computation for automatic differentiation. Another major feature is the addition of a warmstart feature for the EMD solver, allowing users to provide existing potentials to speed up convergence.

A new solver relying on Binary Space Partitioning (BSP) trees has been added to compute sparse transport plans between discrete measures in loglinear time which allows for very large problems to be solved. The release also includes a new `ot.unbalanced.uot_1d` module with a Frank-Wolfe solver for unbalanced optimal transport in 1D, as well as sliced unbalanced OT solvers in `ot.unbalanced._sliced.py`. Finally we now have a sliced OT plan solver that can be used to compute sliced transport plans (min-pivot sliced and expected sliced) between two measures.

A novel Spectral-Grassmann Wasserstein metric for operator representations of dynamical systems has been implemented in `ot.sgot`, along with a batch FUGW loss in `ot.batch`. A new wrapper for barycenter solvers with free support has been added in `ot.solvers.bary_free_support`.


The release also includes tools for data normalization and scaling which can not be used in sliced Wasserstein distance computations, as well as a numerically stable log-domain solver for entropic partial Wasserstein problems.

The release finally includes several bug fixes and performance improvements, as well as updates to the documentation and examples and tests.

#### New features

- Fix reference number error introduced in PR #767 (PR #819)
- Refactor lazy EMD network simplex storage to avoid dense per-arc cost,
endpoint, flow, and state storage where possible, and return sparse lazy
transport plans instead of materializing dense plans internally (PR #813)
Expand Down Expand Up @@ -57,6 +65,7 @@ This new release adds support for sparse cost matrices and a new lazy exact OT s
- Fix entropic regularization in `gcg`(PR #817, Issue #758)
- Fix documentation build on master with submodules (PR #818)
- Fix failing test for unbalanced solver with generic regularization (PR #824)
- Fix reference number error introduced in PR #767 (PR #819)


## 0.9.6.post1
Expand Down
2 changes: 1 addition & 1 deletion ot/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -93,7 +93,7 @@
from .utils import dist, unif, tic, toc, toq


__version__ = "0.9.7.dev0"
__version__ = "0.9.7"

__all__ = [
"emd",
Expand Down
Loading