Welcome to dynagroup
. This is a Python repo for the under-review paper Discovering group dynamics in synchronous time series via hierarchical recurrent switching-state models.
See INSTALL.md to setup this project's micromamba environment.
You'll have an environment with Python 3.10 called dynagroup_env_310
Unit tests can be run from within the activated virtual environment using
python -m pytest
Here we provide scripts for reproducing experiments on publicly available data (FigureEight, Basketball, and MarchingBand). Experiments from the paper can be reproduced by running the scripts/notebooks below. For exact reproducibility, hyperparameters and seeds described in the paper Appendix are required.
A. To train our model (HSRDM) as well as various ablations, use:
- FigureEight: HSRDM, rAR-HMM
- FigureEight: HSRDM, rAR-HMM Pool.
- FigureEight: HSRDM, rAR-HMM Concat.
- Basketball: HSRDM, rAR-HMM, no-recurrence ablation
- MarchingBand: HSRDM, rAR-HMM, no-recurrence ablation
B. To train baseline forecasts, use: