PyPI version GitHub repository Python Version Docs

Symmetric Learning is a torch-based machine learning library tailored to optimization problems featuring symmetry priors. It provides equivariant neural network modules, models, and utilities for leveraging group symmetries in data.

Installation#

pip install symm-learning

Key Features#

  • Neural Network Modules (nn): Equivariant layers including linear, convolutional, normalization, and attention modules that respect group symmetries.

  • Models (models): Ready-to-use architectures like equivariant MLPs, Transformers, and CNN encoders for time-series and structured data.

  • Linear Algebra (linalg): Utilities for symmetric vector spaces—least squares, invariant projections, and isotypic decomposition.

  • Statistics (stats): Functions for computing statistics (mean, variance, covariance) of symmetric random variables.

  • Representation Theory (representation_theory): Tools for working with group representations, homomorphism bases, and irreducible decompositions.

Citation#

If you use symm-learning in research, please cite:

@software{ordonez_apraez_symmetric_learning,
  author  = {Ordonez Apraez, Daniel Felipe},
  title   = {Symmetric Learning},
  year    = {2026},
  url     = {https://github.com/Danfoa/symmetric_learning}
}

License#

This project is released under the MIT License. See LICENSE in the repository root.

Resources#