braindecode 0.4.85__tar.gz → 0.5.1__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- Braindecode-0.5.1/Braindecode.egg-info/PKG-INFO +124 -0
- Braindecode-0.5.1/Braindecode.egg-info/SOURCES.txt +160 -0
- {Braindecode-0.4.85 → Braindecode-0.5.1}/Braindecode.egg-info/requires.txt +1 -1
- {Braindecode-0.4.85 → Braindecode-0.5.1}/Braindecode.egg-info/top_level.txt +1 -0
- {Braindecode-0.4.85 → Braindecode-0.5.1}/LICENSE.txt +1 -1
- Braindecode-0.5.1/PKG-INFO +124 -0
- Braindecode-0.5.1/README.rst +106 -0
- Braindecode-0.5.1/braindecode/__init__.py +4 -0
- Braindecode-0.5.1/braindecode/classifier.py +258 -0
- Braindecode-0.5.1/braindecode/datasets/__init__.py +7 -0
- Braindecode-0.5.1/braindecode/datasets/base.py +293 -0
- {Braindecode-0.4.85 → Braindecode-0.5.1}/braindecode/datasets/bbci.py +13 -2
- Braindecode-0.5.1/braindecode/datasets/moabb.py +110 -0
- Braindecode-0.5.1/braindecode/datasets/sleep_physionet.py +103 -0
- Braindecode-0.5.1/braindecode/datasets/tuh.py +230 -0
- Braindecode-0.5.1/braindecode/datautil/__init__.py +11 -0
- Braindecode-0.5.1/braindecode/datautil/mne.py +136 -0
- Braindecode-0.5.1/braindecode/datautil/preprocess.py +364 -0
- Braindecode-0.5.1/braindecode/datautil/serialization.py +111 -0
- Braindecode-0.5.1/braindecode/datautil/windowers.py +435 -0
- Braindecode-0.5.1/braindecode/datautil/xy.py +77 -0
- Braindecode-0.5.1/braindecode/models/__init__.py +12 -0
- {Braindecode-0.4.85 → Braindecode-0.5.1}/braindecode/models/deep4.py +70 -62
- {Braindecode-0.4.85 → Braindecode-0.5.1}/braindecode/models/eegnet.py +104 -100
- Braindecode-0.5.1/braindecode/models/eegresnet.py +232 -0
- Braindecode-0.5.1/braindecode/models/functions.py +43 -0
- {Braindecode-0.4.85 → Braindecode-0.5.1}/braindecode/models/hybrid.py +13 -36
- {Braindecode-0.4.85/braindecode/torch_ext → Braindecode-0.5.1/braindecode/models}/modules.py +16 -12
- {Braindecode-0.4.85 → Braindecode-0.5.1}/braindecode/models/shallow_fbcsp.py +55 -53
- Braindecode-0.5.1/braindecode/models/sleep_stager_chambon_2018.py +113 -0
- Braindecode-0.5.1/braindecode/models/tcn.py +143 -0
- {Braindecode-0.4.85 → Braindecode-0.5.1}/braindecode/models/util.py +21 -1
- Braindecode-0.5.1/braindecode/regressor.py +240 -0
- Braindecode-0.5.1/braindecode/samplers/__init__.py +5 -0
- Braindecode-0.5.1/braindecode/samplers/base.py +78 -0
- Braindecode-0.5.1/braindecode/samplers/ssl.py +118 -0
- Braindecode-0.5.1/braindecode/training/__init__.py +8 -0
- Braindecode-0.5.1/braindecode/training/callbacks.py +21 -0
- Braindecode-0.5.1/braindecode/training/losses.py +17 -0
- Braindecode-0.5.1/braindecode/training/scoring.py +296 -0
- Braindecode-0.5.1/braindecode/util.py +362 -0
- Braindecode-0.5.1/braindecode/version.py +1 -0
- {Braindecode-0.4.85 → Braindecode-0.5.1}/braindecode/visualization/__init__.py +2 -0
- Braindecode-0.5.1/braindecode/visualization/gradients.py +53 -0
- {Braindecode-0.4.85 → Braindecode-0.5.1}/docs/Makefile +16 -2
- Braindecode-0.5.1/docs/_build/html/_downloads/1224801107d6c3b138edf8ee33de0561/plot_bcic_iv_2a_moabb_cropped.ipynb +275 -0
- Braindecode-0.5.1/docs/_build/html/_downloads/176a7695926ccfe061692c4af12b673d/plot_dataset_example.ipynb +252 -0
- Braindecode-0.5.1/docs/_build/html/_downloads/25408d8d92a873e370d4750ba414b84a/benchmark_lazy_eager_loading.ipynb +194 -0
- Braindecode-0.5.1/docs/_build/html/_downloads/3e0455c88adcaa2571230abb981020db/plot_relative_positioning.ipynb +375 -0
- Braindecode-0.5.1/docs/_build/html/_downloads/4855a497085ac8dc60a648bf4a72d647/plot_load_save_datasets.ipynb +180 -0
- Braindecode-0.5.1/docs/_build/html/_downloads/49b1f19a86467aeaf762a1550583a845/plot_custom_dataset_example.ipynb +115 -0
- Braindecode-0.5.1/docs/_build/html/_downloads/5bafba0488197e377d459780399abb29/plot_sleep_staging.ipynb +293 -0
- Braindecode-0.5.1/docs/_build/html/_downloads/748680401b0360239d00624375dd9587/plot_bcic_iv_2a_moabb_trial.ipynb +232 -0
- Braindecode-0.5.1/docs/_build/html/_downloads/8c06a965e21b52d199f98636388aaa21/tuh_eeg_corpus.ipynb +180 -0
- Braindecode-0.5.1/docs/_build/html/_downloads/9c64c2c15907a661b1fe2d7dd209a434/plot_regression.ipynb +54 -0
- Braindecode-0.5.1/docs/_build/html/_downloads/b38e40c9ee338673865922575e84fd7f/plot_split_dataset.ipynb +162 -0
- Braindecode-0.5.1/docs/_build/html/_downloads/e42b5bd97033be02521040b0d5ee21c3/plot_mne_dataset_example.ipynb +115 -0
- Braindecode-0.5.1/docs/_templates/autosummary/class.rst +14 -0
- Braindecode-0.5.1/docs/_templates/autosummary/function.rst +12 -0
- Braindecode-0.5.1/docs/api.rst +162 -0
- Braindecode-0.5.1/docs/auto_examples/benchmark_lazy_eager_loading.ipynb +194 -0
- Braindecode-0.5.1/docs/auto_examples/benchmark_lazy_eager_loading.rst +425 -0
- Braindecode-0.5.1/docs/auto_examples/index.rst +290 -0
- Braindecode-0.5.1/docs/auto_examples/plot_bcic_iv_2a_moabb_cropped.ipynb +275 -0
- Braindecode-0.5.1/docs/auto_examples/plot_bcic_iv_2a_moabb_cropped.rst +845 -0
- Braindecode-0.5.1/docs/auto_examples/plot_bcic_iv_2a_moabb_trial.ipynb +232 -0
- Braindecode-0.5.1/docs/auto_examples/plot_bcic_iv_2a_moabb_trial.rst +764 -0
- Braindecode-0.5.1/docs/auto_examples/plot_custom_dataset_example.ipynb +115 -0
- Braindecode-0.5.1/docs/auto_examples/plot_custom_dataset_example.rst +261 -0
- Braindecode-0.5.1/docs/auto_examples/plot_dataset_example.ipynb +252 -0
- Braindecode-0.5.1/docs/auto_examples/plot_dataset_example.rst +741 -0
- Braindecode-0.5.1/docs/auto_examples/plot_load_save_datasets.ipynb +180 -0
- Braindecode-0.5.1/docs/auto_examples/plot_load_save_datasets.rst +315 -0
- Braindecode-0.5.1/docs/auto_examples/plot_mne_dataset_example.ipynb +115 -0
- Braindecode-0.5.1/docs/auto_examples/plot_mne_dataset_example.rst +355 -0
- Braindecode-0.5.1/docs/auto_examples/plot_regression.ipynb +54 -0
- Braindecode-0.5.1/docs/auto_examples/plot_regression.rst +310 -0
- Braindecode-0.5.1/docs/auto_examples/plot_relative_positioning.ipynb +375 -0
- Braindecode-0.5.1/docs/auto_examples/plot_relative_positioning.rst +1004 -0
- Braindecode-0.5.1/docs/auto_examples/plot_sleep_staging.ipynb +293 -0
- Braindecode-0.5.1/docs/auto_examples/plot_sleep_staging.rst +670 -0
- Braindecode-0.5.1/docs/auto_examples/plot_split_dataset.ipynb +162 -0
- Braindecode-0.5.1/docs/auto_examples/plot_split_dataset.rst +393 -0
- Braindecode-0.5.1/docs/auto_examples/sg_execution_times.rst +34 -0
- Braindecode-0.5.1/docs/auto_examples/tuh_eeg_corpus.ipynb +180 -0
- Braindecode-0.5.1/docs/auto_examples/tuh_eeg_corpus.rst +350 -0
- {Braindecode-0.4.85 → Braindecode-0.5.1}/docs/conf.py +105 -39
- Braindecode-0.5.1/docs/generated/braindecode.classifier.EEGClassifier.rst +14 -0
- Braindecode-0.5.1/docs/generated/braindecode.datasets.BaseConcatDataset.rst +14 -0
- Braindecode-0.5.1/docs/generated/braindecode.datasets.BaseDataset.rst +14 -0
- Braindecode-0.5.1/docs/generated/braindecode.datasets.MOABBDataset.rst +14 -0
- Braindecode-0.5.1/docs/generated/braindecode.datasets.SleepPhysionet.rst +14 -0
- Braindecode-0.5.1/docs/generated/braindecode.datasets.TUH.rst +14 -0
- Braindecode-0.5.1/docs/generated/braindecode.datasets.TUHAbnormal.rst +14 -0
- Braindecode-0.5.1/docs/generated/braindecode.datasets.WindowsDataset.rst +14 -0
- Braindecode-0.5.1/docs/generated/braindecode.datautil.Preprocessor.rst +14 -0
- Braindecode-0.5.1/docs/generated/braindecode.datautil.create_fixed_length_windows.rst +12 -0
- Braindecode-0.5.1/docs/generated/braindecode.datautil.create_from_X_y.rst +12 -0
- Braindecode-0.5.1/docs/generated/braindecode.datautil.create_from_mne_epochs.rst +12 -0
- Braindecode-0.5.1/docs/generated/braindecode.datautil.create_from_mne_raw.rst +12 -0
- Braindecode-0.5.1/docs/generated/braindecode.datautil.create_windows_from_events.rst +12 -0
- Braindecode-0.5.1/docs/generated/braindecode.datautil.exponential_moving_demean.rst +12 -0
- Braindecode-0.5.1/docs/generated/braindecode.datautil.exponential_moving_standardize.rst +12 -0
- Braindecode-0.5.1/docs/generated/braindecode.datautil.filterbank.rst +12 -0
- Braindecode-0.5.1/docs/generated/braindecode.datautil.load_concat_dataset.rst +12 -0
- Braindecode-0.5.1/docs/generated/braindecode.datautil.preprocess.rst +12 -0
- Braindecode-0.5.1/docs/generated/braindecode.datautil.save_concat_dataset.rst +12 -0
- Braindecode-0.5.1/docs/generated/braindecode.datautil.scale.rst +12 -0
- Braindecode-0.5.1/docs/generated/braindecode.datautil.zscore.rst +12 -0
- Braindecode-0.5.1/docs/generated/braindecode.models.Deep4Net.rst +14 -0
- Braindecode-0.5.1/docs/generated/braindecode.models.EEGNetv1.rst +14 -0
- Braindecode-0.5.1/docs/generated/braindecode.models.EEGNetv4.rst +14 -0
- Braindecode-0.5.1/docs/generated/braindecode.models.EEGResNet.rst +14 -0
- Braindecode-0.5.1/docs/generated/braindecode.models.HybridNet.rst +14 -0
- Braindecode-0.5.1/docs/generated/braindecode.models.ShallowFBCSPNet.rst +14 -0
- Braindecode-0.5.1/docs/generated/braindecode.models.SleepStagerChambon2018.rst +14 -0
- Braindecode-0.5.1/docs/generated/braindecode.models.TCN.rst +14 -0
- Braindecode-0.5.1/docs/generated/braindecode.models.get_output_shape.rst +12 -0
- Braindecode-0.5.1/docs/generated/braindecode.regressor.EEGRegressor.rst +14 -0
- Braindecode-0.5.1/docs/generated/braindecode.samplers.RecordingSampler.rst +14 -0
- Braindecode-0.5.1/docs/generated/braindecode.samplers.RelativePositioningSampler.rst +14 -0
- Braindecode-0.5.1/docs/generated/braindecode.training.CroppedLoss.rst +14 -0
- Braindecode-0.5.1/docs/generated/braindecode.training.CroppedTrialEpochScoring.rst +14 -0
- Braindecode-0.5.1/docs/generated/braindecode.training.PostEpochTrainScoring.rst +14 -0
- Braindecode-0.5.1/docs/generated/braindecode.training.trial_preds_from_window_preds.rst +12 -0
- Braindecode-0.5.1/docs/generated/braindecode.util.set_random_seeds.rst +12 -0
- Braindecode-0.5.1/docs/generated/braindecode.visualization.compute_amplitude_gradients.rst +12 -0
- Braindecode-0.5.1/docs/index.rst +129 -0
- Braindecode-0.5.1/docs/whats_new.rst +70 -0
- Braindecode-0.5.1/setup.cfg +28 -0
- {Braindecode-0.4.85 → Braindecode-0.5.1}/setup.py +3 -5
- Braindecode-0.5.1/test/__init__.py +0 -0
- Braindecode-0.5.1/test/acceptance_tests/__init__.py +0 -0
- Braindecode-0.5.1/test/acceptance_tests/test_cropped_decoding.py +171 -0
- Braindecode-0.5.1/test/acceptance_tests/test_eeg_classifier.py +255 -0
- Braindecode-0.5.1/test/acceptance_tests/test_model_architectures.py +54 -0
- Braindecode-0.5.1/test/acceptance_tests/test_trialwise_decoding.py +168 -0
- Braindecode-0.5.1/test/unit_tests/__init__.py +0 -0
- Braindecode-0.5.1/test/unit_tests/datasets/__init__.py +0 -0
- Braindecode-0.5.1/test/unit_tests/datasets/test_dataset.py +227 -0
- Braindecode-0.5.1/test/unit_tests/datasets/test_mne.py +145 -0
- Braindecode-0.5.1/test/unit_tests/datasets/test_sleep_physionet.py +23 -0
- Braindecode-0.5.1/test/unit_tests/datasets/test_tuh.py +97 -0
- Braindecode-0.5.1/test/unit_tests/datasets/test_xy.py +31 -0
- Braindecode-0.5.1/test/unit_tests/datautil/__init__.py +0 -0
- Braindecode-0.5.1/test/unit_tests/datautil/test_preprocess.py +270 -0
- Braindecode-0.5.1/test/unit_tests/datautil/test_serialization.py +127 -0
- Braindecode-0.5.1/test/unit_tests/datautil/test_windowers.py +519 -0
- Braindecode-0.5.1/test/unit_tests/models/__init__.py +0 -0
- Braindecode-0.5.1/test/unit_tests/models/test_models.py +136 -0
- Braindecode-0.5.1/test/unit_tests/models/test_util.py +22 -0
- Braindecode-0.5.1/test/unit_tests/test_eeg_classifier.py +73 -0
- Braindecode-0.5.1/test/unit_tests/test_eeg_regressor.py +72 -0
- Braindecode-0.5.1/test/unit_tests/test_scoring.py +282 -0
- Braindecode-0.5.1/test/unit_tests/test_util.py +30 -0
- Braindecode-0.5.1/test/unit_tests/visualization/__init__.py +0 -0
- Braindecode-0.5.1/test/unit_tests/visualization/test_gradients.py +38 -0
- Braindecode-0.4.85/Braindecode.egg-info/PKG-INFO +0 -77
- Braindecode-0.4.85/Braindecode.egg-info/SOURCES.txt +0 -76
- Braindecode-0.4.85/PKG-INFO +0 -77
- Braindecode-0.4.85/README.rst +0 -58
- Braindecode-0.4.85/braindecode/__init__.py +0 -1
- Braindecode-0.4.85/braindecode/datasets/__init__.py +0 -3
- Braindecode-0.4.85/braindecode/datasets/bcic_iv_2a.py +0 -89
- Braindecode-0.4.85/braindecode/datasets/lazy_dataset.py +0 -48
- Braindecode-0.4.85/braindecode/datasets/multiple.py +0 -49
- Braindecode-0.4.85/braindecode/datasets/sensor_positions.py +0 -225
- Braindecode-0.4.85/braindecode/datautil/__init__.py +0 -3
- Braindecode-0.4.85/braindecode/datautil/iterators.py +0 -359
- Braindecode-0.4.85/braindecode/datautil/lazy_iterators.py +0 -150
- Braindecode-0.4.85/braindecode/datautil/signal_target.py +0 -39
- Braindecode-0.4.85/braindecode/datautil/signalproc.py +0 -240
- Braindecode-0.4.85/braindecode/datautil/splitters.py +0 -189
- Braindecode-0.4.85/braindecode/datautil/trial_segment.py +0 -739
- Braindecode-0.4.85/braindecode/experiments/__init__.py +0 -3
- Braindecode-0.4.85/braindecode/experiments/experiment.py +0 -552
- Braindecode-0.4.85/braindecode/experiments/loggers.py +0 -51
- Braindecode-0.4.85/braindecode/experiments/monitors.py +0 -427
- Braindecode-0.4.85/braindecode/experiments/stopcriteria.py +0 -144
- Braindecode-0.4.85/braindecode/mne_ext/__init__.py +0 -3
- Braindecode-0.4.85/braindecode/mne_ext/signalproc.py +0 -110
- Braindecode-0.4.85/braindecode/models/__init__.py +0 -3
- Braindecode-0.4.85/braindecode/models/base.py +0 -416
- Braindecode-0.4.85/braindecode/torch_ext/__init__.py +0 -3
- Braindecode-0.4.85/braindecode/torch_ext/constraints.py +0 -31
- Braindecode-0.4.85/braindecode/torch_ext/functions.py +0 -14
- Braindecode-0.4.85/braindecode/torch_ext/init.py +0 -23
- Braindecode-0.4.85/braindecode/torch_ext/losses.py +0 -84
- Braindecode-0.4.85/braindecode/torch_ext/optimizers.py +0 -85
- Braindecode-0.4.85/braindecode/torch_ext/schedulers.py +0 -71
- Braindecode-0.4.85/braindecode/torch_ext/util.py +0 -78
- Braindecode-0.4.85/braindecode/util.py +0 -223
- Braindecode-0.4.85/braindecode/version.py +0 -1
- Braindecode-0.4.85/braindecode/visualization/input_windows.py +0 -220
- Braindecode-0.4.85/braindecode/visualization/perturbation.py +0 -334
- Braindecode-0.4.85/braindecode/visualization/plot.py +0 -206
- Braindecode-0.4.85/braindecode/visualization/sinfit.py +0 -96
- Braindecode-0.4.85/docs/index.rst +0 -91
- Braindecode-0.4.85/docs/notebooks/BBCI_Data.ipynb +0 -841
- Braindecode-0.4.85/docs/notebooks/BBCI_Data_Start_Stop.ipynb +0 -899
- Braindecode-0.4.85/docs/notebooks/BBCI_Data_Trialwise.ipynb +0 -715
- Braindecode-0.4.85/docs/notebooks/Cropped_Decoding.ipynb +0 -1140
- Braindecode-0.4.85/docs/notebooks/Cropped_Manual_Training_Loop.ipynb +0 -568
- Braindecode-0.4.85/docs/notebooks/Cropped_Trialwise_Explanation_Figures.ipynb +0 -382
- Braindecode-0.4.85/docs/notebooks/Trialwise_Decoding.ipynb +0 -1100
- Braindecode-0.4.85/docs/notebooks/Trialwise_Manual_Training_Loop.ipynb +0 -651
- Braindecode-0.4.85/docs/notebooks/visualization/Perturbation.ipynb +0 -868
- Braindecode-0.4.85/docs/source/braindecode.datasets.rst +0 -52
- Braindecode-0.4.85/docs/source/braindecode.datautil.rst +0 -68
- Braindecode-0.4.85/docs/source/braindecode.experiments.rst +0 -44
- Braindecode-0.4.85/docs/source/braindecode.mne_ext.rst +0 -20
- Braindecode-0.4.85/docs/source/braindecode.models.rst +0 -60
- Braindecode-0.4.85/docs/source/braindecode.rst +0 -41
- Braindecode-0.4.85/docs/source/braindecode.torch_ext.rst +0 -76
- Braindecode-0.4.85/docs/source/braindecode.visualization.rst +0 -44
- Braindecode-0.4.85/docs/source/modules.rst +0 -7
- Braindecode-0.4.85/setup.cfg +0 -4
- {Braindecode-0.4.85 → Braindecode-0.5.1}/Braindecode.egg-info/dependency_links.txt +0 -0
- {Braindecode-0.4.85 → Braindecode-0.5.1}/Braindecode.egg-info/not-zip-safe +0 -0
- {Braindecode-0.4.85 → Braindecode-0.5.1}/MANIFEST.in +0 -0
- {Braindecode-0.4.85 → Braindecode-0.5.1}/braindecode/datautil/util.py +0 -0
|
@@ -0,0 +1,124 @@
|
|
|
1
|
+
Metadata-Version: 1.1
|
|
2
|
+
Name: Braindecode
|
|
3
|
+
Version: 0.5.1
|
|
4
|
+
Summary: A deep learning toolbox to decode raw time-domain EEG.
|
|
5
|
+
Home-page: https://github.com/braindecode/braindecode
|
|
6
|
+
Author: Robin Tibor Schirrmeister
|
|
7
|
+
Author-email: robintibor@gmail.com
|
|
8
|
+
License: BSD 3-Clause
|
|
9
|
+
Description: Braindecode
|
|
10
|
+
===========
|
|
11
|
+
|
|
12
|
+
.. image:: https://badges.gitter.im/braindecodechat/community.svg
|
|
13
|
+
:alt: Join the chat at https://gitter.im/braindecodechat/community
|
|
14
|
+
:target: https://gitter.im/braindecodechat/community?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge
|
|
15
|
+
|
|
16
|
+
.. image:: https://github.com/braindecode/braindecode/workflows/tests-and-docs/badge.svg
|
|
17
|
+
:target: https://github.com/braindecode/braindecode/actions
|
|
18
|
+
|
|
19
|
+
.. image:: https://circleci.com/gh/braindecode/braindecode.svg?style=svg
|
|
20
|
+
:target: https://circleci.com/gh/braindecode/braindecode
|
|
21
|
+
:alt: Doc build on CircleCI
|
|
22
|
+
|
|
23
|
+
.. image:: https://codecov.io/gh/braindecode/braindecode/branch/master/graph/badge.svg
|
|
24
|
+
:target: https://codecov.io/gh/braindecode/braindecode
|
|
25
|
+
:alt: Code Coverage
|
|
26
|
+
|
|
27
|
+
A deep learning toolbox to decode raw time-domain EEG.
|
|
28
|
+
|
|
29
|
+
For EEG researchers who want to work with deep learning and
|
|
30
|
+
deep learning researchers who want to work with EEG data.
|
|
31
|
+
For now focused on convolutional networks.
|
|
32
|
+
|
|
33
|
+
|
|
34
|
+
Installation
|
|
35
|
+
============
|
|
36
|
+
|
|
37
|
+
1. Install pytorch from http://pytorch.org/ (you don't need to install torchvision).
|
|
38
|
+
|
|
39
|
+
2. Install `MOABB <https://github.com/NeuroTechX/moabb>`_ via pip (needed if you want to use MOABB datasets utilities):
|
|
40
|
+
|
|
41
|
+
.. code-block:: bash
|
|
42
|
+
|
|
43
|
+
pip install moabb
|
|
44
|
+
|
|
45
|
+
3. Install latest release of braindecode via pip:
|
|
46
|
+
|
|
47
|
+
.. code-block:: bash
|
|
48
|
+
|
|
49
|
+
pip install braindecode
|
|
50
|
+
|
|
51
|
+
alternatively, if you use conda, you could create a dedicated environment with the following:
|
|
52
|
+
|
|
53
|
+
.. code-block:: bash
|
|
54
|
+
|
|
55
|
+
curl -O https://raw.githubusercontent.com/braindecode/braindecode/master/environment.yml
|
|
56
|
+
conda env create -f environment.yml
|
|
57
|
+
conda activate braindecode
|
|
58
|
+
|
|
59
|
+
alternatively, install the latest version of braindecode via pip:
|
|
60
|
+
|
|
61
|
+
.. code-block:: bash
|
|
62
|
+
|
|
63
|
+
pip install -U https://api.github.com/repos/braindecode/braindecode/zipball/master
|
|
64
|
+
|
|
65
|
+
|
|
66
|
+
Documentation
|
|
67
|
+
=============
|
|
68
|
+
|
|
69
|
+
Documentation is online under https://braindecode.org
|
|
70
|
+
|
|
71
|
+
|
|
72
|
+
Dataset
|
|
73
|
+
=======
|
|
74
|
+
The high-gamma dataset used in our publication (see below), including trained models, is available under:
|
|
75
|
+
https://web.gin.g-node.org/robintibor/high-gamma-dataset/
|
|
76
|
+
|
|
77
|
+
|
|
78
|
+
Citing
|
|
79
|
+
======
|
|
80
|
+
|
|
81
|
+
If you use this code in a scientific publication, please cite us as:
|
|
82
|
+
|
|
83
|
+
.. code-block:: bibtex
|
|
84
|
+
|
|
85
|
+
@article {HBM:HBM23730,
|
|
86
|
+
author = {Schirrmeister, Robin Tibor and Springenberg, Jost Tobias and Fiederer,
|
|
87
|
+
Lukas Dominique Josef and Glasstetter, Martin and Eggensperger, Katharina and Tangermann, Michael and
|
|
88
|
+
Hutter, Frank and Burgard, Wolfram and Ball, Tonio},
|
|
89
|
+
title = {Deep learning with convolutional neural networks for EEG decoding and visualization},
|
|
90
|
+
journal = {Human Brain Mapping},
|
|
91
|
+
issn = {1097-0193},
|
|
92
|
+
url = {http://dx.doi.org/10.1002/hbm.23730},
|
|
93
|
+
doi = {10.1002/hbm.23730},
|
|
94
|
+
month = {aug},
|
|
95
|
+
year = {2017},
|
|
96
|
+
keywords = {electroencephalography, EEG analysis, machine learning, end-to-end learning, brain–machine interface,
|
|
97
|
+
brain–computer interface, model interpretability, brain mapping},
|
|
98
|
+
}
|
|
99
|
+
|
|
100
|
+
as well as the `MNE-Python <https://mne.tools>`_ software that is used by braindecode:
|
|
101
|
+
|
|
102
|
+
.. code-block:: bibtex
|
|
103
|
+
|
|
104
|
+
@article{10.3389/fnins.2013.00267,
|
|
105
|
+
author={Gramfort, Alexandre and Luessi, Martin and Larson, Eric and Engemann, Denis and Strohmeier, Daniel and Brodbeck, Christian and Goj, Roman and Jas, Mainak and Brooks, Teon and Parkkonen, Lauri and Hämäläinen, Matti},
|
|
106
|
+
title={{MEG and EEG data analysis with MNE-Python}},
|
|
107
|
+
journal={Frontiers in Neuroscience},
|
|
108
|
+
volume={7},
|
|
109
|
+
pages={267},
|
|
110
|
+
year={2013},
|
|
111
|
+
url={https://www.frontiersin.org/article/10.3389/fnins.2013.00267},
|
|
112
|
+
doi={10.3389/fnins.2013.00267},
|
|
113
|
+
issn={1662-453X},
|
|
114
|
+
}
|
|
115
|
+
|
|
116
|
+
Keywords: eeg deep-learning brain-state-decoding
|
|
117
|
+
Platform: UNKNOWN
|
|
118
|
+
Classifier: Development Status :: 3 - Alpha
|
|
119
|
+
Classifier: Intended Audience :: Developers
|
|
120
|
+
Classifier: Intended Audience :: Science/Research
|
|
121
|
+
Classifier: Topic :: Software Development :: Build Tools
|
|
122
|
+
Classifier: Topic :: Scientific/Engineering :: Artificial Intelligence
|
|
123
|
+
Classifier: License :: OSI Approved :: BSD License
|
|
124
|
+
Classifier: Programming Language :: Python :: 3.7
|
|
@@ -0,0 +1,160 @@
|
|
|
1
|
+
LICENSE.txt
|
|
2
|
+
MANIFEST.in
|
|
3
|
+
README.rst
|
|
4
|
+
setup.cfg
|
|
5
|
+
setup.py
|
|
6
|
+
Braindecode.egg-info/PKG-INFO
|
|
7
|
+
Braindecode.egg-info/SOURCES.txt
|
|
8
|
+
Braindecode.egg-info/dependency_links.txt
|
|
9
|
+
Braindecode.egg-info/not-zip-safe
|
|
10
|
+
Braindecode.egg-info/requires.txt
|
|
11
|
+
Braindecode.egg-info/top_level.txt
|
|
12
|
+
braindecode/__init__.py
|
|
13
|
+
braindecode/classifier.py
|
|
14
|
+
braindecode/regressor.py
|
|
15
|
+
braindecode/util.py
|
|
16
|
+
braindecode/version.py
|
|
17
|
+
braindecode/datasets/__init__.py
|
|
18
|
+
braindecode/datasets/base.py
|
|
19
|
+
braindecode/datasets/bbci.py
|
|
20
|
+
braindecode/datasets/moabb.py
|
|
21
|
+
braindecode/datasets/sleep_physionet.py
|
|
22
|
+
braindecode/datasets/tuh.py
|
|
23
|
+
braindecode/datautil/__init__.py
|
|
24
|
+
braindecode/datautil/mne.py
|
|
25
|
+
braindecode/datautil/preprocess.py
|
|
26
|
+
braindecode/datautil/serialization.py
|
|
27
|
+
braindecode/datautil/util.py
|
|
28
|
+
braindecode/datautil/windowers.py
|
|
29
|
+
braindecode/datautil/xy.py
|
|
30
|
+
braindecode/models/__init__.py
|
|
31
|
+
braindecode/models/deep4.py
|
|
32
|
+
braindecode/models/eegnet.py
|
|
33
|
+
braindecode/models/eegresnet.py
|
|
34
|
+
braindecode/models/functions.py
|
|
35
|
+
braindecode/models/hybrid.py
|
|
36
|
+
braindecode/models/modules.py
|
|
37
|
+
braindecode/models/shallow_fbcsp.py
|
|
38
|
+
braindecode/models/sleep_stager_chambon_2018.py
|
|
39
|
+
braindecode/models/tcn.py
|
|
40
|
+
braindecode/models/util.py
|
|
41
|
+
braindecode/samplers/__init__.py
|
|
42
|
+
braindecode/samplers/base.py
|
|
43
|
+
braindecode/samplers/ssl.py
|
|
44
|
+
braindecode/training/__init__.py
|
|
45
|
+
braindecode/training/callbacks.py
|
|
46
|
+
braindecode/training/losses.py
|
|
47
|
+
braindecode/training/scoring.py
|
|
48
|
+
braindecode/visualization/__init__.py
|
|
49
|
+
braindecode/visualization/gradients.py
|
|
50
|
+
docs/Makefile
|
|
51
|
+
docs/api.rst
|
|
52
|
+
docs/conf.py
|
|
53
|
+
docs/index.rst
|
|
54
|
+
docs/whats_new.rst
|
|
55
|
+
docs/_build/html/_downloads/1224801107d6c3b138edf8ee33de0561/plot_bcic_iv_2a_moabb_cropped.ipynb
|
|
56
|
+
docs/_build/html/_downloads/176a7695926ccfe061692c4af12b673d/plot_dataset_example.ipynb
|
|
57
|
+
docs/_build/html/_downloads/25408d8d92a873e370d4750ba414b84a/benchmark_lazy_eager_loading.ipynb
|
|
58
|
+
docs/_build/html/_downloads/3e0455c88adcaa2571230abb981020db/plot_relative_positioning.ipynb
|
|
59
|
+
docs/_build/html/_downloads/4855a497085ac8dc60a648bf4a72d647/plot_load_save_datasets.ipynb
|
|
60
|
+
docs/_build/html/_downloads/49b1f19a86467aeaf762a1550583a845/plot_custom_dataset_example.ipynb
|
|
61
|
+
docs/_build/html/_downloads/5bafba0488197e377d459780399abb29/plot_sleep_staging.ipynb
|
|
62
|
+
docs/_build/html/_downloads/748680401b0360239d00624375dd9587/plot_bcic_iv_2a_moabb_trial.ipynb
|
|
63
|
+
docs/_build/html/_downloads/8c06a965e21b52d199f98636388aaa21/tuh_eeg_corpus.ipynb
|
|
64
|
+
docs/_build/html/_downloads/9c64c2c15907a661b1fe2d7dd209a434/plot_regression.ipynb
|
|
65
|
+
docs/_build/html/_downloads/b38e40c9ee338673865922575e84fd7f/plot_split_dataset.ipynb
|
|
66
|
+
docs/_build/html/_downloads/e42b5bd97033be02521040b0d5ee21c3/plot_mne_dataset_example.ipynb
|
|
67
|
+
docs/_templates/autosummary/class.rst
|
|
68
|
+
docs/_templates/autosummary/function.rst
|
|
69
|
+
docs/auto_examples/benchmark_lazy_eager_loading.ipynb
|
|
70
|
+
docs/auto_examples/benchmark_lazy_eager_loading.rst
|
|
71
|
+
docs/auto_examples/index.rst
|
|
72
|
+
docs/auto_examples/plot_bcic_iv_2a_moabb_cropped.ipynb
|
|
73
|
+
docs/auto_examples/plot_bcic_iv_2a_moabb_cropped.rst
|
|
74
|
+
docs/auto_examples/plot_bcic_iv_2a_moabb_trial.ipynb
|
|
75
|
+
docs/auto_examples/plot_bcic_iv_2a_moabb_trial.rst
|
|
76
|
+
docs/auto_examples/plot_custom_dataset_example.ipynb
|
|
77
|
+
docs/auto_examples/plot_custom_dataset_example.rst
|
|
78
|
+
docs/auto_examples/plot_dataset_example.ipynb
|
|
79
|
+
docs/auto_examples/plot_dataset_example.rst
|
|
80
|
+
docs/auto_examples/plot_load_save_datasets.ipynb
|
|
81
|
+
docs/auto_examples/plot_load_save_datasets.rst
|
|
82
|
+
docs/auto_examples/plot_mne_dataset_example.ipynb
|
|
83
|
+
docs/auto_examples/plot_mne_dataset_example.rst
|
|
84
|
+
docs/auto_examples/plot_regression.ipynb
|
|
85
|
+
docs/auto_examples/plot_regression.rst
|
|
86
|
+
docs/auto_examples/plot_relative_positioning.ipynb
|
|
87
|
+
docs/auto_examples/plot_relative_positioning.rst
|
|
88
|
+
docs/auto_examples/plot_sleep_staging.ipynb
|
|
89
|
+
docs/auto_examples/plot_sleep_staging.rst
|
|
90
|
+
docs/auto_examples/plot_split_dataset.ipynb
|
|
91
|
+
docs/auto_examples/plot_split_dataset.rst
|
|
92
|
+
docs/auto_examples/sg_execution_times.rst
|
|
93
|
+
docs/auto_examples/tuh_eeg_corpus.ipynb
|
|
94
|
+
docs/auto_examples/tuh_eeg_corpus.rst
|
|
95
|
+
docs/generated/braindecode.classifier.EEGClassifier.rst
|
|
96
|
+
docs/generated/braindecode.datasets.BaseConcatDataset.rst
|
|
97
|
+
docs/generated/braindecode.datasets.BaseDataset.rst
|
|
98
|
+
docs/generated/braindecode.datasets.MOABBDataset.rst
|
|
99
|
+
docs/generated/braindecode.datasets.SleepPhysionet.rst
|
|
100
|
+
docs/generated/braindecode.datasets.TUH.rst
|
|
101
|
+
docs/generated/braindecode.datasets.TUHAbnormal.rst
|
|
102
|
+
docs/generated/braindecode.datasets.WindowsDataset.rst
|
|
103
|
+
docs/generated/braindecode.datautil.Preprocessor.rst
|
|
104
|
+
docs/generated/braindecode.datautil.create_fixed_length_windows.rst
|
|
105
|
+
docs/generated/braindecode.datautil.create_from_X_y.rst
|
|
106
|
+
docs/generated/braindecode.datautil.create_from_mne_epochs.rst
|
|
107
|
+
docs/generated/braindecode.datautil.create_from_mne_raw.rst
|
|
108
|
+
docs/generated/braindecode.datautil.create_windows_from_events.rst
|
|
109
|
+
docs/generated/braindecode.datautil.exponential_moving_demean.rst
|
|
110
|
+
docs/generated/braindecode.datautil.exponential_moving_standardize.rst
|
|
111
|
+
docs/generated/braindecode.datautil.filterbank.rst
|
|
112
|
+
docs/generated/braindecode.datautil.load_concat_dataset.rst
|
|
113
|
+
docs/generated/braindecode.datautil.preprocess.rst
|
|
114
|
+
docs/generated/braindecode.datautil.save_concat_dataset.rst
|
|
115
|
+
docs/generated/braindecode.datautil.scale.rst
|
|
116
|
+
docs/generated/braindecode.datautil.zscore.rst
|
|
117
|
+
docs/generated/braindecode.models.Deep4Net.rst
|
|
118
|
+
docs/generated/braindecode.models.EEGNetv1.rst
|
|
119
|
+
docs/generated/braindecode.models.EEGNetv4.rst
|
|
120
|
+
docs/generated/braindecode.models.EEGResNet.rst
|
|
121
|
+
docs/generated/braindecode.models.HybridNet.rst
|
|
122
|
+
docs/generated/braindecode.models.ShallowFBCSPNet.rst
|
|
123
|
+
docs/generated/braindecode.models.SleepStagerChambon2018.rst
|
|
124
|
+
docs/generated/braindecode.models.TCN.rst
|
|
125
|
+
docs/generated/braindecode.models.get_output_shape.rst
|
|
126
|
+
docs/generated/braindecode.regressor.EEGRegressor.rst
|
|
127
|
+
docs/generated/braindecode.samplers.RecordingSampler.rst
|
|
128
|
+
docs/generated/braindecode.samplers.RelativePositioningSampler.rst
|
|
129
|
+
docs/generated/braindecode.training.CroppedLoss.rst
|
|
130
|
+
docs/generated/braindecode.training.CroppedTrialEpochScoring.rst
|
|
131
|
+
docs/generated/braindecode.training.PostEpochTrainScoring.rst
|
|
132
|
+
docs/generated/braindecode.training.trial_preds_from_window_preds.rst
|
|
133
|
+
docs/generated/braindecode.util.set_random_seeds.rst
|
|
134
|
+
docs/generated/braindecode.visualization.compute_amplitude_gradients.rst
|
|
135
|
+
test/__init__.py
|
|
136
|
+
test/acceptance_tests/__init__.py
|
|
137
|
+
test/acceptance_tests/test_cropped_decoding.py
|
|
138
|
+
test/acceptance_tests/test_eeg_classifier.py
|
|
139
|
+
test/acceptance_tests/test_model_architectures.py
|
|
140
|
+
test/acceptance_tests/test_trialwise_decoding.py
|
|
141
|
+
test/unit_tests/__init__.py
|
|
142
|
+
test/unit_tests/test_eeg_classifier.py
|
|
143
|
+
test/unit_tests/test_eeg_regressor.py
|
|
144
|
+
test/unit_tests/test_scoring.py
|
|
145
|
+
test/unit_tests/test_util.py
|
|
146
|
+
test/unit_tests/datasets/__init__.py
|
|
147
|
+
test/unit_tests/datasets/test_dataset.py
|
|
148
|
+
test/unit_tests/datasets/test_mne.py
|
|
149
|
+
test/unit_tests/datasets/test_sleep_physionet.py
|
|
150
|
+
test/unit_tests/datasets/test_tuh.py
|
|
151
|
+
test/unit_tests/datasets/test_xy.py
|
|
152
|
+
test/unit_tests/datautil/__init__.py
|
|
153
|
+
test/unit_tests/datautil/test_preprocess.py
|
|
154
|
+
test/unit_tests/datautil/test_serialization.py
|
|
155
|
+
test/unit_tests/datautil/test_windowers.py
|
|
156
|
+
test/unit_tests/models/__init__.py
|
|
157
|
+
test/unit_tests/models/test_models.py
|
|
158
|
+
test/unit_tests/models/test_util.py
|
|
159
|
+
test/unit_tests/visualization/__init__.py
|
|
160
|
+
test/unit_tests/visualization/test_gradients.py
|
|
@@ -0,0 +1,124 @@
|
|
|
1
|
+
Metadata-Version: 1.1
|
|
2
|
+
Name: Braindecode
|
|
3
|
+
Version: 0.5.1
|
|
4
|
+
Summary: A deep learning toolbox to decode raw time-domain EEG.
|
|
5
|
+
Home-page: https://github.com/braindecode/braindecode
|
|
6
|
+
Author: Robin Tibor Schirrmeister
|
|
7
|
+
Author-email: robintibor@gmail.com
|
|
8
|
+
License: BSD 3-Clause
|
|
9
|
+
Description: Braindecode
|
|
10
|
+
===========
|
|
11
|
+
|
|
12
|
+
.. image:: https://badges.gitter.im/braindecodechat/community.svg
|
|
13
|
+
:alt: Join the chat at https://gitter.im/braindecodechat/community
|
|
14
|
+
:target: https://gitter.im/braindecodechat/community?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge
|
|
15
|
+
|
|
16
|
+
.. image:: https://github.com/braindecode/braindecode/workflows/tests-and-docs/badge.svg
|
|
17
|
+
:target: https://github.com/braindecode/braindecode/actions
|
|
18
|
+
|
|
19
|
+
.. image:: https://circleci.com/gh/braindecode/braindecode.svg?style=svg
|
|
20
|
+
:target: https://circleci.com/gh/braindecode/braindecode
|
|
21
|
+
:alt: Doc build on CircleCI
|
|
22
|
+
|
|
23
|
+
.. image:: https://codecov.io/gh/braindecode/braindecode/branch/master/graph/badge.svg
|
|
24
|
+
:target: https://codecov.io/gh/braindecode/braindecode
|
|
25
|
+
:alt: Code Coverage
|
|
26
|
+
|
|
27
|
+
A deep learning toolbox to decode raw time-domain EEG.
|
|
28
|
+
|
|
29
|
+
For EEG researchers who want to work with deep learning and
|
|
30
|
+
deep learning researchers who want to work with EEG data.
|
|
31
|
+
For now focused on convolutional networks.
|
|
32
|
+
|
|
33
|
+
|
|
34
|
+
Installation
|
|
35
|
+
============
|
|
36
|
+
|
|
37
|
+
1. Install pytorch from http://pytorch.org/ (you don't need to install torchvision).
|
|
38
|
+
|
|
39
|
+
2. Install `MOABB <https://github.com/NeuroTechX/moabb>`_ via pip (needed if you want to use MOABB datasets utilities):
|
|
40
|
+
|
|
41
|
+
.. code-block:: bash
|
|
42
|
+
|
|
43
|
+
pip install moabb
|
|
44
|
+
|
|
45
|
+
3. Install latest release of braindecode via pip:
|
|
46
|
+
|
|
47
|
+
.. code-block:: bash
|
|
48
|
+
|
|
49
|
+
pip install braindecode
|
|
50
|
+
|
|
51
|
+
alternatively, if you use conda, you could create a dedicated environment with the following:
|
|
52
|
+
|
|
53
|
+
.. code-block:: bash
|
|
54
|
+
|
|
55
|
+
curl -O https://raw.githubusercontent.com/braindecode/braindecode/master/environment.yml
|
|
56
|
+
conda env create -f environment.yml
|
|
57
|
+
conda activate braindecode
|
|
58
|
+
|
|
59
|
+
alternatively, install the latest version of braindecode via pip:
|
|
60
|
+
|
|
61
|
+
.. code-block:: bash
|
|
62
|
+
|
|
63
|
+
pip install -U https://api.github.com/repos/braindecode/braindecode/zipball/master
|
|
64
|
+
|
|
65
|
+
|
|
66
|
+
Documentation
|
|
67
|
+
=============
|
|
68
|
+
|
|
69
|
+
Documentation is online under https://braindecode.org
|
|
70
|
+
|
|
71
|
+
|
|
72
|
+
Dataset
|
|
73
|
+
=======
|
|
74
|
+
The high-gamma dataset used in our publication (see below), including trained models, is available under:
|
|
75
|
+
https://web.gin.g-node.org/robintibor/high-gamma-dataset/
|
|
76
|
+
|
|
77
|
+
|
|
78
|
+
Citing
|
|
79
|
+
======
|
|
80
|
+
|
|
81
|
+
If you use this code in a scientific publication, please cite us as:
|
|
82
|
+
|
|
83
|
+
.. code-block:: bibtex
|
|
84
|
+
|
|
85
|
+
@article {HBM:HBM23730,
|
|
86
|
+
author = {Schirrmeister, Robin Tibor and Springenberg, Jost Tobias and Fiederer,
|
|
87
|
+
Lukas Dominique Josef and Glasstetter, Martin and Eggensperger, Katharina and Tangermann, Michael and
|
|
88
|
+
Hutter, Frank and Burgard, Wolfram and Ball, Tonio},
|
|
89
|
+
title = {Deep learning with convolutional neural networks for EEG decoding and visualization},
|
|
90
|
+
journal = {Human Brain Mapping},
|
|
91
|
+
issn = {1097-0193},
|
|
92
|
+
url = {http://dx.doi.org/10.1002/hbm.23730},
|
|
93
|
+
doi = {10.1002/hbm.23730},
|
|
94
|
+
month = {aug},
|
|
95
|
+
year = {2017},
|
|
96
|
+
keywords = {electroencephalography, EEG analysis, machine learning, end-to-end learning, brain–machine interface,
|
|
97
|
+
brain–computer interface, model interpretability, brain mapping},
|
|
98
|
+
}
|
|
99
|
+
|
|
100
|
+
as well as the `MNE-Python <https://mne.tools>`_ software that is used by braindecode:
|
|
101
|
+
|
|
102
|
+
.. code-block:: bibtex
|
|
103
|
+
|
|
104
|
+
@article{10.3389/fnins.2013.00267,
|
|
105
|
+
author={Gramfort, Alexandre and Luessi, Martin and Larson, Eric and Engemann, Denis and Strohmeier, Daniel and Brodbeck, Christian and Goj, Roman and Jas, Mainak and Brooks, Teon and Parkkonen, Lauri and Hämäläinen, Matti},
|
|
106
|
+
title={{MEG and EEG data analysis with MNE-Python}},
|
|
107
|
+
journal={Frontiers in Neuroscience},
|
|
108
|
+
volume={7},
|
|
109
|
+
pages={267},
|
|
110
|
+
year={2013},
|
|
111
|
+
url={https://www.frontiersin.org/article/10.3389/fnins.2013.00267},
|
|
112
|
+
doi={10.3389/fnins.2013.00267},
|
|
113
|
+
issn={1662-453X},
|
|
114
|
+
}
|
|
115
|
+
|
|
116
|
+
Keywords: eeg deep-learning brain-state-decoding
|
|
117
|
+
Platform: UNKNOWN
|
|
118
|
+
Classifier: Development Status :: 3 - Alpha
|
|
119
|
+
Classifier: Intended Audience :: Developers
|
|
120
|
+
Classifier: Intended Audience :: Science/Research
|
|
121
|
+
Classifier: Topic :: Software Development :: Build Tools
|
|
122
|
+
Classifier: Topic :: Scientific/Engineering :: Artificial Intelligence
|
|
123
|
+
Classifier: License :: OSI Approved :: BSD License
|
|
124
|
+
Classifier: Programming Language :: Python :: 3.7
|
|
@@ -0,0 +1,106 @@
|
|
|
1
|
+
Braindecode
|
|
2
|
+
===========
|
|
3
|
+
|
|
4
|
+
.. image:: https://badges.gitter.im/braindecodechat/community.svg
|
|
5
|
+
:alt: Join the chat at https://gitter.im/braindecodechat/community
|
|
6
|
+
:target: https://gitter.im/braindecodechat/community?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge
|
|
7
|
+
|
|
8
|
+
.. image:: https://github.com/braindecode/braindecode/workflows/tests-and-docs/badge.svg
|
|
9
|
+
:target: https://github.com/braindecode/braindecode/actions
|
|
10
|
+
|
|
11
|
+
.. image:: https://circleci.com/gh/braindecode/braindecode.svg?style=svg
|
|
12
|
+
:target: https://circleci.com/gh/braindecode/braindecode
|
|
13
|
+
:alt: Doc build on CircleCI
|
|
14
|
+
|
|
15
|
+
.. image:: https://codecov.io/gh/braindecode/braindecode/branch/master/graph/badge.svg
|
|
16
|
+
:target: https://codecov.io/gh/braindecode/braindecode
|
|
17
|
+
:alt: Code Coverage
|
|
18
|
+
|
|
19
|
+
A deep learning toolbox to decode raw time-domain EEG.
|
|
20
|
+
|
|
21
|
+
For EEG researchers who want to work with deep learning and
|
|
22
|
+
deep learning researchers who want to work with EEG data.
|
|
23
|
+
For now focused on convolutional networks.
|
|
24
|
+
|
|
25
|
+
|
|
26
|
+
Installation
|
|
27
|
+
============
|
|
28
|
+
|
|
29
|
+
1. Install pytorch from http://pytorch.org/ (you don't need to install torchvision).
|
|
30
|
+
|
|
31
|
+
2. Install `MOABB <https://github.com/NeuroTechX/moabb>`_ via pip (needed if you want to use MOABB datasets utilities):
|
|
32
|
+
|
|
33
|
+
.. code-block:: bash
|
|
34
|
+
|
|
35
|
+
pip install moabb
|
|
36
|
+
|
|
37
|
+
3. Install latest release of braindecode via pip:
|
|
38
|
+
|
|
39
|
+
.. code-block:: bash
|
|
40
|
+
|
|
41
|
+
pip install braindecode
|
|
42
|
+
|
|
43
|
+
alternatively, if you use conda, you could create a dedicated environment with the following:
|
|
44
|
+
|
|
45
|
+
.. code-block:: bash
|
|
46
|
+
|
|
47
|
+
curl -O https://raw.githubusercontent.com/braindecode/braindecode/master/environment.yml
|
|
48
|
+
conda env create -f environment.yml
|
|
49
|
+
conda activate braindecode
|
|
50
|
+
|
|
51
|
+
alternatively, install the latest version of braindecode via pip:
|
|
52
|
+
|
|
53
|
+
.. code-block:: bash
|
|
54
|
+
|
|
55
|
+
pip install -U https://api.github.com/repos/braindecode/braindecode/zipball/master
|
|
56
|
+
|
|
57
|
+
|
|
58
|
+
Documentation
|
|
59
|
+
=============
|
|
60
|
+
|
|
61
|
+
Documentation is online under https://braindecode.org
|
|
62
|
+
|
|
63
|
+
|
|
64
|
+
Dataset
|
|
65
|
+
=======
|
|
66
|
+
The high-gamma dataset used in our publication (see below), including trained models, is available under:
|
|
67
|
+
https://web.gin.g-node.org/robintibor/high-gamma-dataset/
|
|
68
|
+
|
|
69
|
+
|
|
70
|
+
Citing
|
|
71
|
+
======
|
|
72
|
+
|
|
73
|
+
If you use this code in a scientific publication, please cite us as:
|
|
74
|
+
|
|
75
|
+
.. code-block:: bibtex
|
|
76
|
+
|
|
77
|
+
@article {HBM:HBM23730,
|
|
78
|
+
author = {Schirrmeister, Robin Tibor and Springenberg, Jost Tobias and Fiederer,
|
|
79
|
+
Lukas Dominique Josef and Glasstetter, Martin and Eggensperger, Katharina and Tangermann, Michael and
|
|
80
|
+
Hutter, Frank and Burgard, Wolfram and Ball, Tonio},
|
|
81
|
+
title = {Deep learning with convolutional neural networks for EEG decoding and visualization},
|
|
82
|
+
journal = {Human Brain Mapping},
|
|
83
|
+
issn = {1097-0193},
|
|
84
|
+
url = {http://dx.doi.org/10.1002/hbm.23730},
|
|
85
|
+
doi = {10.1002/hbm.23730},
|
|
86
|
+
month = {aug},
|
|
87
|
+
year = {2017},
|
|
88
|
+
keywords = {electroencephalography, EEG analysis, machine learning, end-to-end learning, brain–machine interface,
|
|
89
|
+
brain–computer interface, model interpretability, brain mapping},
|
|
90
|
+
}
|
|
91
|
+
|
|
92
|
+
as well as the `MNE-Python <https://mne.tools>`_ software that is used by braindecode:
|
|
93
|
+
|
|
94
|
+
.. code-block:: bibtex
|
|
95
|
+
|
|
96
|
+
@article{10.3389/fnins.2013.00267,
|
|
97
|
+
author={Gramfort, Alexandre and Luessi, Martin and Larson, Eric and Engemann, Denis and Strohmeier, Daniel and Brodbeck, Christian and Goj, Roman and Jas, Mainak and Brooks, Teon and Parkkonen, Lauri and Hämäläinen, Matti},
|
|
98
|
+
title={{MEG and EEG data analysis with MNE-Python}},
|
|
99
|
+
journal={Frontiers in Neuroscience},
|
|
100
|
+
volume={7},
|
|
101
|
+
pages={267},
|
|
102
|
+
year={2013},
|
|
103
|
+
url={https://www.frontiersin.org/article/10.3389/fnins.2013.00267},
|
|
104
|
+
doi={10.3389/fnins.2013.00267},
|
|
105
|
+
issn={1662-453X},
|
|
106
|
+
}
|