|
| 1 | +# SPD Learn |
| 2 | + |
| 3 | +> SPD Learn is a pure PyTorch library for geometric deep learning on Symmetric Positive Definite (SPD) matrices. It provides differentiable Riemannian operations, broadcast-compatible layers, and reference implementations of published neural network architectures (SPDNet, TSMNet, EEGSPDNet, TensorCSPNet, PhaseSPDNet, GREEN) for SPD-valued data such as EEG and fMRI covariance matrices. |
| 4 | + |
| 5 | +Key notes for LLMs: |
| 6 | +- Prefer the "API Reference" for exact function signatures, layer parameters, and model constructors. |
| 7 | +- Prefer "Tutorials" for end-to-end workflows (installation through training). |
| 8 | +- The library follows a functional-first design: `spd_learn.functional` (pure functions) -> `spd_learn.modules` (layers) -> `spd_learn.models` (architectures). |
| 9 | +- Requires Python 3.11+ and PyTorch 2.0+. |
| 10 | +- Licensed under BSD-3-Clause. |
| 11 | + |
| 12 | +## Getting Started |
| 13 | +- [Installation](https://spdlearn.org/installation.html): Install via pip, from source, and optional dependencies |
| 14 | +- [User Guide](https://spdlearn.org/user_guide.html): Practical introduction to SPD matrices and building models |
| 15 | + |
| 16 | +## API Reference |
| 17 | +- [API Reference](https://spdlearn.org/api.html): Full API — functional ops, modules (layers), models, and utilities |
| 18 | + |
| 19 | +## Theory & Background |
| 20 | +- [Theory](https://spdlearn.org/theory.html): Mathematical foundations of Riemannian geometry for SPD matrices |
| 21 | +- [Notation](https://spdlearn.org/notation.html): Symbol conventions used in the documentation |
| 22 | +- [Geometric Concepts](https://spdlearn.org/geometric_concepts.html): Key geometric concepts explained |
| 23 | +- [Numerical Stability](https://spdlearn.org/numerical_stability.html): Numerical precision and stability considerations |
| 24 | +- [Glossary](https://spdlearn.org/glossary.html): Definitions of key terms |
| 25 | + |
| 26 | +## Examples & Tutorials |
| 27 | +- [Examples](https://spdlearn.org/generated/auto_examples/index.html): Applied examples and tutorials index |
| 28 | +- [Tutorials](https://spdlearn.org/generated/auto_examples/tutorials/index.html): Step-by-step tutorials for learning SPD Learn |
| 29 | +- [Visualizations](https://spdlearn.org/generated/auto_examples/visualizations/index.html): Visual demonstrations of SPD operations |
| 30 | +- [Applied Examples](https://spdlearn.org/generated/auto_examples/applied_examples/index.html): Real-world applications on EEG, fMRI, and neuroimaging data |
| 31 | + |
| 32 | +## Community |
| 33 | +- [FAQ](https://spdlearn.org/faq.html): Frequently asked questions |
| 34 | +- [Contributing](https://spdlearn.org/contributing.html): How to contribute to SPD Learn |
| 35 | +- [References](https://spdlearn.org/references.html): Academic references and bibliography |
| 36 | +- [GitHub Repository](https://github.com/spdlearn/spd_learn): Source code and issue tracker |
0 commit comments