Braindecode 1.3.0.dev183348003__tar.gz → 1.3.0.dev183374645__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-1.3.0.dev183348003/braindecode.egg-info → braindecode-1.3.0.dev183374645}/PKG-INFO +84 -95
- braindecode-1.3.0.dev183374645/README.rst +135 -0
- {braindecode-1.3.0.dev183348003 → braindecode-1.3.0.dev183374645}/braindecode/augmentation/__init__.py +3 -1
- {braindecode-1.3.0.dev183348003 → braindecode-1.3.0.dev183374645}/braindecode/augmentation/base.py +5 -8
- {braindecode-1.3.0.dev183348003 → braindecode-1.3.0.dev183374645}/braindecode/augmentation/functional.py +22 -25
- {braindecode-1.3.0.dev183348003 → braindecode-1.3.0.dev183374645}/braindecode/augmentation/transforms.py +42 -51
- {braindecode-1.3.0.dev183348003 → braindecode-1.3.0.dev183374645}/braindecode/classifier.py +8 -8
- {braindecode-1.3.0.dev183348003 → braindecode-1.3.0.dev183374645}/braindecode/datasets/__init__.py +3 -1
- {braindecode-1.3.0.dev183348003 → braindecode-1.3.0.dev183374645}/braindecode/datasets/base.py +11 -9
- {braindecode-1.3.0.dev183348003 → braindecode-1.3.0.dev183374645}/braindecode/datasets/bbci.py +14 -13
- {braindecode-1.3.0.dev183348003 → braindecode-1.3.0.dev183374645}/braindecode/datasets/bcicomp.py +5 -4
- {braindecode-1.3.0.dev183348003 → braindecode-1.3.0.dev183374645}/braindecode/datasets/bids/datasets.py +1 -1
- {braindecode-1.3.0.dev183348003 → braindecode-1.3.0.dev183374645}/braindecode/datasets/bids/hub.py +1 -1
- {braindecode-1.3.0.dev183348003 → braindecode-1.3.0.dev183374645}/braindecode/datasets/bids/iterable.py +1 -3
- braindecode-1.3.0.dev183374645/braindecode/datasets/chb_mit.py +172 -0
- {braindecode-1.3.0.dev183348003 → braindecode-1.3.0.dev183374645}/braindecode/datasets/mne.py +19 -19
- {braindecode-1.3.0.dev183348003 → braindecode-1.3.0.dev183374645}/braindecode/datasets/moabb.py +10 -10
- {braindecode-1.3.0.dev183348003 → braindecode-1.3.0.dev183374645}/braindecode/datasets/nmt.py +5 -4
- {braindecode-1.3.0.dev183348003 → braindecode-1.3.0.dev183374645}/braindecode/datasets/siena.py +3 -1
- {braindecode-1.3.0.dev183348003 → braindecode-1.3.0.dev183374645}/braindecode/datasets/sleep_physio_challe_18.py +5 -3
- {braindecode-1.3.0.dev183348003 → braindecode-1.3.0.dev183374645}/braindecode/datasets/sleep_physionet.py +5 -5
- {braindecode-1.3.0.dev183348003 → braindecode-1.3.0.dev183374645}/braindecode/datasets/tuh.py +18 -21
- {braindecode-1.3.0.dev183348003 → braindecode-1.3.0.dev183374645}/braindecode/datasets/xy.py +9 -10
- {braindecode-1.3.0.dev183348003 → braindecode-1.3.0.dev183374645}/braindecode/datautil/__init__.py +3 -1
- {braindecode-1.3.0.dev183348003 → braindecode-1.3.0.dev183374645}/braindecode/datautil/serialization.py +19 -21
- {braindecode-1.3.0.dev183348003 → braindecode-1.3.0.dev183374645}/braindecode/datautil/util.py +12 -11
- {braindecode-1.3.0.dev183348003 → braindecode-1.3.0.dev183374645}/braindecode/eegneuralnet.py +4 -2
- {braindecode-1.3.0.dev183348003 → braindecode-1.3.0.dev183374645}/braindecode/functional/functions.py +10 -7
- {braindecode-1.3.0.dev183348003 → braindecode-1.3.0.dev183374645}/braindecode/functional/initialization.py +2 -3
- {braindecode-1.3.0.dev183348003 → braindecode-1.3.0.dev183374645}/braindecode/models/__init__.py +3 -1
- {braindecode-1.3.0.dev183348003 → braindecode-1.3.0.dev183374645}/braindecode/models/atcnet.py +27 -31
- {braindecode-1.3.0.dev183348003 → braindecode-1.3.0.dev183374645}/braindecode/models/attentionbasenet.py +37 -33
- {braindecode-1.3.0.dev183348003 → braindecode-1.3.0.dev183374645}/braindecode/models/attn_sleep.py +16 -16
- {braindecode-1.3.0.dev183348003 → braindecode-1.3.0.dev183374645}/braindecode/models/base.py +4 -4
- {braindecode-1.3.0.dev183348003 → braindecode-1.3.0.dev183374645}/braindecode/models/bendr.py +40 -39
- {braindecode-1.3.0.dev183348003 → braindecode-1.3.0.dev183374645}/braindecode/models/biot.py +5 -5
- {braindecode-1.3.0.dev183348003 → braindecode-1.3.0.dev183374645}/braindecode/models/brainmodule.py +2 -5
- {braindecode-1.3.0.dev183348003 → braindecode-1.3.0.dev183374645}/braindecode/models/contrawr.py +3 -3
- {braindecode-1.3.0.dev183348003 → braindecode-1.3.0.dev183374645}/braindecode/models/ctnet.py +1 -1
- {braindecode-1.3.0.dev183348003 → braindecode-1.3.0.dev183374645}/braindecode/models/deep4.py +1 -1
- {braindecode-1.3.0.dev183348003 → braindecode-1.3.0.dev183374645}/braindecode/models/deepsleepnet.py +3 -3
- {braindecode-1.3.0.dev183348003 → braindecode-1.3.0.dev183374645}/braindecode/models/eegconformer.py +3 -3
- {braindecode-1.3.0.dev183348003 → braindecode-1.3.0.dev183374645}/braindecode/models/eeginception_erp.py +1 -1
- {braindecode-1.3.0.dev183348003 → braindecode-1.3.0.dev183374645}/braindecode/models/eeginception_mi.py +3 -3
- {braindecode-1.3.0.dev183348003 → braindecode-1.3.0.dev183374645}/braindecode/models/eegitnet.py +2 -2
- {braindecode-1.3.0.dev183348003 → braindecode-1.3.0.dev183374645}/braindecode/models/eegminer.py +1 -1
- {braindecode-1.3.0.dev183348003 → braindecode-1.3.0.dev183374645}/braindecode/models/eegnet.py +2 -2
- {braindecode-1.3.0.dev183348003 → braindecode-1.3.0.dev183374645}/braindecode/models/eegnex.py +1 -1
- {braindecode-1.3.0.dev183348003 → braindecode-1.3.0.dev183374645}/braindecode/models/eegsimpleconv.py +1 -1
- {braindecode-1.3.0.dev183348003 → braindecode-1.3.0.dev183374645}/braindecode/models/eegsym.py +7 -7
- {braindecode-1.3.0.dev183348003 → braindecode-1.3.0.dev183374645}/braindecode/models/eegtcnet.py +3 -3
- {braindecode-1.3.0.dev183348003 → braindecode-1.3.0.dev183374645}/braindecode/models/fbcnet.py +1 -1
- {braindecode-1.3.0.dev183348003 → braindecode-1.3.0.dev183374645}/braindecode/models/fblightconvnet.py +2 -2
- {braindecode-1.3.0.dev183348003 → braindecode-1.3.0.dev183374645}/braindecode/models/fbmsnet.py +2 -2
- {braindecode-1.3.0.dev183348003 → braindecode-1.3.0.dev183374645}/braindecode/models/hybrid.py +1 -1
- {braindecode-1.3.0.dev183348003 → braindecode-1.3.0.dev183374645}/braindecode/models/ifnet.py +3 -3
- {braindecode-1.3.0.dev183348003 → braindecode-1.3.0.dev183374645}/braindecode/models/labram.py +6 -6
- {braindecode-1.3.0.dev183348003 → braindecode-1.3.0.dev183374645}/braindecode/models/luna.py +4 -4
- {braindecode-1.3.0.dev183348003 → braindecode-1.3.0.dev183374645}/braindecode/models/medformer.py +6 -8
- {braindecode-1.3.0.dev183348003 → braindecode-1.3.0.dev183374645}/braindecode/models/msvtnet.py +5 -5
- {braindecode-1.3.0.dev183348003 → braindecode-1.3.0.dev183374645}/braindecode/models/patchedtransformer.py +7 -7
- {braindecode-1.3.0.dev183348003 → braindecode-1.3.0.dev183374645}/braindecode/models/reve.py +6 -12
- {braindecode-1.3.0.dev183348003 → braindecode-1.3.0.dev183374645}/braindecode/models/sccnet.py +1 -1
- {braindecode-1.3.0.dev183348003 → braindecode-1.3.0.dev183374645}/braindecode/models/shallow_fbcsp.py +1 -1
- {braindecode-1.3.0.dev183348003 → braindecode-1.3.0.dev183374645}/braindecode/models/signal_jepa.py +8 -8
- {braindecode-1.3.0.dev183348003 → braindecode-1.3.0.dev183374645}/braindecode/models/sinc_shallow.py +2 -2
- {braindecode-1.3.0.dev183348003 → braindecode-1.3.0.dev183374645}/braindecode/models/sleep_stager_blanco_2020.py +1 -1
- {braindecode-1.3.0.dev183348003 → braindecode-1.3.0.dev183374645}/braindecode/models/sleep_stager_chambon_2018.py +1 -1
- {braindecode-1.3.0.dev183348003 → braindecode-1.3.0.dev183374645}/braindecode/models/sparcnet.py +4 -4
- {braindecode-1.3.0.dev183348003 → braindecode-1.3.0.dev183374645}/braindecode/models/sstdpn.py +869 -869
- {braindecode-1.3.0.dev183348003 → braindecode-1.3.0.dev183374645}/braindecode/models/syncnet.py +1 -1
- {braindecode-1.3.0.dev183348003 → braindecode-1.3.0.dev183374645}/braindecode/models/tcn.py +2 -2
- {braindecode-1.3.0.dev183348003 → braindecode-1.3.0.dev183374645}/braindecode/models/tidnet.py +2 -2
- {braindecode-1.3.0.dev183348003 → braindecode-1.3.0.dev183374645}/braindecode/models/tsinception.py +2 -2
- {braindecode-1.3.0.dev183348003 → braindecode-1.3.0.dev183374645}/braindecode/models/usleep.py +4 -4
- {braindecode-1.3.0.dev183348003 → braindecode-1.3.0.dev183374645}/braindecode/modules/activation.py +3 -29
- {braindecode-1.3.0.dev183348003 → braindecode-1.3.0.dev183374645}/braindecode/modules/attention.py +0 -123
- {braindecode-1.3.0.dev183348003 → braindecode-1.3.0.dev183374645}/braindecode/modules/blocks.py +0 -50
- {braindecode-1.3.0.dev183348003 → braindecode-1.3.0.dev183374645}/braindecode/modules/convolution.py +0 -53
- {braindecode-1.3.0.dev183348003 → braindecode-1.3.0.dev183374645}/braindecode/modules/filter.py +0 -31
- {braindecode-1.3.0.dev183348003 → braindecode-1.3.0.dev183374645}/braindecode/modules/layers.py +0 -50
- {braindecode-1.3.0.dev183348003 → braindecode-1.3.0.dev183374645}/braindecode/modules/linear.py +1 -22
- {braindecode-1.3.0.dev183348003 → braindecode-1.3.0.dev183374645}/braindecode/modules/stats.py +0 -10
- {braindecode-1.3.0.dev183348003 → braindecode-1.3.0.dev183374645}/braindecode/modules/util.py +0 -9
- {braindecode-1.3.0.dev183348003 → braindecode-1.3.0.dev183374645}/braindecode/modules/wrapper.py +0 -17
- {braindecode-1.3.0.dev183348003 → braindecode-1.3.0.dev183374645}/braindecode/regressor.py +11 -12
- {braindecode-1.3.0.dev183348003 → braindecode-1.3.0.dev183374645}/braindecode/util.py +28 -38
- braindecode-1.3.0.dev183374645/braindecode/version.py +1 -0
- {braindecode-1.3.0.dev183348003 → braindecode-1.3.0.dev183374645/braindecode.egg-info}/PKG-INFO +84 -95
- {braindecode-1.3.0.dev183348003 → braindecode-1.3.0.dev183374645}/braindecode.egg-info/SOURCES.txt +0 -2
- braindecode-1.3.0.dev183374645/docs/api.rst +775 -0
- braindecode-1.3.0.dev183374645/docs/cite.rst +72 -0
- braindecode-1.3.0.dev183374645/docs/help.rst +62 -0
- braindecode-1.3.0.dev183374645/docs/index.rst +50 -0
- {braindecode-1.3.0.dev183348003 → braindecode-1.3.0.dev183374645}/docs/install/install.rst +6 -5
- {braindecode-1.3.0.dev183348003 → braindecode-1.3.0.dev183374645}/docs/install/install_pip.rst +10 -16
- braindecode-1.3.0.dev183374645/docs/install/install_source.rst +71 -0
- braindecode-1.3.0.dev183374645/docs/models/categorization/attention.rst +31 -0
- braindecode-1.3.0.dev183374645/docs/models/categorization/channel.rst +31 -0
- braindecode-1.3.0.dev183374645/docs/models/categorization/convolution.rst +33 -0
- braindecode-1.3.0.dev183374645/docs/models/categorization/filterbank.rst +31 -0
- braindecode-1.3.0.dev183374645/docs/models/categorization/gnn.rst +27 -0
- braindecode-1.3.0.dev183374645/docs/models/categorization/interpretable.rst +31 -0
- braindecode-1.3.0.dev183374645/docs/models/categorization/lbm.rst +31 -0
- braindecode-1.3.0.dev183374645/docs/models/categorization/recurrent.rst +31 -0
- braindecode-1.3.0.dev183374645/docs/models/categorization/spd.rst +31 -0
- braindecode-1.3.0.dev183374645/docs/models/models.rst +78 -0
- braindecode-1.3.0.dev183374645/docs/models/models_categorization.rst +201 -0
- braindecode-1.3.0.dev183374645/docs/models/models_table.rst +191 -0
- braindecode-1.3.0.dev183374645/docs/models/models_visualization.rst +31 -0
- braindecode-1.3.0.dev183374645/docs/sg_execution_times.rst +112 -0
- braindecode-1.3.0.dev183374645/docs/whats_new.rst +459 -0
- braindecode-1.3.0.dev183348003/README.rst +0 -146
- braindecode-1.3.0.dev183348003/braindecode/datasets/chb_mit.py +0 -163
- braindecode-1.3.0.dev183348003/braindecode/version.py +0 -1
- braindecode-1.3.0.dev183348003/docs/_templates/autosummary/class_in_subdir.rst +0 -37
- braindecode-1.3.0.dev183348003/docs/_templates/autosummary/function_in_subdir.rst +0 -12
- braindecode-1.3.0.dev183348003/docs/api.rst +0 -798
- braindecode-1.3.0.dev183348003/docs/cite.rst +0 -72
- braindecode-1.3.0.dev183348003/docs/help.rst +0 -62
- braindecode-1.3.0.dev183348003/docs/index.rst +0 -48
- braindecode-1.3.0.dev183348003/docs/install/install_source.rst +0 -78
- braindecode-1.3.0.dev183348003/docs/models/categorization/attention.rst +0 -35
- braindecode-1.3.0.dev183348003/docs/models/categorization/channel.rst +0 -36
- braindecode-1.3.0.dev183348003/docs/models/categorization/convolution.rst +0 -42
- braindecode-1.3.0.dev183348003/docs/models/categorization/filterbank.rst +0 -35
- braindecode-1.3.0.dev183348003/docs/models/categorization/gnn.rst +0 -27
- braindecode-1.3.0.dev183348003/docs/models/categorization/interpretable.rst +0 -35
- braindecode-1.3.0.dev183348003/docs/models/categorization/lbm.rst +0 -35
- braindecode-1.3.0.dev183348003/docs/models/categorization/recurrent.rst +0 -35
- braindecode-1.3.0.dev183348003/docs/models/categorization/spd.rst +0 -35
- braindecode-1.3.0.dev183348003/docs/models/models.rst +0 -89
- braindecode-1.3.0.dev183348003/docs/models/models_categorization.rst +0 -244
- braindecode-1.3.0.dev183348003/docs/models/models_table.rst +0 -209
- braindecode-1.3.0.dev183348003/docs/models/models_visualization.rst +0 -33
- braindecode-1.3.0.dev183348003/docs/sg_execution_times.rst +0 -110
- braindecode-1.3.0.dev183348003/docs/whats_new.rst +0 -787
- {braindecode-1.3.0.dev183348003 → braindecode-1.3.0.dev183374645}/LICENSE.txt +0 -0
- {braindecode-1.3.0.dev183348003 → braindecode-1.3.0.dev183374645}/MANIFEST.in +0 -0
- {braindecode-1.3.0.dev183348003 → braindecode-1.3.0.dev183374645}/NOTICE.txt +0 -0
- {braindecode-1.3.0.dev183348003 → braindecode-1.3.0.dev183374645}/braindecode/__init__.py +0 -0
- {braindecode-1.3.0.dev183348003 → braindecode-1.3.0.dev183374645}/braindecode/datasets/bids/__init__.py +0 -0
- {braindecode-1.3.0.dev183348003 → braindecode-1.3.0.dev183374645}/braindecode/datasets/bids/format.py +0 -0
- {braindecode-1.3.0.dev183348003 → braindecode-1.3.0.dev183374645}/braindecode/datasets/bids/hub_format.py +0 -0
- {braindecode-1.3.0.dev183348003 → braindecode-1.3.0.dev183374645}/braindecode/datasets/bids/hub_io.py +0 -0
- {braindecode-1.3.0.dev183348003 → braindecode-1.3.0.dev183374645}/braindecode/datasets/bids/hub_validation.py +0 -0
- {braindecode-1.3.0.dev183348003 → braindecode-1.3.0.dev183374645}/braindecode/datasets/registry.py +0 -0
- {braindecode-1.3.0.dev183348003 → braindecode-1.3.0.dev183374645}/braindecode/datasets/utils.py +0 -0
- {braindecode-1.3.0.dev183348003 → braindecode-1.3.0.dev183374645}/braindecode/datautil/channel_utils.py +0 -0
- {braindecode-1.3.0.dev183348003 → braindecode-1.3.0.dev183374645}/braindecode/datautil/hub_formats.py +0 -0
- {braindecode-1.3.0.dev183348003 → braindecode-1.3.0.dev183374645}/braindecode/functional/__init__.py +0 -0
- {braindecode-1.3.0.dev183348003 → braindecode-1.3.0.dev183374645}/braindecode/models/config.py +0 -0
- {braindecode-1.3.0.dev183348003 → braindecode-1.3.0.dev183374645}/braindecode/models/summary.csv +0 -0
- {braindecode-1.3.0.dev183348003 → braindecode-1.3.0.dev183374645}/braindecode/models/util.py +0 -0
- {braindecode-1.3.0.dev183348003 → braindecode-1.3.0.dev183374645}/braindecode/modules/__init__.py +0 -0
- {braindecode-1.3.0.dev183348003 → braindecode-1.3.0.dev183374645}/braindecode/modules/parametrization.py +0 -0
- {braindecode-1.3.0.dev183348003 → braindecode-1.3.0.dev183374645}/braindecode/preprocessing/__init__.py +0 -0
- {braindecode-1.3.0.dev183348003 → braindecode-1.3.0.dev183374645}/braindecode/preprocessing/eegprep_preprocess.py +0 -0
- {braindecode-1.3.0.dev183348003 → braindecode-1.3.0.dev183374645}/braindecode/preprocessing/mne_preprocess.py +0 -0
- {braindecode-1.3.0.dev183348003 → braindecode-1.3.0.dev183374645}/braindecode/preprocessing/preprocess.py +0 -0
- {braindecode-1.3.0.dev183348003 → braindecode-1.3.0.dev183374645}/braindecode/preprocessing/util.py +0 -0
- {braindecode-1.3.0.dev183348003 → braindecode-1.3.0.dev183374645}/braindecode/preprocessing/windowers.py +0 -0
- {braindecode-1.3.0.dev183348003 → braindecode-1.3.0.dev183374645}/braindecode/samplers/__init__.py +0 -0
- {braindecode-1.3.0.dev183348003 → braindecode-1.3.0.dev183374645}/braindecode/samplers/base.py +0 -0
- {braindecode-1.3.0.dev183348003 → braindecode-1.3.0.dev183374645}/braindecode/samplers/ssl.py +0 -0
- {braindecode-1.3.0.dev183348003 → braindecode-1.3.0.dev183374645}/braindecode/training/__init__.py +0 -0
- {braindecode-1.3.0.dev183348003 → braindecode-1.3.0.dev183374645}/braindecode/training/callbacks.py +0 -0
- {braindecode-1.3.0.dev183348003 → braindecode-1.3.0.dev183374645}/braindecode/training/losses.py +0 -0
- {braindecode-1.3.0.dev183348003 → braindecode-1.3.0.dev183374645}/braindecode/training/scoring.py +0 -0
- {braindecode-1.3.0.dev183348003 → braindecode-1.3.0.dev183374645}/braindecode/visualization/__init__.py +0 -0
- {braindecode-1.3.0.dev183348003 → braindecode-1.3.0.dev183374645}/braindecode/visualization/confusion_matrices.py +0 -0
- {braindecode-1.3.0.dev183348003 → braindecode-1.3.0.dev183374645}/braindecode/visualization/gradients.py +0 -0
- {braindecode-1.3.0.dev183348003 → braindecode-1.3.0.dev183374645}/braindecode.egg-info/dependency_links.txt +0 -0
- {braindecode-1.3.0.dev183348003 → braindecode-1.3.0.dev183374645}/braindecode.egg-info/requires.txt +0 -0
- {braindecode-1.3.0.dev183348003 → braindecode-1.3.0.dev183374645}/braindecode.egg-info/top_level.txt +0 -0
- {braindecode-1.3.0.dev183348003 → braindecode-1.3.0.dev183374645}/docs/Makefile +0 -0
- {braindecode-1.3.0.dev183348003 → braindecode-1.3.0.dev183374645}/docs/_templates/autosummary/class.rst +0 -0
- {braindecode-1.3.0.dev183348003 → braindecode-1.3.0.dev183374645}/docs/_templates/autosummary/function.rst +0 -0
- {braindecode-1.3.0.dev183348003 → braindecode-1.3.0.dev183374645}/docs/conf.py +0 -0
- {braindecode-1.3.0.dev183348003 → braindecode-1.3.0.dev183374645}/pyproject.toml +0 -0
- {braindecode-1.3.0.dev183348003 → braindecode-1.3.0.dev183374645}/setup.cfg +0 -0
{braindecode-1.3.0.dev183348003/braindecode.egg-info → braindecode-1.3.0.dev183374645}/PKG-INFO
RENAMED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: braindecode
|
|
3
|
-
Version: 1.3.0.
|
|
3
|
+
Version: 1.3.0.dev183374645
|
|
4
4
|
Summary: Deep learning software to decode EEG, ECG or MEG signals
|
|
5
5
|
Author-email: Robin Tibor Schirrmeister <robintibor@gmail.com>, Bruno Aristimunha Pinto <b.aristimunha@gmail.com>, Alexandre Gramfort <agramfort@meta.com>
|
|
6
6
|
Maintainer-email: Alexandre Gramfort <agramfort@meta.com>, Bruno Aristimunha Pinto <b.aristimunha@gmail.com>, Robin Tibor Schirrmeister <robintibor@gmail.com>
|
|
@@ -82,149 +82,138 @@ Requires-Dist: braindecode[eegprep]; extra == "all"
|
|
|
82
82
|
Requires-Dist: braindecode[typing]; extra == "all"
|
|
83
83
|
Dynamic: license-file
|
|
84
84
|
|
|
85
|
-
.. image:: https://zenodo.org/badge/
|
|
86
|
-
|
|
87
|
-
|
|
85
|
+
.. image:: https://zenodo.org/badge/232335424.svg
|
|
86
|
+
:target: https://doi.org/10.5281/zenodo.8214376
|
|
87
|
+
:alt: DOI
|
|
88
|
+
|
|
89
|
+
.. image:: https://badges.gitter.im/braindecodechat/community.svg
|
|
90
|
+
:alt: Join the chat at https://gitter.im/braindecodechat/community
|
|
91
|
+
:target: https://gitter.im/braindecodechat/community?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge
|
|
88
92
|
|
|
89
93
|
.. image:: https://github.com/braindecode/braindecode/workflows/docs/badge.svg
|
|
90
|
-
|
|
91
|
-
:alt: Docs Build Status
|
|
94
|
+
:target: https://github.com/braindecode/braindecode/actions
|
|
92
95
|
|
|
93
|
-
.. image:: https://
|
|
94
|
-
|
|
95
|
-
|
|
96
|
+
.. image:: https://circleci.com/gh/braindecode/braindecode.svg?style=svg
|
|
97
|
+
:target: https://circleci.com/gh/braindecode/braindecode
|
|
98
|
+
:alt: Doc build on CircleCI
|
|
96
99
|
|
|
97
100
|
.. image:: https://codecov.io/gh/braindecode/braindecode/branch/master/graph/badge.svg
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
.. image:: https://img.shields.io/pypi/v/braindecode?color=blue&style=flat-square
|
|
102
|
-
:target: https://pypi.org/project/braindecode/
|
|
103
|
-
:alt: PyPI
|
|
104
|
-
|
|
105
|
-
.. image:: https://img.shields.io/pypi/v/braindecode?label=version&color=orange&style=flat-square
|
|
106
|
-
:target: https://pypi.org/project/braindecode/
|
|
107
|
-
:alt: Version
|
|
101
|
+
:target: https://codecov.io/gh/braindecode/braindecode
|
|
102
|
+
:alt: Code Coverage
|
|
108
103
|
|
|
109
|
-
.. image:: https://img.shields.io/pypi/pyversions/braindecode?style=flat-square
|
|
110
|
-
:target: https://pypi.org/project/braindecode/
|
|
111
|
-
:alt: Python versions
|
|
112
|
-
|
|
113
|
-
.. image:: https://pepy.tech/badge/braindecode
|
|
114
|
-
:target: https://pepy.tech/project/braindecode
|
|
115
|
-
:alt: Downloads
|
|
116
104
|
|
|
117
105
|
.. |Braindecode| image:: https://user-images.githubusercontent.com/42702466/177958779-b00628aa-9155-4c51-96d1-d8c345aff575.svg
|
|
118
|
-
|
|
119
106
|
.. _braindecode: braindecode.org/
|
|
120
107
|
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
#############
|
|
108
|
+
Braindecode
|
|
109
|
+
===========
|
|
124
110
|
|
|
125
111
|
Braindecode is an open-source Python toolbox for decoding raw electrophysiological brain
|
|
126
112
|
data with deep learning models. It includes dataset fetchers, data preprocessing and
|
|
127
|
-
visualization tools, as well as implementations of several deep learning
|
|
128
|
-
and data augmentations for analysis of EEG, ECoG and MEG.
|
|
113
|
+
visualization tools, as well as implementations of several deep learning
|
|
114
|
+
architectures and data augmentations for analysis of EEG, ECoG and MEG.
|
|
129
115
|
|
|
130
|
-
For neuroscientists who want to work with deep learning and
|
|
131
|
-
who want to work with neurophysiological data.
|
|
116
|
+
For neuroscientists who want to work with deep learning and
|
|
117
|
+
deep learning researchers who want to work with neurophysiological data.
|
|
132
118
|
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
119
|
+
|
|
120
|
+
Installation Braindecode
|
|
121
|
+
========================
|
|
136
122
|
|
|
137
123
|
1. Install pytorch from http://pytorch.org/ (you don't need to install torchvision).
|
|
138
|
-
|
|
139
|
-
|
|
124
|
+
|
|
125
|
+
2. If you want to download EEG datasets from `MOABB <https://github.com/NeuroTechX/moabb>`_, install it:
|
|
140
126
|
|
|
141
127
|
.. code-block:: bash
|
|
142
128
|
|
|
143
|
-
|
|
129
|
+
pip install moabb
|
|
144
130
|
|
|
145
131
|
3. Install latest release of braindecode via pip:
|
|
146
132
|
|
|
147
133
|
.. code-block:: bash
|
|
148
134
|
|
|
149
|
-
|
|
135
|
+
pip install braindecode
|
|
150
136
|
|
|
151
|
-
If you want to install the latest development version of braindecode, please refer to
|
|
152
|
-
`contributing page
|
|
153
|
-
<https://github.com/braindecode/braindecode/blob/master/CONTRIBUTING.md>`__
|
|
137
|
+
If you want to install the latest development version of braindecode, please refer to `contributing page <https://github.com/braindecode/braindecode/blob/master/CONTRIBUTING.md>`__
|
|
154
138
|
|
|
155
|
-
###############
|
|
156
|
-
Documentation
|
|
157
|
-
###############
|
|
158
139
|
|
|
159
|
-
Documentation
|
|
160
|
-
|
|
140
|
+
Documentation
|
|
141
|
+
=============
|
|
161
142
|
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
143
|
+
Documentation is online under https://braindecode.org, both in the stable and dev versions.
|
|
144
|
+
|
|
145
|
+
|
|
146
|
+
Contributing to Braindecode
|
|
147
|
+
===========================
|
|
165
148
|
|
|
166
149
|
Guidelines for contributing to the library can be found on the braindecode github:
|
|
167
150
|
|
|
168
151
|
https://github.com/braindecode/braindecode/blob/master/CONTRIBUTING.md
|
|
169
152
|
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
153
|
+
Braindecode chat
|
|
154
|
+
================
|
|
155
|
+
|
|
156
|
+
https://gitter.im/braindecodechat/community
|
|
157
|
+
|
|
158
|
+
Citing
|
|
159
|
+
======
|
|
173
160
|
|
|
174
|
-
If you use Braindecode in scientific work, please cite the software using the Zenodo DOI
|
|
175
|
-
shown in the badge below:
|
|
161
|
+
If you use Braindecode in scientific work, please cite the software using the Zenodo DOI shown in the badge below:
|
|
176
162
|
|
|
177
163
|
.. image:: https://zenodo.org/badge/232335424.svg
|
|
178
|
-
|
|
179
|
-
|
|
164
|
+
:target: https://doi.org/10.5281/zenodo.8214376
|
|
165
|
+
:alt: DOI
|
|
180
166
|
|
|
181
|
-
Additionally, we highly encourage you to cite the article that originally introduced
|
|
182
|
-
Braindecode library and has served as a foundational reference for many works
|
|
183
|
-
learning with EEG recordings. Please use the following reference:
|
|
167
|
+
Additionally, we highly encourage you to cite the article that originally introduced
|
|
168
|
+
the Braindecode library and has served as a foundational reference for many works
|
|
169
|
+
on deep learning with EEG recordings. Please use the following reference:
|
|
184
170
|
|
|
185
171
|
.. code-block:: bibtex
|
|
186
172
|
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
173
|
+
@article {HBM:HBM23730,
|
|
174
|
+
author = {Schirrmeister, Robin Tibor and Springenberg, Jost Tobias and Fiederer,
|
|
175
|
+
Lukas Dominique Josef and Glasstetter, Martin and Eggensperger, Katharina and Tangermann, Michael and
|
|
176
|
+
Hutter, Frank and Burgard, Wolfram and Ball, Tonio},
|
|
177
|
+
title = {Deep learning with convolutional neural networks for EEG decoding and visualization},
|
|
178
|
+
journal = {Human Brain Mapping},
|
|
179
|
+
issn = {1097-0193},
|
|
180
|
+
url = {http://dx.doi.org/10.1002/hbm.23730},
|
|
181
|
+
doi = {10.1002/hbm.23730},
|
|
182
|
+
month = {aug},
|
|
183
|
+
year = {2017},
|
|
184
|
+
keywords = {electroencephalography, EEG analysis, machine learning, end-to-end learning, brain–machine interface,
|
|
185
|
+
brain–computer interface, model interpretability, brain mapping},
|
|
186
|
+
}
|
|
201
187
|
|
|
202
188
|
as well as the `MNE-Python <https://mne.tools>`_ software that is used by braindecode:
|
|
203
189
|
|
|
204
190
|
.. code-block:: bibtex
|
|
205
191
|
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
192
|
+
@article{10.3389/fnins.2013.00267,
|
|
193
|
+
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},
|
|
194
|
+
title={{MEG and EEG data analysis with MNE-Python}},
|
|
195
|
+
journal={Frontiers in Neuroscience},
|
|
196
|
+
volume={7},
|
|
197
|
+
pages={267},
|
|
198
|
+
year={2013},
|
|
199
|
+
url={https://www.frontiersin.org/article/10.3389/fnins.2013.00267},
|
|
200
|
+
doi={10.3389/fnins.2013.00267},
|
|
201
|
+
issn={1662-453X},
|
|
202
|
+
}
|
|
203
|
+
|
|
204
|
+
|
|
205
|
+
|
|
206
|
+
|
|
207
|
+
Licensing
|
|
208
|
+
^^^^^^^^^
|
|
221
209
|
|
|
222
210
|
This project is primarily licensed under the BSD-3-Clause License.
|
|
223
211
|
|
|
224
212
|
Additional Components
|
|
225
|
-
|
|
213
|
+
~~~~~~~~~~~~~~~~~~~~~
|
|
226
214
|
|
|
227
|
-
Some components within this repository are licensed under the Creative Commons
|
|
228
|
-
|
|
215
|
+
Some components within this repository are licensed under the Creative Commons Attribution-NonCommercial 4.0 International
|
|
216
|
+
License.
|
|
229
217
|
|
|
230
|
-
Please refer to the ``LICENSE`` and ``NOTICE`` files for more detailed
|
|
218
|
+
Please refer to the ``LICENSE`` and ``NOTICE`` files for more detailed
|
|
219
|
+
information.
|
|
@@ -0,0 +1,135 @@
|
|
|
1
|
+
.. image:: https://zenodo.org/badge/232335424.svg
|
|
2
|
+
:target: https://doi.org/10.5281/zenodo.8214376
|
|
3
|
+
:alt: DOI
|
|
4
|
+
|
|
5
|
+
.. image:: https://badges.gitter.im/braindecodechat/community.svg
|
|
6
|
+
:alt: Join the chat at https://gitter.im/braindecodechat/community
|
|
7
|
+
:target: https://gitter.im/braindecodechat/community?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge
|
|
8
|
+
|
|
9
|
+
.. image:: https://github.com/braindecode/braindecode/workflows/docs/badge.svg
|
|
10
|
+
:target: https://github.com/braindecode/braindecode/actions
|
|
11
|
+
|
|
12
|
+
.. image:: https://circleci.com/gh/braindecode/braindecode.svg?style=svg
|
|
13
|
+
:target: https://circleci.com/gh/braindecode/braindecode
|
|
14
|
+
:alt: Doc build on CircleCI
|
|
15
|
+
|
|
16
|
+
.. image:: https://codecov.io/gh/braindecode/braindecode/branch/master/graph/badge.svg
|
|
17
|
+
:target: https://codecov.io/gh/braindecode/braindecode
|
|
18
|
+
:alt: Code Coverage
|
|
19
|
+
|
|
20
|
+
|
|
21
|
+
.. |Braindecode| image:: https://user-images.githubusercontent.com/42702466/177958779-b00628aa-9155-4c51-96d1-d8c345aff575.svg
|
|
22
|
+
.. _braindecode: braindecode.org/
|
|
23
|
+
|
|
24
|
+
Braindecode
|
|
25
|
+
===========
|
|
26
|
+
|
|
27
|
+
Braindecode is an open-source Python toolbox for decoding raw electrophysiological brain
|
|
28
|
+
data with deep learning models. It includes dataset fetchers, data preprocessing and
|
|
29
|
+
visualization tools, as well as implementations of several deep learning
|
|
30
|
+
architectures and data augmentations for analysis of EEG, ECoG and MEG.
|
|
31
|
+
|
|
32
|
+
For neuroscientists who want to work with deep learning and
|
|
33
|
+
deep learning researchers who want to work with neurophysiological data.
|
|
34
|
+
|
|
35
|
+
|
|
36
|
+
Installation Braindecode
|
|
37
|
+
========================
|
|
38
|
+
|
|
39
|
+
1. Install pytorch from http://pytorch.org/ (you don't need to install torchvision).
|
|
40
|
+
|
|
41
|
+
2. If you want to download EEG datasets from `MOABB <https://github.com/NeuroTechX/moabb>`_, install it:
|
|
42
|
+
|
|
43
|
+
.. code-block:: bash
|
|
44
|
+
|
|
45
|
+
pip install moabb
|
|
46
|
+
|
|
47
|
+
3. Install latest release of braindecode via pip:
|
|
48
|
+
|
|
49
|
+
.. code-block:: bash
|
|
50
|
+
|
|
51
|
+
pip install braindecode
|
|
52
|
+
|
|
53
|
+
If you want to install the latest development version of braindecode, please refer to `contributing page <https://github.com/braindecode/braindecode/blob/master/CONTRIBUTING.md>`__
|
|
54
|
+
|
|
55
|
+
|
|
56
|
+
Documentation
|
|
57
|
+
=============
|
|
58
|
+
|
|
59
|
+
Documentation is online under https://braindecode.org, both in the stable and dev versions.
|
|
60
|
+
|
|
61
|
+
|
|
62
|
+
Contributing to Braindecode
|
|
63
|
+
===========================
|
|
64
|
+
|
|
65
|
+
Guidelines for contributing to the library can be found on the braindecode github:
|
|
66
|
+
|
|
67
|
+
https://github.com/braindecode/braindecode/blob/master/CONTRIBUTING.md
|
|
68
|
+
|
|
69
|
+
Braindecode chat
|
|
70
|
+
================
|
|
71
|
+
|
|
72
|
+
https://gitter.im/braindecodechat/community
|
|
73
|
+
|
|
74
|
+
Citing
|
|
75
|
+
======
|
|
76
|
+
|
|
77
|
+
If you use Braindecode in scientific work, please cite the software using the Zenodo DOI shown in the badge below:
|
|
78
|
+
|
|
79
|
+
.. image:: https://zenodo.org/badge/232335424.svg
|
|
80
|
+
:target: https://doi.org/10.5281/zenodo.8214376
|
|
81
|
+
:alt: DOI
|
|
82
|
+
|
|
83
|
+
Additionally, we highly encourage you to cite the article that originally introduced
|
|
84
|
+
the Braindecode library and has served as a foundational reference for many works
|
|
85
|
+
on deep learning with EEG recordings. Please use the following reference:
|
|
86
|
+
|
|
87
|
+
.. code-block:: bibtex
|
|
88
|
+
|
|
89
|
+
@article {HBM:HBM23730,
|
|
90
|
+
author = {Schirrmeister, Robin Tibor and Springenberg, Jost Tobias and Fiederer,
|
|
91
|
+
Lukas Dominique Josef and Glasstetter, Martin and Eggensperger, Katharina and Tangermann, Michael and
|
|
92
|
+
Hutter, Frank and Burgard, Wolfram and Ball, Tonio},
|
|
93
|
+
title = {Deep learning with convolutional neural networks for EEG decoding and visualization},
|
|
94
|
+
journal = {Human Brain Mapping},
|
|
95
|
+
issn = {1097-0193},
|
|
96
|
+
url = {http://dx.doi.org/10.1002/hbm.23730},
|
|
97
|
+
doi = {10.1002/hbm.23730},
|
|
98
|
+
month = {aug},
|
|
99
|
+
year = {2017},
|
|
100
|
+
keywords = {electroencephalography, EEG analysis, machine learning, end-to-end learning, brain–machine interface,
|
|
101
|
+
brain–computer interface, model interpretability, brain mapping},
|
|
102
|
+
}
|
|
103
|
+
|
|
104
|
+
as well as the `MNE-Python <https://mne.tools>`_ software that is used by braindecode:
|
|
105
|
+
|
|
106
|
+
.. code-block:: bibtex
|
|
107
|
+
|
|
108
|
+
@article{10.3389/fnins.2013.00267,
|
|
109
|
+
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},
|
|
110
|
+
title={{MEG and EEG data analysis with MNE-Python}},
|
|
111
|
+
journal={Frontiers in Neuroscience},
|
|
112
|
+
volume={7},
|
|
113
|
+
pages={267},
|
|
114
|
+
year={2013},
|
|
115
|
+
url={https://www.frontiersin.org/article/10.3389/fnins.2013.00267},
|
|
116
|
+
doi={10.3389/fnins.2013.00267},
|
|
117
|
+
issn={1662-453X},
|
|
118
|
+
}
|
|
119
|
+
|
|
120
|
+
|
|
121
|
+
|
|
122
|
+
|
|
123
|
+
Licensing
|
|
124
|
+
^^^^^^^^^
|
|
125
|
+
|
|
126
|
+
This project is primarily licensed under the BSD-3-Clause License.
|
|
127
|
+
|
|
128
|
+
Additional Components
|
|
129
|
+
~~~~~~~~~~~~~~~~~~~~~
|
|
130
|
+
|
|
131
|
+
Some components within this repository are licensed under the Creative Commons Attribution-NonCommercial 4.0 International
|
|
132
|
+
License.
|
|
133
|
+
|
|
134
|
+
Please refer to the ``LICENSE`` and ``NOTICE`` files for more detailed
|
|
135
|
+
information.
|
{braindecode-1.3.0.dev183348003 → braindecode-1.3.0.dev183374645}/braindecode/augmentation/base.py
RENAMED
|
@@ -31,8 +31,7 @@ Operation = Callable[
|
|
|
31
31
|
|
|
32
32
|
|
|
33
33
|
class Transform(torch.nn.Module):
|
|
34
|
-
"""Basic transform class used for implementing data augmentation
|
|
35
|
-
|
|
34
|
+
"""Basic transform class used for implementing data augmentation
|
|
36
35
|
operations.
|
|
37
36
|
|
|
38
37
|
Parameters
|
|
@@ -43,7 +42,7 @@ class Transform(torch.nn.Module):
|
|
|
43
42
|
probability : float, optional
|
|
44
43
|
Float between 0 and 1 defining the uniform probability of applying the
|
|
45
44
|
operation. Set to 1.0 by default (e.g always apply the operation).
|
|
46
|
-
random_state
|
|
45
|
+
random_state: int, optional
|
|
47
46
|
Seed to be used to instantiate numpy random number generator instance.
|
|
48
47
|
Used to decide whether or not to transform given the probability
|
|
49
48
|
argument. Defaults to None.
|
|
@@ -126,7 +125,7 @@ class Transform(torch.nn.Module):
|
|
|
126
125
|
return out_X
|
|
127
126
|
|
|
128
127
|
def _get_mask(self, batch_size, device) -> torch.Tensor:
|
|
129
|
-
"""Samples whether to apply operation or not over the whole batch
|
|
128
|
+
"""Samples whether to apply operation or not over the whole batch"""
|
|
130
129
|
return torch.as_tensor(self.probability > self.rng.uniform(size=batch_size)).to(
|
|
131
130
|
device
|
|
132
131
|
)
|
|
@@ -154,7 +153,7 @@ class Compose(Transform):
|
|
|
154
153
|
|
|
155
154
|
Parameters
|
|
156
155
|
----------
|
|
157
|
-
transforms
|
|
156
|
+
transforms: list
|
|
158
157
|
Sequence of Transforms to be composed.
|
|
159
158
|
"""
|
|
160
159
|
|
|
@@ -170,9 +169,7 @@ class Compose(Transform):
|
|
|
170
169
|
|
|
171
170
|
def _make_collateable(transform, device=None):
|
|
172
171
|
"""Wraps a transform to make it collateable.
|
|
173
|
-
|
|
174
|
-
with device control.
|
|
175
|
-
"""
|
|
172
|
+
with device control."""
|
|
176
173
|
|
|
177
174
|
def _collate_fn(batch):
|
|
178
175
|
collated_batch = default_collate(batch)
|
|
@@ -144,7 +144,7 @@ def ft_surrogate(
|
|
|
144
144
|
EEG input example or batch.
|
|
145
145
|
y : torch.Tensor
|
|
146
146
|
EEG labels for the example or batch.
|
|
147
|
-
phase_noise_magnitude
|
|
147
|
+
phase_noise_magnitude: float
|
|
148
148
|
Float between 0 and 1 setting the range over which the phase
|
|
149
149
|
perturbation is uniformly sampled:
|
|
150
150
|
[0, `phase_noise_magnitude` * 2 * `pi`].
|
|
@@ -152,7 +152,7 @@ def ft_surrogate(
|
|
|
152
152
|
Whether to sample phase perturbations independently for each channel or
|
|
153
153
|
not. It is advised to set it to False when spatial information is
|
|
154
154
|
important for the task, like in BCI.
|
|
155
|
-
random_state
|
|
155
|
+
random_state: int | numpy.random.Generator, optional
|
|
156
156
|
Used to draw the phase perturbation. Defaults to None.
|
|
157
157
|
|
|
158
158
|
Returns
|
|
@@ -289,10 +289,10 @@ def channels_shuffle(
|
|
|
289
289
|
EEG input example or batch.
|
|
290
290
|
y : torch.Tensor
|
|
291
291
|
EEG labels for the example or batch.
|
|
292
|
-
p_shuffle
|
|
292
|
+
p_shuffle: float | None
|
|
293
293
|
Float between 0 and 1 setting the probability of including the channel
|
|
294
294
|
in the set of permutted channels.
|
|
295
|
-
random_state
|
|
295
|
+
random_state: int | numpy.random.Generator, optional
|
|
296
296
|
Seed to be used to instantiate numpy random number generator instance.
|
|
297
297
|
Used to sample which channels to shuffle and to carry the shuffle.
|
|
298
298
|
Defaults to None.
|
|
@@ -335,7 +335,7 @@ def gaussian_noise(
|
|
|
335
335
|
EEG labels for the example or batch.
|
|
336
336
|
std : float
|
|
337
337
|
Standard deviation to use for the additive noise.
|
|
338
|
-
random_state
|
|
338
|
+
random_state: int | numpy.random.Generator, optional
|
|
339
339
|
Seed to be used to instantiate numpy random number generator instance.
|
|
340
340
|
Defaults to None.
|
|
341
341
|
|
|
@@ -468,8 +468,7 @@ def bandstop_filter(
|
|
|
468
468
|
bandwidth: float,
|
|
469
469
|
freqs_to_notch: npt.ArrayLike | None,
|
|
470
470
|
) -> tuple[torch.Tensor, torch.Tensor]:
|
|
471
|
-
"""Apply a band-stop filter with desired bandwidth at the desired frequency
|
|
472
|
-
|
|
471
|
+
"""Apply a band-stop filter with desired bandwidth at the desired frequency
|
|
473
472
|
position.
|
|
474
473
|
|
|
475
474
|
Suggested e.g. in [1]_ and [2]_
|
|
@@ -621,7 +620,6 @@ def _torch_legval(
|
|
|
621
620
|
) -> torch.Tensor:
|
|
622
621
|
"""
|
|
623
622
|
Evaluate a Legendre series at points x.
|
|
624
|
-
|
|
625
623
|
If `c` is of length `n + 1`, this function returns the value:
|
|
626
624
|
.. math:: p(x) = c_0 * L_0(x) + c_1 * L_1(x) + ... + c_n * L_n(x)
|
|
627
625
|
The parameter `x` is converted to an array only if it is a tuple or a
|
|
@@ -807,6 +805,12 @@ def _torch_make_interpolation_matrix(
|
|
|
807
805
|
The interpolation matrix that maps good signals to the location
|
|
808
806
|
of bad signals.
|
|
809
807
|
|
|
808
|
+
References
|
|
809
|
+
----------
|
|
810
|
+
[1] Perrin, F., Pernier, J., Bertrand, O. and Echallier, JF. (1989).
|
|
811
|
+
Spherical splines for scalp potential and current density mapping.
|
|
812
|
+
Electroencephalography Clinical Neurophysiology, Feb; 72(2):184-7.
|
|
813
|
+
|
|
810
814
|
Notes
|
|
811
815
|
-----
|
|
812
816
|
Code copied and modified from MNE-Python:
|
|
@@ -837,12 +841,6 @@ def _torch_make_interpolation_matrix(
|
|
|
837
841
|
LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
|
|
838
842
|
OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
|
|
839
843
|
DAMAGE.
|
|
840
|
-
|
|
841
|
-
References
|
|
842
|
-
----------
|
|
843
|
-
[1] Perrin, F., Pernier, J., Bertrand, O. and Echallier, JF. (1989).
|
|
844
|
-
Spherical splines for scalp potential and current density mapping.
|
|
845
|
-
Electroencephalography Clinical Neurophysiology, Feb; 72(2):184-7.
|
|
846
844
|
"""
|
|
847
845
|
pos_from = pos_from.clone()
|
|
848
846
|
pos_to = pos_to.clone()
|
|
@@ -970,8 +968,7 @@ def sensors_rotation(
|
|
|
970
968
|
angles: npt.ArrayLike,
|
|
971
969
|
spherical_splines: bool,
|
|
972
970
|
) -> tuple[torch.Tensor, torch.Tensor]:
|
|
973
|
-
"""Interpolates EEG signals over sensors rotated around the desired axis
|
|
974
|
-
|
|
971
|
+
"""Interpolates EEG signals over sensors rotated around the desired axis
|
|
975
972
|
with the desired angle.
|
|
976
973
|
|
|
977
974
|
Suggested in [1]_
|
|
@@ -1030,7 +1027,7 @@ def mixup(
|
|
|
1030
1027
|
lam : torch.Tensor
|
|
1031
1028
|
Values between 0 and 1 setting the linear interpolation between
|
|
1032
1029
|
examples.
|
|
1033
|
-
idx_perm
|
|
1030
|
+
idx_perm: torch.Tensor
|
|
1034
1031
|
Permuted indices of example that are mixed into original examples.
|
|
1035
1032
|
|
|
1036
1033
|
Returns
|
|
@@ -1083,20 +1080,18 @@ def segmentation_reconstruction(
|
|
|
1083
1080
|
EEG labels for the example or batch.
|
|
1084
1081
|
n_segments : int
|
|
1085
1082
|
Number of segments to use in the batch.
|
|
1086
|
-
data_classes
|
|
1083
|
+
data_classes: list[tuple[int, torch.Tensor]]
|
|
1087
1084
|
List of tuples. Each tuple contains the class index and the corresponding EEG data.
|
|
1088
|
-
rand_indices
|
|
1085
|
+
rand_indices: array-like
|
|
1089
1086
|
Array of indices that indicates which trial to use in each segment.
|
|
1090
|
-
idx_shuffle
|
|
1087
|
+
idx_shuffle: array-like
|
|
1091
1088
|
Array of indices to shuffle the new generated trials.
|
|
1092
|
-
|
|
1093
1089
|
Returns
|
|
1094
1090
|
-------
|
|
1095
1091
|
torch.Tensor
|
|
1096
1092
|
Transformed inputs.
|
|
1097
1093
|
torch.Tensor
|
|
1098
1094
|
Transformed labels.
|
|
1099
|
-
|
|
1100
1095
|
References
|
|
1101
1096
|
----------
|
|
1102
1097
|
.. [1] Lotte, F. (2015). Signal processing approaches to minimize or
|
|
@@ -1150,7 +1145,7 @@ def mask_encoding(
|
|
|
1150
1145
|
segment_length: int,
|
|
1151
1146
|
n_segments: int,
|
|
1152
1147
|
) -> tuple[torch.Tensor, torch.Tensor]:
|
|
1153
|
-
"""Mark encoding from Ding et al (2024) from [ding2024]_.
|
|
1148
|
+
"""Mark encoding from Ding et al. (2024) from [ding2024]_.
|
|
1154
1149
|
|
|
1155
1150
|
Replaces a contiguous part (or parts) of all channels by zeros
|
|
1156
1151
|
(if more than one segment, it may overlap).
|
|
@@ -1217,7 +1212,7 @@ def channels_rereference(
|
|
|
1217
1212
|
EEG input example or batch.
|
|
1218
1213
|
y : torch.Tensor
|
|
1219
1214
|
EEG labels for the example or batch.
|
|
1220
|
-
random_state
|
|
1215
|
+
random_state: int | numpy.random.Generator, optional
|
|
1221
1216
|
Seed to be used to instantiate numpy random number generator instance.
|
|
1222
1217
|
Defaults to None.
|
|
1223
1218
|
|
|
@@ -1234,6 +1229,7 @@ def channels_rereference(
|
|
|
1234
1229
|
Representation Learning for Electroencephalogram Classification. Proceedings
|
|
1235
1230
|
of the Machine Learning for Health NeurIPS Workshop, in Proceedings of Machine
|
|
1236
1231
|
Learning Research 136:238-253
|
|
1232
|
+
|
|
1237
1233
|
"""
|
|
1238
1234
|
|
|
1239
1235
|
rng = check_random_state(random_state)
|
|
@@ -1266,7 +1262,7 @@ def amplitude_scale(
|
|
|
1266
1262
|
EEG labels for the example or batch.
|
|
1267
1263
|
scale : tuple of floats
|
|
1268
1264
|
Interval from which ypu sample the scaling value
|
|
1269
|
-
random_state
|
|
1265
|
+
random_state: int | numpy.random.Generator, optional
|
|
1270
1266
|
Seed to be used to instantiate numpy random number generator instance.
|
|
1271
1267
|
Defaults to None.
|
|
1272
1268
|
|
|
@@ -1283,6 +1279,7 @@ def amplitude_scale(
|
|
|
1283
1279
|
Representation Learning for Electroencephalogram Classification. Proceedings
|
|
1284
1280
|
of the Machine Learning for Health NeurIPS Workshop, in Proceedings of Machine
|
|
1285
1281
|
Learning Research 136:238-253
|
|
1282
|
+
|
|
1286
1283
|
"""
|
|
1287
1284
|
|
|
1288
1285
|
rng = torch.Generator()
|