Geoopt: Riemannian Optimization in PyTorch
This package addresses the need for efficient Riemannian optimization tools in machine learning research, particularly for integrating geometric methods into PyTorch models, but it is incremental as it builds on existing optimization concepts.
The authors tackled the problem of implementing Riemannian optimization in PyTorch by developing Geoopt, a modular open-source package that provides a standard Manifold interface, supports basic Riemannian SGD and adaptive algorithms, and enables geometry-aware neural network layers.
Geoopt is a research-oriented modular open-source package for Riemannian Optimization in PyTorch. The core of Geoopt is a standard Manifold interface that allows for the generic implementation of optimization algorithms. Geoopt supports basic Riemannian SGD as well as adaptive optimization algorithms. Geoopt also provides several algorithms and arithmetic methods for supported manifolds, which allow composing geometry-aware neural network layers that can be integrated with existing models.