GSN is a toolbox for accurately modeling signal and noise distributions in neural datasets. We provide both MATLAB and Python implementations.
GSN is detailed in the following paper:
If you have questions or discussion points, please use the Discussions feature of this GitHub repository. If you find a bug, please let us know by raising a GitHub Issue.
To install:
git clone https://github.com/cvnlab/GSN.git
To use the GSN toolbox, add it to your MATLAB path by running the setup.m
script.
To install:
pip install git+https://github.com/cvnlab/GSN.git
Running the example scripts requires:
- installing jupyter notebook or jupyter lab
- installing matplotlib
- cloning the GSN repository in order to get the example scripts located in
examples
:
pip install jupyterlab
pip install "matplotlib<3.9.0"
git clone https://github.com/cvnlab/GSN.git
Code dependencies: see requirements.txt
We provide a number of example scripts that demonstrate usage of GSN. You can browse these example scripts here:
(Python Example 1 - running GSN on a small dataset of 100 voxels x 200 conditions x 3 trials) https://github.com/cvnlab/GSN/blob/main/examples/example1.ipynb
(MATLAB Example 1 - running GSN on a small dataset of 100 voxels x 200 conditions x 3 trials) https://github.com/cvnlab/GSN/blob/main/matlab/examples/example1.m
If you would like to run these example scripts, the Python versions are available in /GSN/examples
, and the MATLAB versions are available in /GSN/matlab/examples
.
These notebooks contain a full walkthrough of the process of loading an example dataset, estimating signal and noise distributions using GSN, examining voxel-level noise ceiling estimates, computing the eigenspectrum of both signal and noise covariance matrices, and estimating dimensionality of each.
Terms of use: This content is licensed under a BSD 3-Clause License.
If you use GSN in your research, please cite the following paper:
- 2024/04/28 - Version 1.0 of GSN released. Accompanies the bioRxiv preprint.
[pre-release updates; early-stage testing]
- 2024/02/25 - Completed port of matlab algorithmic changes to python.
- 2024/01/05 - Major overhaul of GSN matlab functionality by incorporating the biconvex optimization procedure, other minor tweaks.
- 2022/04/13 - Algorithmic changes to covariance estimation added.
- 2022/04/08 - Initial python code version is completed.
- 2022/04/06 - Initial matlab code version is completed.