Braindecode 1.3.0.dev173675610__tar.gz → 1.3.0.dev173767962__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.dev173675610/braindecode.egg-info → braindecode-1.3.0.dev173767962}/PKG-INFO +2 -4
- {braindecode-1.3.0.dev173675610 → braindecode-1.3.0.dev173767962}/braindecode/datautil/__init__.py +1 -11
- {braindecode-1.3.0.dev173675610 → braindecode-1.3.0.dev173767962}/braindecode/models/__init__.py +0 -2
- {braindecode-1.3.0.dev173675610 → braindecode-1.3.0.dev173767962}/braindecode/models/atcnet.py +1 -1
- {braindecode-1.3.0.dev173675610 → braindecode-1.3.0.dev173767962}/braindecode/models/attn_sleep.py +0 -2
- {braindecode-1.3.0.dev173675610 → braindecode-1.3.0.dev173767962}/braindecode/models/contrawr.py +0 -2
- {braindecode-1.3.0.dev173675610 → braindecode-1.3.0.dev173767962}/braindecode/models/ctnet.py +0 -2
- {braindecode-1.3.0.dev173675610 → braindecode-1.3.0.dev173767962}/braindecode/models/deepsleepnet.py +1 -1
- {braindecode-1.3.0.dev173675610 → braindecode-1.3.0.dev173767962}/braindecode/models/eegitnet.py +0 -2
- {braindecode-1.3.0.dev173675610 → braindecode-1.3.0.dev173767962}/braindecode/models/eegminer.py +0 -2
- {braindecode-1.3.0.dev173675610 → braindecode-1.3.0.dev173767962}/braindecode/models/eegtcnet.py +0 -2
- {braindecode-1.3.0.dev173675610 → braindecode-1.3.0.dev173767962}/braindecode/models/fbcnet.py +1 -5
- {braindecode-1.3.0.dev173675610 → braindecode-1.3.0.dev173767962}/braindecode/models/fblightconvnet.py +0 -2
- {braindecode-1.3.0.dev173675610 → braindecode-1.3.0.dev173767962}/braindecode/models/fbmsnet.py +6 -20
- {braindecode-1.3.0.dev173675610 → braindecode-1.3.0.dev173767962}/braindecode/models/ifnet.py +0 -2
- {braindecode-1.3.0.dev173675610 → braindecode-1.3.0.dev173767962}/braindecode/models/labram.py +4 -6
- {braindecode-1.3.0.dev173675610 → braindecode-1.3.0.dev173767962}/braindecode/models/msvtnet.py +0 -2
- {braindecode-1.3.0.dev173675610 → braindecode-1.3.0.dev173767962}/braindecode/models/patchedtransformer.py +1 -1
- {braindecode-1.3.0.dev173675610 → braindecode-1.3.0.dev173767962}/braindecode/models/signal_jepa.py +3 -5
- {braindecode-1.3.0.dev173675610 → braindecode-1.3.0.dev173767962}/braindecode/models/sinc_shallow.py +0 -2
- {braindecode-1.3.0.dev173675610 → braindecode-1.3.0.dev173767962}/braindecode/models/summary.csv +0 -1
- {braindecode-1.3.0.dev173675610 → braindecode-1.3.0.dev173767962}/braindecode/models/syncnet.py +0 -2
- {braindecode-1.3.0.dev173675610 → braindecode-1.3.0.dev173767962}/braindecode/models/tcn.py +0 -2
- {braindecode-1.3.0.dev173675610 → braindecode-1.3.0.dev173767962}/braindecode/models/util.py +0 -1
- {braindecode-1.3.0.dev173675610 → braindecode-1.3.0.dev173767962}/braindecode/modules/filter.py +6 -0
- {braindecode-1.3.0.dev173675610 → braindecode-1.3.0.dev173767962}/braindecode/preprocessing/__init__.py +0 -24
- {braindecode-1.3.0.dev173675610 → braindecode-1.3.0.dev173767962}/braindecode/preprocessing/windowers.py +1 -2
- braindecode-1.3.0.dev173767962/braindecode/version.py +1 -0
- {braindecode-1.3.0.dev173675610 → braindecode-1.3.0.dev173767962/braindecode.egg-info}/PKG-INFO +2 -4
- {braindecode-1.3.0.dev173675610 → braindecode-1.3.0.dev173767962}/braindecode.egg-info/SOURCES.txt +0 -4
- {braindecode-1.3.0.dev173675610 → braindecode-1.3.0.dev173767962}/braindecode.egg-info/requires.txt +1 -4
- {braindecode-1.3.0.dev173675610 → braindecode-1.3.0.dev173767962}/docs/api.rst +3 -31
- {braindecode-1.3.0.dev173675610 → braindecode-1.3.0.dev173767962}/docs/whats_new.rst +1 -8
- {braindecode-1.3.0.dev173675610 → braindecode-1.3.0.dev173767962}/pyproject.toml +1 -2
- braindecode-1.3.0.dev173675610/braindecode/datautil/channel_utils.py +0 -114
- braindecode-1.3.0.dev173675610/braindecode/models/eegsym.py +0 -917
- braindecode-1.3.0.dev173675610/braindecode/preprocessing/eegprep_preprocess.py +0 -1202
- braindecode-1.3.0.dev173675610/braindecode/preprocessing/util.py +0 -166
- braindecode-1.3.0.dev173675610/braindecode/version.py +0 -1
- {braindecode-1.3.0.dev173675610 → braindecode-1.3.0.dev173767962}/LICENSE.txt +0 -0
- {braindecode-1.3.0.dev173675610 → braindecode-1.3.0.dev173767962}/MANIFEST.in +0 -0
- {braindecode-1.3.0.dev173675610 → braindecode-1.3.0.dev173767962}/NOTICE.txt +0 -0
- {braindecode-1.3.0.dev173675610 → braindecode-1.3.0.dev173767962}/README.rst +0 -0
- {braindecode-1.3.0.dev173675610 → braindecode-1.3.0.dev173767962}/braindecode/__init__.py +0 -0
- {braindecode-1.3.0.dev173675610 → braindecode-1.3.0.dev173767962}/braindecode/augmentation/__init__.py +0 -0
- {braindecode-1.3.0.dev173675610 → braindecode-1.3.0.dev173767962}/braindecode/augmentation/base.py +0 -0
- {braindecode-1.3.0.dev173675610 → braindecode-1.3.0.dev173767962}/braindecode/augmentation/functional.py +0 -0
- {braindecode-1.3.0.dev173675610 → braindecode-1.3.0.dev173767962}/braindecode/augmentation/transforms.py +0 -0
- {braindecode-1.3.0.dev173675610 → braindecode-1.3.0.dev173767962}/braindecode/classifier.py +0 -0
- {braindecode-1.3.0.dev173675610 → braindecode-1.3.0.dev173767962}/braindecode/datasets/__init__.py +0 -0
- {braindecode-1.3.0.dev173675610 → braindecode-1.3.0.dev173767962}/braindecode/datasets/base.py +0 -0
- {braindecode-1.3.0.dev173675610 → braindecode-1.3.0.dev173767962}/braindecode/datasets/bbci.py +0 -0
- {braindecode-1.3.0.dev173675610 → braindecode-1.3.0.dev173767962}/braindecode/datasets/bcicomp.py +0 -0
- {braindecode-1.3.0.dev173675610 → braindecode-1.3.0.dev173767962}/braindecode/datasets/bids.py +0 -0
- {braindecode-1.3.0.dev173675610 → braindecode-1.3.0.dev173767962}/braindecode/datasets/experimental.py +0 -0
- {braindecode-1.3.0.dev173675610 → braindecode-1.3.0.dev173767962}/braindecode/datasets/mne.py +0 -0
- {braindecode-1.3.0.dev173675610 → braindecode-1.3.0.dev173767962}/braindecode/datasets/moabb.py +0 -0
- {braindecode-1.3.0.dev173675610 → braindecode-1.3.0.dev173767962}/braindecode/datasets/nmt.py +0 -0
- {braindecode-1.3.0.dev173675610 → braindecode-1.3.0.dev173767962}/braindecode/datasets/sleep_physio_challe_18.py +0 -0
- {braindecode-1.3.0.dev173675610 → braindecode-1.3.0.dev173767962}/braindecode/datasets/sleep_physionet.py +0 -0
- {braindecode-1.3.0.dev173675610 → braindecode-1.3.0.dev173767962}/braindecode/datasets/tuh.py +0 -0
- {braindecode-1.3.0.dev173675610 → braindecode-1.3.0.dev173767962}/braindecode/datasets/xy.py +0 -0
- {braindecode-1.3.0.dev173675610 → braindecode-1.3.0.dev173767962}/braindecode/datautil/serialization.py +0 -0
- {braindecode-1.3.0.dev173675610 → braindecode-1.3.0.dev173767962}/braindecode/datautil/util.py +0 -0
- {braindecode-1.3.0.dev173675610 → braindecode-1.3.0.dev173767962}/braindecode/eegneuralnet.py +0 -0
- {braindecode-1.3.0.dev173675610 → braindecode-1.3.0.dev173767962}/braindecode/functional/__init__.py +0 -0
- {braindecode-1.3.0.dev173675610 → braindecode-1.3.0.dev173767962}/braindecode/functional/functions.py +0 -0
- {braindecode-1.3.0.dev173675610 → braindecode-1.3.0.dev173767962}/braindecode/functional/initialization.py +0 -0
- {braindecode-1.3.0.dev173675610 → braindecode-1.3.0.dev173767962}/braindecode/models/attentionbasenet.py +0 -0
- {braindecode-1.3.0.dev173675610 → braindecode-1.3.0.dev173767962}/braindecode/models/base.py +0 -0
- {braindecode-1.3.0.dev173675610 → braindecode-1.3.0.dev173767962}/braindecode/models/bendr.py +0 -0
- {braindecode-1.3.0.dev173675610 → braindecode-1.3.0.dev173767962}/braindecode/models/biot.py +0 -0
- {braindecode-1.3.0.dev173675610 → braindecode-1.3.0.dev173767962}/braindecode/models/deep4.py +0 -0
- {braindecode-1.3.0.dev173675610 → braindecode-1.3.0.dev173767962}/braindecode/models/eegconformer.py +0 -0
- {braindecode-1.3.0.dev173675610 → braindecode-1.3.0.dev173767962}/braindecode/models/eeginception_erp.py +0 -0
- {braindecode-1.3.0.dev173675610 → braindecode-1.3.0.dev173767962}/braindecode/models/eeginception_mi.py +0 -0
- {braindecode-1.3.0.dev173675610 → braindecode-1.3.0.dev173767962}/braindecode/models/eegnet.py +0 -0
- {braindecode-1.3.0.dev173675610 → braindecode-1.3.0.dev173767962}/braindecode/models/eegnex.py +0 -0
- {braindecode-1.3.0.dev173675610 → braindecode-1.3.0.dev173767962}/braindecode/models/eegsimpleconv.py +0 -0
- {braindecode-1.3.0.dev173675610 → braindecode-1.3.0.dev173767962}/braindecode/models/hybrid.py +0 -0
- {braindecode-1.3.0.dev173675610 → braindecode-1.3.0.dev173767962}/braindecode/models/sccnet.py +0 -0
- {braindecode-1.3.0.dev173675610 → braindecode-1.3.0.dev173767962}/braindecode/models/shallow_fbcsp.py +0 -0
- {braindecode-1.3.0.dev173675610 → braindecode-1.3.0.dev173767962}/braindecode/models/sleep_stager_blanco_2020.py +0 -0
- {braindecode-1.3.0.dev173675610 → braindecode-1.3.0.dev173767962}/braindecode/models/sleep_stager_chambon_2018.py +0 -0
- {braindecode-1.3.0.dev173675610 → braindecode-1.3.0.dev173767962}/braindecode/models/sparcnet.py +0 -0
- {braindecode-1.3.0.dev173675610 → braindecode-1.3.0.dev173767962}/braindecode/models/sstdpn.py +0 -0
- {braindecode-1.3.0.dev173675610 → braindecode-1.3.0.dev173767962}/braindecode/models/tidnet.py +0 -0
- {braindecode-1.3.0.dev173675610 → braindecode-1.3.0.dev173767962}/braindecode/models/tsinception.py +0 -0
- {braindecode-1.3.0.dev173675610 → braindecode-1.3.0.dev173767962}/braindecode/models/usleep.py +0 -0
- {braindecode-1.3.0.dev173675610 → braindecode-1.3.0.dev173767962}/braindecode/modules/__init__.py +0 -0
- {braindecode-1.3.0.dev173675610 → braindecode-1.3.0.dev173767962}/braindecode/modules/activation.py +0 -0
- {braindecode-1.3.0.dev173675610 → braindecode-1.3.0.dev173767962}/braindecode/modules/attention.py +0 -0
- {braindecode-1.3.0.dev173675610 → braindecode-1.3.0.dev173767962}/braindecode/modules/blocks.py +0 -0
- {braindecode-1.3.0.dev173675610 → braindecode-1.3.0.dev173767962}/braindecode/modules/convolution.py +0 -0
- {braindecode-1.3.0.dev173675610 → braindecode-1.3.0.dev173767962}/braindecode/modules/layers.py +0 -0
- {braindecode-1.3.0.dev173675610 → braindecode-1.3.0.dev173767962}/braindecode/modules/linear.py +0 -0
- {braindecode-1.3.0.dev173675610 → braindecode-1.3.0.dev173767962}/braindecode/modules/parametrization.py +0 -0
- {braindecode-1.3.0.dev173675610 → braindecode-1.3.0.dev173767962}/braindecode/modules/stats.py +0 -0
- {braindecode-1.3.0.dev173675610 → braindecode-1.3.0.dev173767962}/braindecode/modules/util.py +0 -0
- {braindecode-1.3.0.dev173675610 → braindecode-1.3.0.dev173767962}/braindecode/modules/wrapper.py +0 -0
- {braindecode-1.3.0.dev173675610 → braindecode-1.3.0.dev173767962}/braindecode/preprocessing/mne_preprocess.py +0 -0
- {braindecode-1.3.0.dev173675610 → braindecode-1.3.0.dev173767962}/braindecode/preprocessing/preprocess.py +0 -0
- {braindecode-1.3.0.dev173675610 → braindecode-1.3.0.dev173767962}/braindecode/regressor.py +0 -0
- {braindecode-1.3.0.dev173675610 → braindecode-1.3.0.dev173767962}/braindecode/samplers/__init__.py +0 -0
- {braindecode-1.3.0.dev173675610 → braindecode-1.3.0.dev173767962}/braindecode/samplers/base.py +0 -0
- {braindecode-1.3.0.dev173675610 → braindecode-1.3.0.dev173767962}/braindecode/samplers/ssl.py +0 -0
- {braindecode-1.3.0.dev173675610 → braindecode-1.3.0.dev173767962}/braindecode/training/__init__.py +0 -0
- {braindecode-1.3.0.dev173675610 → braindecode-1.3.0.dev173767962}/braindecode/training/callbacks.py +0 -0
- {braindecode-1.3.0.dev173675610 → braindecode-1.3.0.dev173767962}/braindecode/training/losses.py +0 -0
- {braindecode-1.3.0.dev173675610 → braindecode-1.3.0.dev173767962}/braindecode/training/scoring.py +0 -0
- {braindecode-1.3.0.dev173675610 → braindecode-1.3.0.dev173767962}/braindecode/util.py +0 -0
- {braindecode-1.3.0.dev173675610 → braindecode-1.3.0.dev173767962}/braindecode/visualization/__init__.py +0 -0
- {braindecode-1.3.0.dev173675610 → braindecode-1.3.0.dev173767962}/braindecode/visualization/confusion_matrices.py +0 -0
- {braindecode-1.3.0.dev173675610 → braindecode-1.3.0.dev173767962}/braindecode/visualization/gradients.py +0 -0
- {braindecode-1.3.0.dev173675610 → braindecode-1.3.0.dev173767962}/braindecode.egg-info/dependency_links.txt +0 -0
- {braindecode-1.3.0.dev173675610 → braindecode-1.3.0.dev173767962}/braindecode.egg-info/top_level.txt +0 -0
- {braindecode-1.3.0.dev173675610 → braindecode-1.3.0.dev173767962}/docs/Makefile +0 -0
- {braindecode-1.3.0.dev173675610 → braindecode-1.3.0.dev173767962}/docs/_templates/autosummary/class.rst +0 -0
- {braindecode-1.3.0.dev173675610 → braindecode-1.3.0.dev173767962}/docs/_templates/autosummary/function.rst +0 -0
- {braindecode-1.3.0.dev173675610 → braindecode-1.3.0.dev173767962}/docs/cite.rst +0 -0
- {braindecode-1.3.0.dev173675610 → braindecode-1.3.0.dev173767962}/docs/conf.py +0 -0
- {braindecode-1.3.0.dev173675610 → braindecode-1.3.0.dev173767962}/docs/help.rst +0 -0
- {braindecode-1.3.0.dev173675610 → braindecode-1.3.0.dev173767962}/docs/index.rst +0 -0
- {braindecode-1.3.0.dev173675610 → braindecode-1.3.0.dev173767962}/docs/install/install.rst +0 -0
- {braindecode-1.3.0.dev173675610 → braindecode-1.3.0.dev173767962}/docs/install/install_pip.rst +0 -0
- {braindecode-1.3.0.dev173675610 → braindecode-1.3.0.dev173767962}/docs/install/install_source.rst +0 -0
- {braindecode-1.3.0.dev173675610 → braindecode-1.3.0.dev173767962}/docs/models/categorization/attention.rst +0 -0
- {braindecode-1.3.0.dev173675610 → braindecode-1.3.0.dev173767962}/docs/models/categorization/channel.rst +0 -0
- {braindecode-1.3.0.dev173675610 → braindecode-1.3.0.dev173767962}/docs/models/categorization/convolution.rst +0 -0
- {braindecode-1.3.0.dev173675610 → braindecode-1.3.0.dev173767962}/docs/models/categorization/filterbank.rst +0 -0
- {braindecode-1.3.0.dev173675610 → braindecode-1.3.0.dev173767962}/docs/models/categorization/gnn.rst +0 -0
- {braindecode-1.3.0.dev173675610 → braindecode-1.3.0.dev173767962}/docs/models/categorization/interpretable.rst +0 -0
- {braindecode-1.3.0.dev173675610 → braindecode-1.3.0.dev173767962}/docs/models/categorization/lbm.rst +0 -0
- {braindecode-1.3.0.dev173675610 → braindecode-1.3.0.dev173767962}/docs/models/categorization/recurrent.rst +0 -0
- {braindecode-1.3.0.dev173675610 → braindecode-1.3.0.dev173767962}/docs/models/categorization/spd.rst +0 -0
- {braindecode-1.3.0.dev173675610 → braindecode-1.3.0.dev173767962}/docs/models/models.rst +0 -0
- {braindecode-1.3.0.dev173675610 → braindecode-1.3.0.dev173767962}/docs/models/models_categorization.rst +0 -0
- {braindecode-1.3.0.dev173675610 → braindecode-1.3.0.dev173767962}/docs/models/models_table.rst +0 -0
- {braindecode-1.3.0.dev173675610 → braindecode-1.3.0.dev173767962}/docs/models/models_visualization.rst +0 -0
- {braindecode-1.3.0.dev173675610 → braindecode-1.3.0.dev173767962}/docs/sg_execution_times.rst +0 -0
- {braindecode-1.3.0.dev173675610 → braindecode-1.3.0.dev173767962}/setup.cfg +0 -0
{braindecode-1.3.0.dev173675610/braindecode.egg-info → braindecode-1.3.0.dev173767962}/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.dev173767962
|
|
4
4
|
Summary: Deep learning software to decode EEG, ECG or MEG signals
|
|
5
5
|
Author-email: Robin Tibor Schirrmeister <robintibor@gmail.com>
|
|
6
6
|
Maintainer-email: Alexandre Gramfort <agramfort@meta.com>, Bruno Aristimunha Pinto <b.aristimunha@gmail.com>, Robin Tibor Schirrmeister <robintibor@gmail.com>
|
|
@@ -40,8 +40,6 @@ Requires-Dist: linear_attention_transformer
|
|
|
40
40
|
Requires-Dist: docstring_inheritance
|
|
41
41
|
Provides-Extra: moabb
|
|
42
42
|
Requires-Dist: moabb>=1.2.0; extra == "moabb"
|
|
43
|
-
Provides-Extra: eegprep
|
|
44
|
-
Requires-Dist: eegprep[eeglabio]>=0.1.1; extra == "eegprep"
|
|
45
43
|
Provides-Extra: hug
|
|
46
44
|
Requires-Dist: huggingface_hub[torch]>=0.20.0; extra == "hug"
|
|
47
45
|
Provides-Extra: tests
|
|
@@ -69,7 +67,7 @@ Requires-Dist: pre-commit; extra == "docs"
|
|
|
69
67
|
Requires-Dist: openneuro-py; extra == "docs"
|
|
70
68
|
Requires-Dist: plotly; extra == "docs"
|
|
71
69
|
Provides-Extra: all
|
|
72
|
-
Requires-Dist: braindecode[docs,
|
|
70
|
+
Requires-Dist: braindecode[docs,hug,moabb,tests]; extra == "all"
|
|
73
71
|
Dynamic: license-file
|
|
74
72
|
|
|
75
73
|
.. image:: https://badges.gitter.im/braindecodechat/community.svg
|
{braindecode-1.3.0.dev173675610 → braindecode-1.3.0.dev173767962}/braindecode/datautil/__init__.py
RENAMED
|
@@ -2,10 +2,6 @@
|
|
|
2
2
|
Utilities for data manipulation.
|
|
3
3
|
"""
|
|
4
4
|
|
|
5
|
-
from .channel_utils import (
|
|
6
|
-
division_channels_idx,
|
|
7
|
-
match_hemisphere_chans,
|
|
8
|
-
)
|
|
9
5
|
from .serialization import (
|
|
10
6
|
_check_save_dir_empty,
|
|
11
7
|
load_concat_dataset,
|
|
@@ -53,10 +49,4 @@ def __getattr__(name):
|
|
|
53
49
|
raise AttributeError("No possible import named " + name)
|
|
54
50
|
|
|
55
51
|
|
|
56
|
-
__all__ = [
|
|
57
|
-
"load_concat_dataset",
|
|
58
|
-
"save_concat_dataset",
|
|
59
|
-
"_check_save_dir_empty",
|
|
60
|
-
"match_hemisphere_chans",
|
|
61
|
-
"division_channels_idx",
|
|
62
|
-
]
|
|
52
|
+
__all__ = ["load_concat_dataset", "save_concat_dataset", "_check_save_dir_empty"]
|
{braindecode-1.3.0.dev173675610 → braindecode-1.3.0.dev173767962}/braindecode/models/__init__.py
RENAMED
|
@@ -20,7 +20,6 @@ from .eegminer import EEGMiner
|
|
|
20
20
|
from .eegnet import EEGNet, EEGNetv4
|
|
21
21
|
from .eegnex import EEGNeX
|
|
22
22
|
from .eegsimpleconv import EEGSimpleConv
|
|
23
|
-
from .eegsym import EEGSym
|
|
24
23
|
from .eegtcnet import EEGTCNet
|
|
25
24
|
from .fbcnet import FBCNet
|
|
26
25
|
from .fblightconvnet import FBLightConvNet
|
|
@@ -73,7 +72,6 @@ __all__ = [
|
|
|
73
72
|
"EEGNet",
|
|
74
73
|
"EEGNetv4",
|
|
75
74
|
"EEGNeX",
|
|
76
|
-
"EEGSym",
|
|
77
75
|
"EEGSimpleConv",
|
|
78
76
|
"EEGTCNet",
|
|
79
77
|
"FBCNet",
|
{braindecode-1.3.0.dev173675610 → braindecode-1.3.0.dev173767962}/braindecode/models/atcnet.py
RENAMED
|
@@ -15,7 +15,7 @@ from braindecode.modules import CausalConv1d, Ensure4d, MaxNormLinear
|
|
|
15
15
|
class ATCNet(EEGModuleMixin, nn.Module):
|
|
16
16
|
"""ATCNet from Altaheri et al. (2022) [1]_.
|
|
17
17
|
|
|
18
|
-
:bdg-success:`Convolution` :bdg-
|
|
18
|
+
:bdg-success:`Convolution` :bdg-info:`Small Attention`
|
|
19
19
|
|
|
20
20
|
.. figure:: https://user-images.githubusercontent.com/25565236/185449791-e8539453-d4fa-41e1-865a-2cf7e91f60ef.png
|
|
21
21
|
:align: center
|
{braindecode-1.3.0.dev173675610 → braindecode-1.3.0.dev173767962}/braindecode/models/attn_sleep.py
RENAMED
|
@@ -18,8 +18,6 @@ from braindecode.modules import CausalConv1d
|
|
|
18
18
|
class AttnSleep(EEGModuleMixin, nn.Module):
|
|
19
19
|
"""Sleep Staging Architecture from Eldele et al. (2021) [Eldele2021]_.
|
|
20
20
|
|
|
21
|
-
:bdg-success:`Convolution` :bdg-info:`Small Attention`
|
|
22
|
-
|
|
23
21
|
.. figure:: https://raw.githubusercontent.com/emadeldeen24/AttnSleep/refs/heads/main/imgs/AttnSleep.png
|
|
24
22
|
:align: center
|
|
25
23
|
:alt: AttnSleep Architecture
|
{braindecode-1.3.0.dev173675610 → braindecode-1.3.0.dev173767962}/braindecode/models/contrawr.py
RENAMED
|
@@ -10,8 +10,6 @@ from braindecode.models.base import EEGModuleMixin
|
|
|
10
10
|
class ContraWR(EEGModuleMixin, nn.Module):
|
|
11
11
|
"""Contrast with the World Representation ContraWR from Yang et al (2021) [Yang2021]_.
|
|
12
12
|
|
|
13
|
-
:bdg-success:`Convolution`
|
|
14
|
-
|
|
15
13
|
This model is a convolutional neural network that uses a spectral
|
|
16
14
|
representation with a series of convolutional layers and residual blocks.
|
|
17
15
|
The model is designed to learn a representation of the EEG signal that can
|
{braindecode-1.3.0.dev173675610 → braindecode-1.3.0.dev173767962}/braindecode/models/ctnet.py
RENAMED
|
@@ -27,8 +27,6 @@ from braindecode.modules import (
|
|
|
27
27
|
class CTNet(EEGModuleMixin, nn.Module):
|
|
28
28
|
"""CTNet from Zhao, W et al (2024) [ctnet]_.
|
|
29
29
|
|
|
30
|
-
:bdg-success:`Convolution` :bdg-info:`Small Attention`
|
|
31
|
-
|
|
32
30
|
A Convolutional Transformer Network for EEG-Based Motor Imagery Classification
|
|
33
31
|
|
|
34
32
|
.. figure:: https://raw.githubusercontent.com/snailpt/CTNet/main/architecture.png
|
{braindecode-1.3.0.dev173675610 → braindecode-1.3.0.dev173767962}/braindecode/models/deepsleepnet.py
RENAMED
|
@@ -10,7 +10,7 @@ from braindecode.models.base import EEGModuleMixin
|
|
|
10
10
|
class DeepSleepNet(EEGModuleMixin, nn.Module):
|
|
11
11
|
"""DeepSleepNet from Supratak et al. (2017) [Supratak2017]_.
|
|
12
12
|
|
|
13
|
-
:bdg-success:`Convolution` :bdg-
|
|
13
|
+
:bdg-success:`Convolution` :bdg-info:`Recurrent`
|
|
14
14
|
|
|
15
15
|
.. figure:: https://raw.githubusercontent.com/akaraspt/deepsleepnet/master/img/deepsleepnet.png
|
|
16
16
|
:align: center
|
{braindecode-1.3.0.dev173675610 → braindecode-1.3.0.dev173767962}/braindecode/models/eegitnet.py
RENAMED
|
@@ -11,8 +11,6 @@ from braindecode.modules import DepthwiseConv2d, Ensure4d, InceptionBlock
|
|
|
11
11
|
class EEGITNet(EEGModuleMixin, nn.Sequential):
|
|
12
12
|
"""EEG-ITNet from Salami, et al (2022) [Salami2022]_
|
|
13
13
|
|
|
14
|
-
:bdg-success:`Convolution` :bdg-secondary:`Recurrent`
|
|
15
|
-
|
|
16
14
|
.. figure:: https://braindecode.org/dev/_static/model/eegitnet.jpg
|
|
17
15
|
:align: center
|
|
18
16
|
:alt: EEG-ITNet Architecture
|
{braindecode-1.3.0.dev173675610 → braindecode-1.3.0.dev173767962}/braindecode/models/eegminer.py
RENAMED
|
@@ -21,8 +21,6 @@ _eeg_miner_methods = ["mag", "corr", "plv"]
|
|
|
21
21
|
class EEGMiner(EEGModuleMixin, nn.Module):
|
|
22
22
|
"""EEGMiner from Ludwig et al (2024) [eegminer]_.
|
|
23
23
|
|
|
24
|
-
:bdg-success:`Convolution` :bdg-warning:`Interpretability`
|
|
25
|
-
|
|
26
24
|
.. figure:: https://content.cld.iop.org/journals/1741-2552/21/3/036010/revision2/jnead44d7f1_hr.jpg
|
|
27
25
|
:align: center
|
|
28
26
|
:alt: EEGMiner Architecture
|
{braindecode-1.3.0.dev173675610 → braindecode-1.3.0.dev173767962}/braindecode/models/eegtcnet.py
RENAMED
|
@@ -15,8 +15,6 @@ from braindecode.modules import Chomp1d, MaxNormLinear
|
|
|
15
15
|
class EEGTCNet(EEGModuleMixin, nn.Module):
|
|
16
16
|
"""EEGTCNet model from Ingolfsson et al. (2020) [ingolfsson2020]_.
|
|
17
17
|
|
|
18
|
-
:bdg-success:`Convolution` :bdg-secondary:`Recurrent`
|
|
19
|
-
|
|
20
18
|
.. figure:: https://braindecode.org/dev/_static/model/eegtcnet.jpg
|
|
21
19
|
:align: center
|
|
22
20
|
:alt: EEGTCNet Architecture
|
{braindecode-1.3.0.dev173675610 → braindecode-1.3.0.dev173767962}/braindecode/models/fbcnet.py
RENAMED
|
@@ -31,8 +31,6 @@ _valid_layers = {
|
|
|
31
31
|
class FBCNet(EEGModuleMixin, nn.Module):
|
|
32
32
|
"""FBCNet from Mane, R et al (2021) [fbcnet2021]_.
|
|
33
33
|
|
|
34
|
-
:bdg-success:`Convolution` :bdg-primary:`Filterbank`
|
|
35
|
-
|
|
36
34
|
.. figure:: https://raw.githubusercontent.com/ravikiran-mane/FBCNet/refs/heads/master/FBCNet-V2.png
|
|
37
35
|
:align: center
|
|
38
36
|
:alt: FBCNet Architecture
|
|
@@ -69,9 +67,7 @@ class FBCNet(EEGModuleMixin, nn.Module):
|
|
|
69
67
|
linear_max_norm : float, default=0.5
|
|
70
68
|
Maximum norm for the final linear layer.
|
|
71
69
|
filter_parameters: dict, default None
|
|
72
|
-
|
|
73
|
-
If None, a default Chebyshev Type II filter with transition bandwidth of
|
|
74
|
-
2 Hz and stop-band ripple of 30 dB will be used.
|
|
70
|
+
Parameters for the FilterBankLayer
|
|
75
71
|
|
|
76
72
|
References
|
|
77
73
|
----------
|
|
@@ -18,8 +18,6 @@ from braindecode.modules import (
|
|
|
18
18
|
class FBLightConvNet(EEGModuleMixin, nn.Module):
|
|
19
19
|
"""LightConvNet from Ma, X et al (2023) [lightconvnet]_.
|
|
20
20
|
|
|
21
|
-
:bdg-success:`Convolution` :bdg-primary:`Filterbank`
|
|
22
|
-
|
|
23
21
|
.. figure:: https://raw.githubusercontent.com/Ma-Xinzhi/LightConvNet/refs/heads/main/network_architecture.png
|
|
24
22
|
:align: center
|
|
25
23
|
:alt: LightConvNet Neural Network
|
{braindecode-1.3.0.dev173675610 → braindecode-1.3.0.dev173767962}/braindecode/models/fbmsnet.py
RENAMED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
from __future__ import annotations
|
|
2
2
|
|
|
3
|
-
from typing import
|
|
3
|
+
from typing import Optional, Sequence
|
|
4
4
|
|
|
5
5
|
import torch
|
|
6
6
|
from einops.layers.torch import Rearrange
|
|
@@ -19,8 +19,6 @@ from braindecode.modules import (
|
|
|
19
19
|
class FBMSNet(EEGModuleMixin, nn.Module):
|
|
20
20
|
"""FBMSNet from Liu et al (2022) [fbmsnet]_.
|
|
21
21
|
|
|
22
|
-
:bdg-success:`Convolution` :bdg-primary:`Filterbank`
|
|
23
|
-
|
|
24
22
|
.. figure:: https://raw.githubusercontent.com/Want2Vanish/FBMSNet/refs/heads/main/FBMSNet.png
|
|
25
23
|
:align: center
|
|
26
24
|
:alt: FBMSNet Architecture
|
|
@@ -57,28 +55,16 @@ class FBMSNet(EEGModuleMixin, nn.Module):
|
|
|
57
55
|
----------
|
|
58
56
|
n_bands : int, default=9
|
|
59
57
|
Number of input channels (e.g., number of frequency bands).
|
|
60
|
-
n_filters_spat : int, default=36
|
|
61
|
-
Number of output channels from the MixedConv2d layer.
|
|
62
|
-
temporal_layer : str, default='LogVarLayer'
|
|
63
|
-
Temporal aggregation layer to use.
|
|
64
|
-
n_dim: int, default=3
|
|
65
|
-
Dimension of the temporal reduction layer.
|
|
66
58
|
stride_factor : int, default=4
|
|
67
59
|
Stride factor for temporal segmentation.
|
|
60
|
+
temporal_layer : str, default='LogVarLayer'
|
|
61
|
+
Temporal aggregation layer to use.
|
|
62
|
+
n_filters_spat : int, default=36
|
|
63
|
+
Number of output channels from the MixedConv2d layer.
|
|
68
64
|
dilatability : int, default=8
|
|
69
65
|
Expansion factor for the spatial convolution block.
|
|
70
66
|
activation : nn.Module, default=nn.SiLU
|
|
71
67
|
Activation function class to apply.
|
|
72
|
-
kernels_weights : Sequence[int], default=(15, 31, 63, 125)
|
|
73
|
-
Kernel sizes for the MixedConv2d layer.
|
|
74
|
-
cnn_max_norm : float, default=2
|
|
75
|
-
Maximum norm constraint for the convolutional layers.
|
|
76
|
-
linear_max_norm : float, default=0.5
|
|
77
|
-
Maximum norm constraint for the linear layers.
|
|
78
|
-
filter_parameters : dict, default=None
|
|
79
|
-
Dictionary of parameters to use for the FilterBankLayer.
|
|
80
|
-
If None, a default Chebyshev Type II filter with transition bandwidth of
|
|
81
|
-
2 Hz and stop-band ripple of 30 dB will be used.
|
|
82
68
|
verbose: bool, default False
|
|
83
69
|
Verbose parameter to create the filter using mne.
|
|
84
70
|
|
|
@@ -115,7 +101,7 @@ class FBMSNet(EEGModuleMixin, nn.Module):
|
|
|
115
101
|
cnn_max_norm: float = 2,
|
|
116
102
|
linear_max_norm: float = 0.5,
|
|
117
103
|
verbose: bool = False,
|
|
118
|
-
filter_parameters: dict
|
|
104
|
+
filter_parameters: Optional[dict] = None,
|
|
119
105
|
):
|
|
120
106
|
super().__init__(
|
|
121
107
|
n_chans=n_chans,
|
{braindecode-1.3.0.dev173675610 → braindecode-1.3.0.dev173767962}/braindecode/models/ifnet.py
RENAMED
|
@@ -31,8 +31,6 @@ from braindecode.modules import (
|
|
|
31
31
|
class IFNet(EEGModuleMixin, nn.Module):
|
|
32
32
|
"""IFNetV2 from Wang J et al (2023) [ifnet]_.
|
|
33
33
|
|
|
34
|
-
:bdg-success:`Convolution` :bdg-primary:`Filterbank`
|
|
35
|
-
|
|
36
34
|
.. figure:: https://raw.githubusercontent.com/Jiaheng-Wang/IFNet/main/IFNet.png
|
|
37
35
|
:align: center
|
|
38
36
|
:alt: IFNetV2 Architecture
|
{braindecode-1.3.0.dev173675610 → braindecode-1.3.0.dev173767962}/braindecode/models/labram.py
RENAMED
|
@@ -2,7 +2,6 @@
|
|
|
2
2
|
Labram module.
|
|
3
3
|
Authors: Wei-Bang Jiang
|
|
4
4
|
Bruno Aristimunha <b.aristimunha@gmail.com>
|
|
5
|
-
Matthew Chen <matt.chen4260@gmail.com>
|
|
6
5
|
License: BSD 3 clause
|
|
7
6
|
"""
|
|
8
7
|
|
|
@@ -23,14 +22,14 @@ from braindecode.modules import MLP, DropPath
|
|
|
23
22
|
class Labram(EEGModuleMixin, nn.Module):
|
|
24
23
|
"""Labram from Jiang, W B et al (2024) [Jiang2024]_.
|
|
25
24
|
|
|
26
|
-
:bdg-
|
|
25
|
+
:bdg-danger:`Large Brain Model`
|
|
27
26
|
|
|
28
27
|
.. figure:: https://arxiv.org/html/2405.18765v1/x1.png
|
|
29
28
|
:align: center
|
|
30
29
|
:alt: Labram Architecture.
|
|
31
30
|
|
|
32
31
|
Large Brain Model for Learning Generic Representations with Tremendous
|
|
33
|
-
EEG Data in BCI from [Jiang2024]_
|
|
32
|
+
EEG Data in BCI from [Jiang2024]_
|
|
34
33
|
|
|
35
34
|
This is an **adaptation** of the code [Code2024]_ from the Labram model.
|
|
36
35
|
|
|
@@ -38,8 +37,7 @@ class Labram(EEGModuleMixin, nn.Module):
|
|
|
38
37
|
BEiTv2 [BeiTv2]_.
|
|
39
38
|
|
|
40
39
|
The models can be used in two modes:
|
|
41
|
-
|
|
42
|
-
- Neural Tokenizer: Design to get an embedding layers (e.g. classification).
|
|
40
|
+
- Neural Tokenizor: Design to get an embedding layers (e.g. classification).
|
|
43
41
|
- Neural Decoder: To extract the ampliture and phase outputs with a VQSNP.
|
|
44
42
|
|
|
45
43
|
The braindecode's modification is to allow the model to be used in
|
|
@@ -123,7 +121,7 @@ class Labram(EEGModuleMixin, nn.Module):
|
|
|
123
121
|
init_scale : float (default=0.001)
|
|
124
122
|
The initial scale to be used in the parameters of the model.
|
|
125
123
|
neural_tokenizer : bool (default=True)
|
|
126
|
-
The model can be used in two modes: Neural
|
|
124
|
+
The model can be used in two modes: Neural Tokenizor or Neural Decoder.
|
|
127
125
|
attn_head_dim : bool (default=None)
|
|
128
126
|
The head dimension to be used in the attention layer, to be used only
|
|
129
127
|
during pre-training.
|
{braindecode-1.3.0.dev173675610 → braindecode-1.3.0.dev173767962}/braindecode/models/msvtnet.py
RENAMED
|
@@ -13,8 +13,6 @@ from braindecode.models.base import EEGModuleMixin
|
|
|
13
13
|
class MSVTNet(EEGModuleMixin, nn.Module):
|
|
14
14
|
"""MSVTNet model from Liu K et al (2024) from [msvt2024]_.
|
|
15
15
|
|
|
16
|
-
:bdg-success:`Convolution` :bdg-secondary:`Recurrent` :bdg-info:`Small Attention`
|
|
17
|
-
|
|
18
16
|
This model implements a multi-scale convolutional transformer network
|
|
19
17
|
for EEG signal classification, as described in [msvt2024]_.
|
|
20
18
|
|
|
@@ -16,7 +16,7 @@ from braindecode.models.base import EEGModuleMixin
|
|
|
16
16
|
class PBT(EEGModuleMixin, nn.Module):
|
|
17
17
|
r"""Patched Brain Transformer (PBT) model from Klein et al. (2025) [pbt]_.
|
|
18
18
|
|
|
19
|
-
:bdg-danger:`Large Brain
|
|
19
|
+
:bdg-danger:`Large Brain Models`
|
|
20
20
|
|
|
21
21
|
This implementation was based in https://github.com/timonkl/PatchedBrainTransformer/
|
|
22
22
|
|
{braindecode-1.3.0.dev173675610 → braindecode-1.3.0.dev173767962}/braindecode/models/signal_jepa.py
RENAMED
|
@@ -146,7 +146,7 @@ class _BaseSignalJEPA(EEGModuleMixin, nn.Module):
|
|
|
146
146
|
class SignalJEPA(_BaseSignalJEPA):
|
|
147
147
|
"""Architecture introduced in signal-JEPA for self-supervised pre-training, Guetschel, P et al (2024) [1]_
|
|
148
148
|
|
|
149
|
-
:bdg-
|
|
149
|
+
:bdg-danger:`Large Brain Model`
|
|
150
150
|
|
|
151
151
|
This model is not meant for classification but for SSL pre-training.
|
|
152
152
|
Its output shape depends on the input shape.
|
|
@@ -234,7 +234,7 @@ class SignalJEPA(_BaseSignalJEPA):
|
|
|
234
234
|
class SignalJEPA_Contextual(_BaseSignalJEPA):
|
|
235
235
|
"""Contextual downstream architecture introduced in signal-JEPA Guetschel, P et al (2024) [1]_.
|
|
236
236
|
|
|
237
|
-
:bdg-
|
|
237
|
+
:bdg-danger:`Large Brain Model`
|
|
238
238
|
|
|
239
239
|
This architecture is one of the variants of :class:`SignalJEPA`
|
|
240
240
|
that can be used for classification purposes.
|
|
@@ -407,7 +407,7 @@ class SignalJEPA_Contextual(_BaseSignalJEPA):
|
|
|
407
407
|
class SignalJEPA_PostLocal(_BaseSignalJEPA):
|
|
408
408
|
"""Post-local downstream architecture introduced in signal-JEPA Guetschel, P et al (2024) [1]_.
|
|
409
409
|
|
|
410
|
-
:bdg-
|
|
410
|
+
:bdg-danger:`Large Brain Model`
|
|
411
411
|
|
|
412
412
|
This architecture is one of the variants of :class:`SignalJEPA`
|
|
413
413
|
that can be used for classification purposes.
|
|
@@ -558,8 +558,6 @@ class SignalJEPA_PostLocal(_BaseSignalJEPA):
|
|
|
558
558
|
class SignalJEPA_PreLocal(_BaseSignalJEPA):
|
|
559
559
|
"""Pre-local downstream architecture introduced in signal-JEPA Guetschel, P et al (2024) [1]_.
|
|
560
560
|
|
|
561
|
-
:bdg-success:`Convolution` :bdg-dark-line:`Channel` :bdg-danger:`Large Brain Model`
|
|
562
|
-
|
|
563
561
|
This architecture is one of the variants of :class:`SignalJEPA`
|
|
564
562
|
that can be used for classification purposes.
|
|
565
563
|
|
{braindecode-1.3.0.dev173675610 → braindecode-1.3.0.dev173767962}/braindecode/models/sinc_shallow.py
RENAMED
|
@@ -12,8 +12,6 @@ from braindecode.models.base import EEGModuleMixin
|
|
|
12
12
|
class SincShallowNet(EEGModuleMixin, nn.Module):
|
|
13
13
|
"""Sinc-ShallowNet from Borra, D et al (2020) [borra2020]_.
|
|
14
14
|
|
|
15
|
-
:bdg-success:`Convolution` :bdg-warning:`Interpretability`
|
|
16
|
-
|
|
17
15
|
.. figure:: https://ars.els-cdn.com/content/image/1-s2.0-S0893608020302021-gr2_lrg.jpg
|
|
18
16
|
:align: center
|
|
19
17
|
:alt: SincShallowNet Architecture
|
{braindecode-1.3.0.dev173675610 → braindecode-1.3.0.dev173767962}/braindecode/models/summary.csv
RENAMED
|
@@ -13,7 +13,6 @@ EEGInceptionMI,Motor Imagery,Classification,250,"n_chans, n_outputs, n_times",55
|
|
|
13
13
|
EEGITNet,Motor Imagery,Classification,125,"n_chans, n_outputs, n_times",5212,"EEGITNet(n_chans=22, n_outputs=4, n_times=500)","Convolution,Recurrent"
|
|
14
14
|
EEGNet,General,Classification,128,"n_chans, n_outputs, n_times",2484,"EEGNet(n_chans=22, n_outputs=4, n_times=512)","Convolution"
|
|
15
15
|
EEGNeX,Motor Imagery,Classification,125,"n_chans, n_outputs, n_times",55940,"EEGNeX(n_chans=22, n_outputs=4, n_times=500)","Convolution"
|
|
16
|
-
EEGSym,Motor Imagery,Classification,250,"n_chans, n_outputs, n_times, sfreq",299218,"EEGSym(n_chans=22, n_outputs=4, n_times=1000, sfreq=250)","Convolution,Channel"
|
|
17
16
|
EEGMiner,Emotion Recognition,Classification,128,"n_chans, n_outputs, n_times, sfreq",7572,"EEGMiner(n_chans=62, n_outputs=2, n_times=2560, sfreq=128)","Convolution,Interpretability"
|
|
18
17
|
EEGSimpleConv,Motor Imagery,Classification,80,"n_chans, n_outputs, sfreq",730404,"EEGSimpleConv(n_chans=22, n_outputs=4, n_times=320, sfreq=80)","Convolution"
|
|
19
18
|
EEGTCNet,Motor Imagery,Classification,250,"n_chans, n_outputs",4516,"EEGTCNet(n_chans=22, n_outputs=4, n_times=1000, kern_length=32)","Convolution,Recurrent"
|
{braindecode-1.3.0.dev173675610 → braindecode-1.3.0.dev173767962}/braindecode/models/syncnet.py
RENAMED
|
@@ -10,8 +10,6 @@ from braindecode.models.base import EEGModuleMixin
|
|
|
10
10
|
class SyncNet(EEGModuleMixin, nn.Module):
|
|
11
11
|
"""Synchronization Network (SyncNet) from Li, Y et al (2017) [Li2017]_.
|
|
12
12
|
|
|
13
|
-
:bdg-warning:`Interpretability`
|
|
14
|
-
|
|
15
13
|
.. figure:: https://braindecode.org/dev/_static/model/SyncNet.png
|
|
16
14
|
:align: center
|
|
17
15
|
:alt: SyncNet Architecture
|
|
@@ -14,8 +14,6 @@ from braindecode.modules import Chomp1d, Ensure4d, SqueezeFinalOutput
|
|
|
14
14
|
class BDTCN(EEGModuleMixin, nn.Module):
|
|
15
15
|
"""Braindecode TCN from Gemein, L et al (2020) [gemein2020]_.
|
|
16
16
|
|
|
17
|
-
:bdg-success:`Convolution` :bdg-secondary:`Recurrent`
|
|
18
|
-
|
|
19
17
|
.. figure:: https://ars.els-cdn.com/content/image/1-s2.0-S1053811920305073-gr3_lrg.jpg
|
|
20
18
|
:align: center
|
|
21
19
|
:alt: Braindecode TCN Architecture
|
{braindecode-1.3.0.dev173675610 → braindecode-1.3.0.dev173767962}/braindecode/models/util.py
RENAMED
|
@@ -79,7 +79,6 @@ models_mandatory_parameters = [
|
|
|
79
79
|
("SPARCNet", ["n_chans", "n_outputs", "n_times"], None),
|
|
80
80
|
("ContraWR", ["n_chans", "n_outputs", "sfreq", "n_times"], dict(sfreq=200.0)),
|
|
81
81
|
("EEGNeX", ["n_chans", "n_outputs", "n_times"], None),
|
|
82
|
-
("EEGSym", ["chs_info", "n_chans", "n_outputs", "n_times", "sfreq"], None),
|
|
83
82
|
("TSception", ["n_chans", "n_outputs", "n_times", "sfreq"], dict(sfreq=200.0)),
|
|
84
83
|
("EEGTCNet", ["n_chans", "n_outputs", "n_times"], None),
|
|
85
84
|
("SyncNet", ["n_chans", "n_outputs", "n_times"], None),
|
{braindecode-1.3.0.dev173675610 → braindecode-1.3.0.dev173767962}/braindecode/modules/filter.py
RENAMED
|
@@ -109,6 +109,11 @@ class FilterBankLayer(nn.Module):
|
|
|
109
109
|
or "firwin2" to use :func:`scipy.signal.firwin2`. "firwin" uses
|
|
110
110
|
a time-domain design technique that generally gives improved
|
|
111
111
|
attenuation using fewer samples than "firwin2".
|
|
112
|
+
pad : str, default='reflect_limited'
|
|
113
|
+
The type of padding to use. Supports all func:`numpy.pad()` mode options.
|
|
114
|
+
Can also be "reflect_limited", which pads with a reflected version of
|
|
115
|
+
each vector mirrored on the first and last values of the vector,
|
|
116
|
+
followed by zeros. Only used for ``method='fir'``.
|
|
112
117
|
verbose: bool | str | int | None, default=True
|
|
113
118
|
Control verbosity of the logging output. If ``None``, use the default
|
|
114
119
|
verbosity level. See the func:`mne.verbose` for details.
|
|
@@ -178,6 +183,7 @@ class FilterBankLayer(nn.Module):
|
|
|
178
183
|
"The band_filters items should be splitable in 2 values."
|
|
179
184
|
)
|
|
180
185
|
|
|
186
|
+
# and we accepted as
|
|
181
187
|
self.band_filters = band_filters
|
|
182
188
|
self.n_bands = len(band_filters)
|
|
183
189
|
self.phase = phase
|
|
@@ -1,16 +1,3 @@
|
|
|
1
|
-
from .eegprep_preprocess import (
|
|
2
|
-
EEGPrep,
|
|
3
|
-
ReinterpolateRemovedChannels,
|
|
4
|
-
RemoveBadChannels,
|
|
5
|
-
RemoveBadChannelsNoLocs,
|
|
6
|
-
RemoveBadWindows,
|
|
7
|
-
RemoveBursts,
|
|
8
|
-
RemoveCommonAverageReference,
|
|
9
|
-
RemoveDCOffset,
|
|
10
|
-
RemoveDrifts,
|
|
11
|
-
RemoveFlatChannels,
|
|
12
|
-
Resampling,
|
|
13
|
-
)
|
|
14
1
|
from .mne_preprocess import ( # type: ignore[attr-defined]
|
|
15
2
|
Crop,
|
|
16
3
|
DropChannels,
|
|
@@ -44,17 +31,6 @@ __all__ = [
|
|
|
44
31
|
"Filter",
|
|
45
32
|
"Pick",
|
|
46
33
|
"Crop",
|
|
47
|
-
"EEGPrep",
|
|
48
|
-
"RemoveDCOffset",
|
|
49
|
-
"Resampling",
|
|
50
|
-
"RemoveFlatChannels",
|
|
51
|
-
"RemoveDrifts",
|
|
52
|
-
"RemoveBadChannels",
|
|
53
|
-
"RemoveBadChannelsNoLocs",
|
|
54
|
-
"RemoveBursts",
|
|
55
|
-
"RemoveBadWindows",
|
|
56
|
-
"ReinterpolateRemovedChannels",
|
|
57
|
-
"RemoveCommonAverageReference",
|
|
58
34
|
"create_windows_from_events",
|
|
59
35
|
"create_fixed_length_windows",
|
|
60
36
|
"create_windows_from_target_channels",
|
|
@@ -11,7 +11,6 @@
|
|
|
11
11
|
# Maciej Sliwowski <maciek.sliwowski@gmail.com>
|
|
12
12
|
# Mohammed Fattouh <mo.fattouh@gmail.com>
|
|
13
13
|
# Robin Schirrmeister <robintibor@gmail.com>
|
|
14
|
-
# Matthew Chen <matt.chen42601@gmail.com>
|
|
15
14
|
#
|
|
16
15
|
# License: BSD (3-clause)
|
|
17
16
|
|
|
@@ -515,7 +514,7 @@ def _create_windows_from_events(
|
|
|
515
514
|
}
|
|
516
515
|
)
|
|
517
516
|
|
|
518
|
-
events, events_id = mne.events_from_annotations(ds.raw, mapping
|
|
517
|
+
events, events_id = mne.events_from_annotations(ds.raw, mapping)
|
|
519
518
|
onsets = events[:, 0]
|
|
520
519
|
# Onsets are relative to the beginning of the recording
|
|
521
520
|
filtered_durations = np.array(
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
__version__ = "1.3.0.dev173767962"
|
{braindecode-1.3.0.dev173675610 → braindecode-1.3.0.dev173767962/braindecode.egg-info}/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.dev173767962
|
|
4
4
|
Summary: Deep learning software to decode EEG, ECG or MEG signals
|
|
5
5
|
Author-email: Robin Tibor Schirrmeister <robintibor@gmail.com>
|
|
6
6
|
Maintainer-email: Alexandre Gramfort <agramfort@meta.com>, Bruno Aristimunha Pinto <b.aristimunha@gmail.com>, Robin Tibor Schirrmeister <robintibor@gmail.com>
|
|
@@ -40,8 +40,6 @@ Requires-Dist: linear_attention_transformer
|
|
|
40
40
|
Requires-Dist: docstring_inheritance
|
|
41
41
|
Provides-Extra: moabb
|
|
42
42
|
Requires-Dist: moabb>=1.2.0; extra == "moabb"
|
|
43
|
-
Provides-Extra: eegprep
|
|
44
|
-
Requires-Dist: eegprep[eeglabio]>=0.1.1; extra == "eegprep"
|
|
45
43
|
Provides-Extra: hug
|
|
46
44
|
Requires-Dist: huggingface_hub[torch]>=0.20.0; extra == "hug"
|
|
47
45
|
Provides-Extra: tests
|
|
@@ -69,7 +67,7 @@ Requires-Dist: pre-commit; extra == "docs"
|
|
|
69
67
|
Requires-Dist: openneuro-py; extra == "docs"
|
|
70
68
|
Requires-Dist: plotly; extra == "docs"
|
|
71
69
|
Provides-Extra: all
|
|
72
|
-
Requires-Dist: braindecode[docs,
|
|
70
|
+
Requires-Dist: braindecode[docs,hug,moabb,tests]; extra == "all"
|
|
73
71
|
Dynamic: license-file
|
|
74
72
|
|
|
75
73
|
.. image:: https://badges.gitter.im/braindecodechat/community.svg
|
{braindecode-1.3.0.dev173675610 → braindecode-1.3.0.dev173767962}/braindecode.egg-info/SOURCES.txt
RENAMED
|
@@ -33,7 +33,6 @@ braindecode/datasets/sleep_physionet.py
|
|
|
33
33
|
braindecode/datasets/tuh.py
|
|
34
34
|
braindecode/datasets/xy.py
|
|
35
35
|
braindecode/datautil/__init__.py
|
|
36
|
-
braindecode/datautil/channel_utils.py
|
|
37
36
|
braindecode/datautil/serialization.py
|
|
38
37
|
braindecode/datautil/util.py
|
|
39
38
|
braindecode/functional/__init__.py
|
|
@@ -58,7 +57,6 @@ braindecode/models/eegminer.py
|
|
|
58
57
|
braindecode/models/eegnet.py
|
|
59
58
|
braindecode/models/eegnex.py
|
|
60
59
|
braindecode/models/eegsimpleconv.py
|
|
61
|
-
braindecode/models/eegsym.py
|
|
62
60
|
braindecode/models/eegtcnet.py
|
|
63
61
|
braindecode/models/fbcnet.py
|
|
64
62
|
braindecode/models/fblightconvnet.py
|
|
@@ -96,10 +94,8 @@ braindecode/modules/stats.py
|
|
|
96
94
|
braindecode/modules/util.py
|
|
97
95
|
braindecode/modules/wrapper.py
|
|
98
96
|
braindecode/preprocessing/__init__.py
|
|
99
|
-
braindecode/preprocessing/eegprep_preprocess.py
|
|
100
97
|
braindecode/preprocessing/mne_preprocess.py
|
|
101
98
|
braindecode/preprocessing/preprocess.py
|
|
102
|
-
braindecode/preprocessing/util.py
|
|
103
99
|
braindecode/preprocessing/windowers.py
|
|
104
100
|
braindecode/samplers/__init__.py
|
|
105
101
|
braindecode/samplers/base.py
|
{braindecode-1.3.0.dev173675610 → braindecode-1.3.0.dev173767962}/braindecode.egg-info/requires.txt
RENAMED
|
@@ -17,7 +17,7 @@ linear_attention_transformer
|
|
|
17
17
|
docstring_inheritance
|
|
18
18
|
|
|
19
19
|
[all]
|
|
20
|
-
braindecode[docs,
|
|
20
|
+
braindecode[docs,hug,moabb,tests]
|
|
21
21
|
|
|
22
22
|
[docs]
|
|
23
23
|
sphinx_gallery
|
|
@@ -38,9 +38,6 @@ pre-commit
|
|
|
38
38
|
openneuro-py
|
|
39
39
|
plotly
|
|
40
40
|
|
|
41
|
-
[eegprep]
|
|
42
|
-
eegprep[eeglabio]>=0.1.1
|
|
43
|
-
|
|
44
41
|
[hug]
|
|
45
42
|
huggingface_hub[torch]>=0.20.0
|
|
46
43
|
|
|
@@ -73,7 +73,6 @@ save and load models from the Hugging Face Hub, if the ``braindecode[hug]`` pack
|
|
|
73
73
|
EEGNet
|
|
74
74
|
EEGNeX
|
|
75
75
|
EEGSimpleConv
|
|
76
|
-
EEGSym
|
|
77
76
|
EEGTCNet
|
|
78
77
|
FBCNet
|
|
79
78
|
FBLightConvNet
|
|
@@ -375,39 +374,12 @@ Preprocessing
|
|
|
375
374
|
filterbank
|
|
376
375
|
preprocess
|
|
377
376
|
Preprocessor
|
|
378
|
-
|
|
379
|
-
|
|
380
|
-
|
|
381
|
-
Preprocessing Transform
|
|
382
|
-
''''''''''''''''''''''''
|
|
383
|
-
|
|
384
|
-
These modules implement various preprocessing transforms that can be applied
|
|
385
|
-
to EEG data, including cropping, filtering, resampling, and channel selection.
|
|
386
|
-
|
|
387
|
-
:py:mod:`braindecode.preprocessing`:
|
|
388
|
-
|
|
389
|
-
.. currentmodule:: braindecode.preprocessing
|
|
390
|
-
|
|
391
|
-
.. autosummary::
|
|
392
|
-
:toctree: generated/
|
|
393
|
-
|
|
394
|
-
Crop
|
|
377
|
+
Resample
|
|
395
378
|
DropChannels
|
|
379
|
+
SetEEGReference
|
|
396
380
|
Filter
|
|
397
381
|
Pick
|
|
398
|
-
|
|
399
|
-
RemoveBadChannels
|
|
400
|
-
RemoveBadChannelsNoLocs
|
|
401
|
-
RemoveBadWindows
|
|
402
|
-
RemoveBursts
|
|
403
|
-
RemoveCommonAverageReference
|
|
404
|
-
RemoveDCOffset
|
|
405
|
-
RemoveDrifts
|
|
406
|
-
RemoveFlatChannels
|
|
407
|
-
Resample
|
|
408
|
-
Resampling
|
|
409
|
-
SetEEGReference
|
|
410
|
-
|
|
382
|
+
Crop
|
|
411
383
|
|
|
412
384
|
Data Utils
|
|
413
385
|
==========
|
|
@@ -27,14 +27,9 @@ Enhancements
|
|
|
27
27
|
- Adding :class:`braindecode.models.SSTDPN` (:gh:`790` by `Can Han`_ and `Bruno Aristimunha`_ )
|
|
28
28
|
- Added :class:`braindecode.models.BENDR` (:gh:`802` by `Bruno Aristimunha`_ )
|
|
29
29
|
- Adding a tutorial for fine-tuning a pre-trained foundation model (:gh:`794` by `Pierre Guetschel`_)
|
|
30
|
-
- Adding artifact removal preprocessing steps, incl. :class:`braindecode.preprocessing.EEGPrep` (:gh:`796` by `Christian Kothe`_)
|
|
31
30
|
- Including huggingface hub mixin to all models (:gh:`795` by `Kuntal Kokate`_ )
|
|
32
31
|
- Better inheritance between the different dataset classes (:gh:`806` by `Pierre Guetschel`_ )
|
|
33
|
-
|
|
34
|
-
- Including missed tag in all the models and creating some test for it (:gh:`811` by `Bruno Aristimunha`_ )
|
|
35
|
-
- Modify verbosity of create_window_from_events (:gh:`814` by `Matthew Chen`_)
|
|
36
|
-
- Modify the interface of FBMSNet for consistency with FBCNet + Unit Tests (:gh:`819` by `Matthew Chen`_)
|
|
37
|
-
- Adding :class:`braindecode.models.EEGSym` model (:gh:`697` by `Pierre Guetschel`_ and `Bruno Aristimunha`_ )
|
|
32
|
+
|
|
38
33
|
|
|
39
34
|
|
|
40
35
|
API changes
|
|
@@ -417,6 +412,4 @@ Authors
|
|
|
417
412
|
.. _Hamdi Altaheri: https://github.com/Altaheri
|
|
418
413
|
.. _José Mauricio: https://github.com/josemaurici
|
|
419
414
|
.. _Can Han: https://github.com/hancan16
|
|
420
|
-
.. _Christian Kothe: https://github.com/chkothe
|
|
421
415
|
.. _Kuntal Kokate: https://github.com/Kkuntal990
|
|
422
|
-
.. _Matthew Chen: https://github.com/MatthewChen37
|
|
@@ -65,7 +65,6 @@ documentation = "https://braindecode.org/stable/index.html"
|
|
|
65
65
|
|
|
66
66
|
[project.optional-dependencies]
|
|
67
67
|
moabb = ["moabb>=1.2.0"]
|
|
68
|
-
eegprep = ["eegprep[eeglabio]>=0.1.1"]
|
|
69
68
|
hug = ["huggingface_hub[torch]>=0.20.0"]
|
|
70
69
|
tests = [
|
|
71
70
|
'pytest',
|
|
@@ -94,7 +93,7 @@ docs = [
|
|
|
94
93
|
'plotly',
|
|
95
94
|
]
|
|
96
95
|
all = [
|
|
97
|
-
"braindecode[moabb,hug,tests,docs
|
|
96
|
+
"braindecode[moabb,hug,tests,docs]"
|
|
98
97
|
]
|
|
99
98
|
|
|
100
99
|
[tool.setuptools]
|