Fit torus graph to multivariate circular data and view test statistics under null hypothesis that two nodes are independent.
Note: This model does not handle time series information.
- torus_graph_model/
- Torus graph model
- utils/
- preprocessing for neuroscience time series data.
- visualization of correlation matrix (and its variant)
python torus_graph_model/sample.py
### Use your time series data
- Place your time series data in CSV format.
- Run
python scripts/inference.py <path_to_your_csv> #if it is a raw signal
python scripts/inference.py <path_to_your_csv> --phase #if it is already a circular data series
Use human EEG data from Chennu et al., 2016
python script/score_matching.py #naive matrix inversion or conditional models
python script/score_matching_admmpath.py #ADMM with regularization path and SMIC minimization
# confirmation using simulation data
python script/simulation.py
- baseline
- mild
- moderate
- recover
Score matching estimator using
- without regularization (full model)
- without regularization (conditional model)
-
$l_1$ regularization using gradient descent (not recommended) - LASSO with ADMM
- LASSO with LARS and SMIC
- Place your EEG/ECoG dataset to
PATH_TO_DATA_DIR
- Specify
FILE_NAME
to be your target time series data. - run
python torus_graph_model/sample.py
and wait. - check
output/
for results.
This repository is partly a reimplementation of Klein et al, 2020