SuStaIn algorithm in Python, with the option to describe the subtype progression patterns using either the event-based model or the piecewise linear z-score model.
- The SuStaIn algorithm: Young et al. 2018
- The event-based model: Fonteijn et al. 2012, (with Gaussian mixture modelling Young et al. 2014)
- The piecewise linear z-score model: Young et al. 2018
- Python >= 3.5
- NumPy >= 1.18
- SciPy
- Matplotlib
- Scikit-learn for cross-validation
- kde_ebm for mixture modelling (KDE and GMM included)
- pathos for parallelization
- Added parallelized startpoints
sustainType can be set to:
- "mixture_GMM" : SuStaIn with an event-based model progression pattern, with Gaussian mixture modelling of normal/abnormal.
- "mixture_KDE": SuStaIn with an event-based model progression pattern, with Kernel Density Estimation (KDE) mixture modelling of normal/abnormal.
- "zscore": SuStaIn with a piecewise linear z-score model progression pattern.
See simrun.py for examples of how to run these different implementations.
See the jupyter notebook for a tutorial on how to use SuStaIn using simulated data.