POYO (Azabou et al 2023, NeurIPS) introduces a new transformer-based framework for neural population decoding, designed to adapt rapidly to new, unseen sessions with minimal labels, leveraging large-scale neural recordings. Read here for a high-level intro to POYO.
The code for POYO has been moved to the torch_brain package. You can find the code under examples/poyo.
git clone https://github.com/neuro-galaxy/torch_brain.git
cd torch_brain/examples/poyoTo train POYO-MP you first need to download the perich_miller_population_2018 data using brainsets.
brainsets prepare perich_miller_population_2018Then you can train POYO-MP by running:
python train.py --config-name train_poyo_mp.yamlCheckout configs/base.yaml and configs/train_poyo_mp.yaml for all configurations available.
To train POYO-1 you first need to download all datasets using brainsets.
brainsets prepare perich_miller_population_2018
brainsets prepare churchland_shenoy_neural_2012
brainsets prepare flint_slutzky_accurate_2012
brainsets prepare odoherty_sabes_nonhuman_2017Then you can train POYO-1 by running:
python train.py --config-name train_poyo_1.yamlBelow is a table of pre-trained weights for POYO models that you can download and use:
| Model | Description | Link |
|---|---|---|
| POYO-MP | Trained on the perich_miller_population_2018 dataset | Download |
| POYO-1 | Trained on all four datasets | Download |
Please cite our paper if you use this code in your own work:
@inproceedings{
azabou2023unified,
title={A Unified, Scalable Framework for Neural Population Decoding},
author={Mehdi Azabou and Vinam Arora and Venkataramana Ganesh and Ximeng Mao and Santosh Nachimuthu and Michael Mendelson and Blake Richards and Matthew Perich and Guillaume Lajoie and Eva L. Dyer},
booktitle={Thirty-seventh Conference on Neural Information Processing Systems},
year={2023},
}