Welcome to Braindecode

A deep learning toolbox to decode raw time-domain EEG.

For EEG researchers that want to want to work with deep learning and deep learning researchers that want to work with EEG data. For now focussed on convolutional networks.


  1. Install pytorch from http://pytorch.org/ (you don’t need to install torchvision).
  2. Install numpy (necessary for resamply installation to work), e.g.:
pip install numpy
  1. Install newest version of python-mne:
git clone git://github.com/mne-tools/mne-python.git
cd mne-python
python setup.py install
  1. Install braindecode via pip:
pip install braindecode


Please report any issues on github: https://github.com/robintibor/braindecode


braindecode.datautil Utilities for data manipulation.
braindecode.experiments Convenience classes for experiments, including monitoring and stop criteria.
braindecode.mne_ext Extensions for the MNE library.
braindecode.models Some predefined network architectures for EEG decoding.
braindecode.torch_ext Torch extensions, for example new functions or modules.
braindecode.visualization Functions for visualisations, especially of the ConvNets.


If you use this code in a scientific publication, please cite us as:

@article {HBM:HBM23730,
author = {Schirrmeister, Robin Tibor and Springenberg, Jost Tobias and Fiederer,
  Lukas Dominique Josef and Glasstetter, Martin and Eggensperger, Katharina and Tangermann, Michael and
  Hutter, Frank and Burgard, Wolfram and Ball, Tonio},
title = {Deep learning with convolutional neural networks for EEG decoding and visualization},
journal = {Human Brain Mapping},
issn = {1097-0193},
url = {http://dx.doi.org/10.1002/hbm.23730},
doi = {10.1002/hbm.23730},
month = {aug},
year = {2017},
keywords = {electroencephalography, EEG analysis, machine learning, end-to-end learning, brain–machine interface,
  brain–computer interface, model interpretability, brain mapping},

Indices and tables