Geomstats: A Python Package for Riemannian Geometry in Machine Learning
This package aims to democratize the use of Riemannian geometry in machine learning by providing reliable tools for researchers and practitioners.
The authors introduced Geomstats, a Python package for performing computations and statistics on nonlinear manifolds like hyperbolic spaces and Lie groups, providing vectorized operations with support for multiple backends to enable GPU acceleration.
We introduce Geomstats, an open-source Python toolbox for computations and statistics on nonlinear manifolds, such as hyperbolic spaces, spaces of symmetric positive definite matrices, Lie groups of transformations, and many more. We provide object-oriented and extensively unit-tested implementations. Among others, manifolds come equipped with families of Riemannian metrics, with associated exponential and logarithmic maps, geodesics and parallel transport. Statistics and learning algorithms provide methods for estimation, clustering and dimension reduction on manifolds. All associated operations are vectorized for batch computation and provide support for different execution backends, namely NumPy, PyTorch and TensorFlow, enabling GPU acceleration. This paper presents the package, compares it with related libraries and provides relevant code examples. We show that Geomstats provides reliable building blocks to foster research in differential geometry and statistics, and to democratize the use of Riemannian geometry in machine learning applications. The source code is freely available under the MIT license at \url{geomstats.ai}.