A Python toolbox for solving optimal transport problems with JAX-powered computational efficiency.
OTT is a Python toolbox for solving optimal transport problems, which involve finding optimal ways to move mass between probability distributions. It provides efficient implementations of algorithms like Sinkhorn and Greenkhorn, with JAX acceleration for computational performance. The library enables applications in machine learning, computer vision, and data science where measuring distances between distributions is essential.
Machine learning researchers and practitioners working with distributional data, computational geometry problems, or applications requiring Wasserstein distances. Data scientists and engineers needing efficient optimal transport implementations for large-scale problems.
Developers choose OTT for its JAX-powered computational efficiency, clean API design, and focus on differentiability—making it ideal for integration with modern machine learning pipelines. It offers a balance between research flexibility and production-ready performance.
OTT is a Python library that provides efficient implementations of algorithms for solving optimal transport problems. It focuses on computational performance through JAX acceleration, making it suitable for large-scale applications in machine learning and data science.
OTT prioritizes computational efficiency and differentiability while maintaining a clean, research-friendly API that balances flexibility with performance.
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Leverages JAX for automatic differentiation and GPU/TPU acceleration, enabling efficient large-scale computations as highlighted in its focus on computational performance.
Supports end-to-end differentiable pipelines, allowing integration with neural networks for machine learning applications, which is a core feature for modern ML workflows.
Implements Sinkhorn, Greenkhorn, and other solvers with geometric tools for Wasserstein distances, providing a wide range of options for optimal transport problems.
Development stopped on the main GitHub branch in 2022, with migration to ott-jax, causing potential confusion and extra steps for users to access updated versions.
Requires JAX, which adds setup complexity and may not align with projects using other deep learning frameworks, limiting flexibility for some teams.
As a research-focused tool, it has fewer community resources and documentation compared to established libraries like POT, which can hinder adoption and troubleshooting.