https://github.com/neurodata/autogmm
Python package for automatic Gaussian mixture modeling
https://github.com/neurodata/autogmm
gaussian-mixture-models machine-learning model-selection
Last synced: 5 months ago
JSON representation
Python package for automatic Gaussian mixture modeling
- Host: GitHub
- URL: https://github.com/neurodata/autogmm
- Owner: neurodata
- License: bsd-3-clause
- Created: 2025-08-10T16:49:43.000Z (11 months ago)
- Default Branch: main
- Last Pushed: 2025-09-14T01:43:35.000Z (9 months ago)
- Last Synced: 2025-10-04T12:00:27.483Z (9 months ago)
- Topics: gaussian-mixture-models, machine-learning, model-selection
- Language: Python
- Homepage: https://github.com/tingshanL/autogmm
- Size: 4.14 MB
- Stars: 1
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
Awesome Lists containing this project
README
# AutoGMM
Automatic Gaussian Mixture Modeling in Python.
### Install
``` bash
pip install autogmm
```
### Quick start
``` python
from autogmm import AutoGMM
from sklearn.datasets import make_blobs
X, _ = make_blobs(
n_samples=1000,
centers=4,
cluster_std=1.2,
random_state=0
)
labels = AutoGMM(
min_components=1,
max_components=10, # unknown K
criterion="bic",
random_state=0
).fit_predict(X)
```
### Features
- Initializations: KMeans, Ward–Euclidean, Ward–Mahalanobis
- EM with eigenvalue flooring and covariance constraints (spherical, diag, tied, full)
- Model selection via BIC/AIC (unknown *K*)
- Optional spectral front-end (ASE/LSE) for nonconvex structure
- Parallel evaluation, clean API, reproducible scripts
### Documentation
- API & Guides: https://github.com/neurodata/autogmm/
- Examples: [examples/](examples) (benchmarks; stress tests; runtime scaling)
- Reproducibility: [scripts/reproduce.sh](scripts/reproduce.sh) (regenerates all figures with fixed seeds)
### Legacy & Independence
AutoGMM was originally developed in the [graspologic](https://github.com/graspologic-org/graspologic/) library.
As of v1.0, it is a standalone package with no dependency on graspologic.
### Contributing
Issues and PRs are welcome. See [CONTRIBUTING.md](CONTRIBUTING.md).
### Citation
``` bibtex
@software{autogmm,
title = {AutoGMM: Automatic Gaussian Mixture Modeling in Python},
author = {Liu, Tingshan and Athey, Thomas L. and Pedigo, Benjamin D. and Vogelstein, Joshua T.},
year = {2025},
url = {https://github.com/neurodata/autogmm}
}
```
### License
BSD 3-Clause License. See [LICENSE](LICENSE).