[b4808a]: / docs / whats_new.rst

Download this file

325 lines (290 with data), 27.3 kB

Orphan:

What's new

Current 0.9 (dev0)

Enhancements

  • Adding :class:`braindecode.models.IFNet` (:gh:`725` by Bruno Aristimunha )
  • Adding :class:`braindecode.models.FBMSNet` (:gh:`724` by Bruno Aristimunha )
  • Adding :class:`braindecode.models.FBCNet` (:gh:`722` by Bruno Aristimunha )
  • Adding :class:`braindecode.models.FBLightConvNet` (:gh:`723` by Bruno Aristimunha )
  • Added dropdown menus for selecting paradigm, type, and hyperparameters on the model summary page. (:gh:`718` by Ganasekhar Kalla)
  • Adding model page (:gh:`715` by Lucas Heck)
  • Inference of shape for string module when using :class:`skorch.helper.SliceDataset` (:gh:`716` by Bruno Aristimunha)
  • Fix error when using n_njobs > 1 on Windows (:gh:`700` by Arnaud Delorme)
  • Adding :class:`braindecode.models.AttentionBaseNet` (:gh:`572` by Bruno Aristimunha and Martin Wimpff)
  • Adding :class:`braindecode.datasets.NMT` dataset (:gh:`443` by Mohammad Javad D and Bruno Aristimunha)
  • Adding an integration test for all the models (:gh: 570 by Bruno Aristimunha)
  • Adding :class:`braindecode.models.BIOT` (:gh:`573` by Bruno Aristimunha)
  • Adding :class:`braindecode.models.Labram` (:gh:`578` by Bruno Aristimunha)
  • Applying black to the codebase (:gh:`579` by Bruno Aristimunha)
  • Adding :class:`braindecode.models.EEGSimpleConv` (:gh:`581` by Yassine El Ouahidi and Bruno Aristimunha)
  • Increasing the coverage of the tests (:gh:`592` by Bruno Aristimunha)
  • Adding cache and pre-processing option to :class:`braindecode.datasets.MOABBDataset` (:gh:`582` by Bruno Aristimunha)
  • Add type hints to datasets (:gh:`590` by Pierre Guetschel)
  • Add channel names and montage to :class:`braindecode.datasets.TUH` (:gh:`593` by Pierre Guetschel)
  • Add offset arg to :func:`braindecode.preprocessing.preprocess` (:gh:`599` by Pierre Guetschel)
  • Add type hints to preprocessing (:gh:`600` by Pierre Guetschel)
  • Add mypy type checks to pre-commit and CI (:gh:`606` by Pierre Guetschel)
  • Code clarity changes in windowers.py (:gh:`615` by John Muradeli)
  • Adding SegmentationReconstruction augmentation :class:`braindecode.augmentation.SegmentationReconstruction` (:gh:`608` by Gustavo Rodrigues)
  • Add two models :class:`braindecode.models.ContraWR` and :class:`braindecode.models.SPARCNet` (:gh:`611` by Bruno Aristimunha)
  • Add Sleep Physionet 18 dataset (:gh:`621` by Hubert Banville and Bruno Aristimunha)
  • Optimize the CI by executing only the last commit (:gh:`612` by Bruno Aristimunha)
  • Add experimental lazy_metadata parameter to :func:`braindecode.preprocessing.create_fixed_length_windows` (:gh:`597` by Pierre Guetschel)
  • Increasing moabb version to 1.1.0 (:gh:`632` by Bruno Aristimunha)
  • Add MaskEncoding augmentation :class:`braindecode.augmentation.MaskEncoding` (:gh:`631` by Gustavo Rodrigues)
  • Adding :class:`braindecode.models.EEGNex` (:gh:`635` by Bruno Aristimunha )
  • Adding :class:`braindecode.models.TSception` (:gh:`641` by Bruno Aristimunha )
  • Adding :class:`braindecode.models.EEGTCNet` (:gh:`640` by Bruno Aristimunha )
  • Ensure consistency in the last layer using tests (:gh:`642` by Bruno Aristimunha )
  • Ensuring consistency on the expose of the activation function (:gh:`637` by Bruno Aristimunha )
  • Adding :class:`braindecode.models.SyncNet` (:gh:`643` by Bruno Aristimunha )
  • Adding :class:`braindecode.models.MSVTNet` (:gh:`659` by Bruno Aristimunha )
  • Creating the FilterBanklayer module for new models (:gh:`656` by Bruno Aristimunha )
  • Including PytorchAudio as dependency and remove copied code (:gh:`661` by Bruno Aristimunha)
  • Adding :class:`braindecode.models.EEGMiner` (:gh:`667` by Bruno Aristimunha )
  • Adding :class:`braindecode.models.CTNet` (:gh:`666` by Bruno Aristimunha )
  • Fix warnings not being suppressed when creating a TUHAbnormal dataset in parallel (:gh:`670` by Aphel)
  • Exposing :class:`braindecode.models.EEGITNet` hyper-parameters (:gh:`672` by Bruno Aristimunha)
  • Adding :class:`braindecode.models.SincShallowNet` (:gh:`678` by Bruno Aristimunha )
  • Adding :class:`braindecode.models.SCCNet` (:gh:`679` by Bruno Aristimunha )
  • Fix error when using NMT dataset with n_jobs > 1 (:gh:`690` by Aphel)
  • Adding support for distributed samplers (:gh:`695` by Young Truong)
  • Adding :class:`braindecode.datasets.BIDSDataset` and :class:`braindecode.datasets.BIDSEpochsDataset` plus tutorial (:gh:`701` :gh:`702` :gh:`704` by Pierre Guetschel )
  • Add :class:`braindecode.models.SignalJEPA` plus downstream architectures (:gh:`703` by Pierre Guetschel )
  • Various improvements on documentation:

Bugs

  • Fix annotations bug for moabb datasets with non-zero interval (:gh: 561 by Daniel Wilson)
  • Fix deprecated test and changing the what's new checker (:gh: 569 by Bruno Aristimunha)
  • Fix issue with coverage CI and adding a condition on the test for avoid HTML errors (:gh: 591 by Bruno Aristimunha)
  • Constraint the version of mne (:gh: 594 by Bruno Aristimunha)
  • Fix type errors (:gh:`606` by Pierre Guetschel)
  • Warn when applying preprocessing steps on a :class:`braindecode.datasets.base.EEGWindowsDataset` (:gh:`607` by Pierre Guetschel)
  • Fix matplotlib colormaps deprecation (:gh:`608` by Bruno Aristimunha)
  • Ensure mypy to work for every commit (:gh:`619` by Bruno Aristimunha)
  • Deprecate moabb version 1.0.0 because of incorrect epoching (:gh:`627` by Pierre Guetschel)
  • Fixing tutorial benchmark lazy eager loagin (:gh:`` by Bruno Aristimunha and Aphel)
  • Improve doc build's time with better caching (:gh:`693` by Thomas Moreau)
  • Fixing the MOABBDataset to work with the cache (:gh:`694` by Bruno Aristimunha)

API changes

  • Expose the use_mne_epochs parameter of :func:`braindecode.preprocessing.create_windows_from_events` (:gh:`607` by Pierre Guetschel)
  • Parameter use_log_softmax is default as False for all the models in (:gh:`624` by Bruno Aristimunha)
  • Normalizing the parameters for dropout as part of normalization of model parameters (:gh:`624` by Bruno Aristimunha)
  • Removing use_log_softmax and old parameters (:gh:`671` by Bruno Aristimunha)
  • Moving :class:`braindecode.models.TCN` and :class:`braindecode.models.HybridNet` to module and creating :class:`braindecode.models.BDTCN` (:gh:`673` by Bruno Aristimunha)
  • Removing dead parameters from :class:`braindecode.models.EEGNetv4` (:gh:`676` by Bruno Aristimunha)
  • Including Linear Layer at the end :class:`braindecode.models.EEGNetv4` (:gh:`680` by Bruno Aristimunha)

Current 0.8 (11-2022)

Enhancements

  • Adding :class:`braindecode.models.EEGInceptionMI` network for motor imagery (:gh:`428` by Cedric Rommel)
  • Adding :class:`braindecode.models.ATCNet` network for motor imagery (:gh:`429` by Cedric Rommel)
  • Adding to :class:`braindecode.datasets.tuh.TUH` compatibility with version 3.0 of TUH dataset (:gh:`431` by Mohammad Javad D, Bruno Aristimunha, Robin Tibor Schirrmeister, Lukas Gemein, Denis A. Engemann and Oskar Størmer)
  • Adding :class:`braindecode.models.DeepSleepNet` network for sleep staging (:gh:`417` by Théo Gnassounou)
  • Adding :class:`braindecode.models.EEGConformer` network (:gh:`454` by Yonghao Song and Bruno Aristimunha)
  • Adding einops in the requirements (:gh:`466` by Bruno Aristimunha)
  • Have moabb as an extra dependency (:gh:`467` by Marco Zamboni)
  • Replacing the replacing Pytorch layers to Rearrange from einops #468 (:gh:`468` by Bruno Aristimunha)
  • Refactoring the documentation and creating a sub-structure for the examples (:gh:`470` by Denis A. Engemann and Bruno Aristimunha)
  • Solving issues with slow conda and splitting the doc and test .yml to speed the CI. (:gh:`479` by Bruno Aristimunha)
  • Improving the GitHub Actions CI and solving the skorch compatibility in the examples (:gh:`472` by Bruno Aristimunha)
  • Changing the documentation order (:gh:`489` by Bruno Aristimunha)
  • Improve the documentation for the Temple University Hospital (TUH) EEG Corpus with discrete targets (:gh:`485` by Pierre Guetschel and Bruno Aristimunha)
  • Improving documentation for MOABB dataset, Trialwise Decoding & Cropped Decoding (:gh:`490` by Daniel Wilson)
  • Improving the documentation for the sleep stage examples (:gh:`487` by Bruno Aristimunha)
  • Improving the tutorial Hyperparameter tuning with scikit-learn (:gh:`473` by Bruno Aristimunha)
  • Add :class:`braindecode.models.base.EEGModuleMixin` base class for all braindecode models (:gh:`488` by Pierre Guetschel)
  • Normalize all models common parameters and leaving the old ones as deprecated (:gh:`488` by Pierre Guetschel)
  • Improving the tutorial with a Data Augmentation Search (:gh:`495` by Sylvain Chevallier)
  • Improving documentation for "Split Dataset" and "Process a big data EEG resource" examples (:gh:`494` by Bruna Lopes)
  • Improving documentation for the Convolutional neural network regression model on fake data (:gh:`491` by Sara Sedlar)
  • Enforcing the eval mode in the function predict trial. (:gh:`497` by Bruno Aristimunha)
  • Adding extra requirements for pip install, update doc, removing conda env file (:gh:`505` by Sylvain Chevallier)
  • Add models user-friendly representation with torchinfo tables to :class:`braindecode.models.base.EEGModuleMixin` (:gh:`488` by Maciej Śliwowski)
  • Merged temporal and spatial convolutions for Deep4 and ShallowFBCSP (by Daniel Wilson and Sara Sedlar)
  • Enabling data augmentation of single inputs (with no batch dimension). (:gh:`503` by Cedric Rommel)
  • Adding randomize parameter to :class:`braindecode.samplers.SequenceSampler` (:gh:`504` by Théo Gnassounou.)
  • Creating new preprocessor objects based on mne's raw/Epochs methods :class:`braindecode.preprocessing.Resample`, :class:`braindecode.preprocessing.DropChannels`, :class:`braindecode.preprocessing.SetEEGReference`, :class:`braindecode.preprocessing.Filter`, :class:`braindecode.preprocessing.Pick`, :class:`braindecode.preprocessing.Crop` (:gh:`500` by Bruna Lopes and Bruno Aristimunha)
  • Moving :class:`braindecode.models.util.get_output_shape` and :func:`braindecode.models.util.to_dense_prediction_model` to :class:`braindecode.models.base.EEGModuleMixin` (:gh:`514` by Maciej Śliwowski)
  • Automatically populate signal-related parameters in :class:`braindecode.EEGClassifier` and :class:`braindecode.EEGRegressor` (:gh:`517` by Pierre Guetschel)
  • Adding a pure PyTorch tutorial (:gh:`523` by Remi Delbouys and Bruno Aristimunha)
  • Add models_dict to :mod:`braindecode.models.util` (:gh:`524` by Pierre Guetschel)
  • Keep using mne.Raw after windowing to speed up windowing, do not create mne.Epochs (:gh:`515` by Robin Tibor Schirrmeister)
  • Changing :class:`braindecode.models.Deep4Net` final_conv_length default value to 'auto' (:gh:`535` by Maciej Śliwowski)
  • Add support for :class:`mne.Epochs` in :class:`braindecode.EEGClassifier` and :class:`braindecode.EEGRegressor` (:gh:`529` by Pierre Guetschel)
  • Allow passing only the name of a braindecode model to :class:`braindecode.EEGClassifier` and :class:`braindecode.EEGRegressor` (:gh:`528` by Pierre Guetschel)
  • Standardizing models' last layer names (:gh:`520` by Bruna Lopes and Pierre Guetschel)
  • Add basic training example with MNE epochs (:gh:`539` by Pierre Guetschel)
  • Log validation accuracy in :class:`braindecode.EEGClassifier` (:gh:`541` by Pierre Guetschel)
  • Better type hints in :mod:`braindecode.augmentation.base` (:gh:`551` by Valentin Iovene)
  • Support for MOABB 1.0.0 and switch to pyproject.toml (:gh:`553` by Sylvain Chevallier)
  • Adding pre-commit hooks (:gh:`556` by Bruno Aristimunha)

Bugs

  • Fixing conda env in the CI (:gh:`461` by Bruno Aristimunha)
  • Fixing E231 missing whitespace after ',' untraceable error in old flake8 (:gh:`460` by Bruno Aristimunha)
  • Removing deprecation warning due to torch transposition in :func:`braindecode.augmentation.functional._frequency_shift` (:gh:`446` by Matthieu Terris)
  • Fix padding's device in :class:`braindecode.models.EEGResNet` (:gh:`451` by Pierre Guetschel)
  • Fix skorch version issue (:gh:`465` by Marco Zamboni)
  • Fix wrong kernel_size dtype when running torchinfo in :class:`braindecode.models.USleep` (:gh:`538` by Maciej Śliwowski)
  • Fix bug when using GPU and channel shuffle transform (:gh:`546` by Robin Tibor Schirrmeister)

API changes

  • Renaming the :class:`braindecode.models.EEGInception` network as :class:`braindecode.models.EEGInceptionERP` (:gh:`428` by Cedric Rommel)
  • Removing support for Python 3.7 (:gh:`397` by Bruno Aristimunha)
  • Removing the LogSoftmax layer from the models and adding deprecated warnings and temporary flags (:gh:`513` by Sara Sedlar)

Current 0.7 (10-2022)

Enhancements

  • Adding EEG-Inception Network :class:`braindecode.models.EEGInception` (:gh:`390` by Bruno Aristimunha and Cedric Rommel)
  • Adding EEG-ITNet Network :class:`braindecode.models.EEGITNet` (:gh:`400` by Ghaith Bouallegue)
  • Allowing target_names as list for BaseDataset (:gh:`371` by Mohammad Javad D and Robin Tibor Schirrmeister)
  • Adding tutorial with GridSearchCV for data augmentation on the BCIC IV 2a with module braindecode.augmentation (:gh:`389` by Bruno Aristimunha and Cedric Rommel)
  • Adding tutorial with GridSearchCV to exemplify how to tune hyperparameters, for instance with the learning rate (:gh:`349` by Lukas Gemein and by Bruno Aristimunha)
  • Adding tutorial with a Unified Validation scheme (:gh:`378` by Bruno Aristimunha and Martin Wimpff)
  • Adding verbose parameter to :func:`braindecode.preprocessing.create_windows_from_events`, :func:`braindecode.preprocessing.create_windows_from_target_channels`, and :func:`braindecode.preprocessing.create_fixed_length_windows` (:gh:`391` by Lukas Gemein)
  • Enable augmentation on GPU within :class:`AugmentedDataloader` via a new device parameter (:gh:`406` by Martin Wimpff, Bruno Aristimunha and Cedric Rommel)
  • Adding randomize parameter to :class:`braindecode.samplers.SequenceSampler` (:gh:`504` by Théo Gnassounou.)

Bugs

  • Fixing parameter subject_ids to recoding_ids in TUHAbnormal example (:gh:`402` by Bruno Aristimunha and Lukas Gemein)
  • Bug fix :func:`braindecode.augmentation.functional.ft_surrogate` and add option to sample independently per-channel (:gh:`409` by Martin Wimpff and Cedric Rommel)

API changes

  • Renaming the method get_params to get_augmentation_params in augmentation classes. This makes the Transform module compatible with scikit-learn cloning mechanism (:gh:`388` by Bruno Aristimunha and Alex Gramfort)
  • Delaying the deprecation of the preprocessing scale function :func:`braindecode.preprocessing.scale` and updates tutorials where the function were used. (:gh:`413` by Bruno Aristimunha)
  • Removing deprecated functions and classes :func:`braindecode.preprocessing.zscore`, :class:`braindecode.datautil.MNEPreproc` and :class:`braindecode.datautil.NumpyPreproc` (:gh:`415` by Bruno Aristimunha)
  • Setting iterator_train__drop_last=True by default for :class:`braindecode.EEGClassifier` and :class:`braindecode.EEGRegressor` (:gh:`411` by Robin Tibor Schirrmeister)

Version 0.6 (2021-12-06)

Enhancements

  • Adding :class:`braindecode.samplers.SequenceSampler` along with support for returning sequences of windows in :class:`braindecode.datasets.BaseConcatDataset` and an updated sleep staging example to show how to train on sequences of windows (:gh:`263` by Hubert Banville)
  • Adding Thinker Invariance Network :class:`braindecode.models.TIDNet` (:gh:`170` by Ann-Kathrin Kiessner, Daniel Wilson, Henrik Bonsmann, Vytautas Jankauskas)
  • Adding a confusion matrix plot generator :func:`braindecode.visualization.plot_confusion_matrix` (:gh:`274` by Ann-Kathrin Kiessner, Daniel Wilson, Henrik Bonsmann, Vytautas Jankauskas)
  • Adding data :ref:`augmentation_api` module (:gh:`254` by Cedric Rommel, Alex Gramfort and Thomas Moreau)
  • Adding Mixup augmentation :class:`braindecode.augmentation.Mixup` (:gh:`254` by Simon Brandt)
  • Adding saving of preprocessing and windowing choices in :func:`braindecode.preprocessing.preprocess`, :func:`braindecode.preprocessing.create_windows_from_events` and :func:`braindecode.preprocessing.create_fixed_length_windows` to datasets to facilitate reproducibility (:gh:`287` by Lukas Gemein)
  • Adding :func:`braindecode.models.util.aggregate_probas` to perform self-ensembling of predictions with sequence-to-sequence models (:gh:`294` by Hubert Banville)
  • Adding :func:`braindecode.training.scoring.predict_trials` to generate trialwise predictions after cropped training (:gh:`312` by Lukas Gemein)
  • Preprocessing and windowing choices are now saved on the level of individual datasets (:gh:`288` by Lukas Gemein)
  • Serialization now happens entirely on dataset level creating subsets for individual datasets that contain 'fif' and 'json' files (:gh:`288` Lukas Gemein)
  • Instantiation of TUH :class:`braindecode.datasets.tuh.TUH` and TUHAbnormal :class:`braindecode.datasets.tuh.TUHAbnormal`, as well as loading :func:`braindecode.datautil.serialization.load_concat_dataset` of stored datasets now support multiple workers (:gh:`288` by Lukas Gemein)
  • Adding balanced sampling of sequences of windows with :class:`braindecode.samplers.BalancedSequenceSampler` as proposed in U-Sleep paper (:gh:`295` by Théo Gnassounou and Hubert Banville)
  • :func:`braindecode.preprocessing.preprocess` can now work in parallel and serialize datasets to enable lazy-loading (i.e. preload=False) (:gh:`277` by Hubert Banville)
  • Adding :class:`braindecode.models.TimeDistributed` to apply a module on a sequence (:gh:`318` by Hubert Banville)
  • Adding time series targets decoding together with :class:`braindecode.datasets.BCICompetitionIVDataset4` and fingers flexion decoding from ECoG examples (:gh:`261` by Maciej Śliwowski and Mohammed Fattouh)
  • Make EEGClassifier and EEGRegressor cloneable for scikit-learn (:gh:`347` by Lukas Gemein, Robin Tibor Schirrmeister, Maciej Śliwowski and Alex Gramfort)
  • Allow to raise a warning when a few trials are shorter than the windows length, instead of raising an error and stopping all computation. (:gh:`353` by Cedric Rommel)
  • Setting torch.backends.cudnn.benchmark in :func:`braindecode.util.set_random_seeds`, adding warning and more info to the docstring to improve reproducibility (:gh:`333` by Maciej Śliwowski)
  • Adding option to pass arguments through :class:`braindecode.datasets.MOABBDataset` (:gh:`365` by Pierre Guetschel)
  • Adding a possibility to use a dict to split a BaseConcatDataset in :meth:`braindecode.datasets.BaseConcatDataset.split` (:gh:`367` by Alex Gramfort)
  • Adding crop parameter to :class:`braindecode.datasets.SleepPhysionet` dataset to speed up examples (:gh:`367` by Alex Gramfort)

Bugs

  • Correctly computing recording length in :func:`braindecode.preprocessing.windowers.create_fixed_length_windows` in case recording was cropped (:gh:`304` by Lukas Gemein)
  • Fixing :class:`braindecode.datasets.SleepPhysionet` to allow serialization and avoid mismatch in channel names attributes (:gh:`327` by Hubert Banville)
  • Propagating target_transform to all datasets when using :meth:`braindecode.datasets.BaseConcatDataset.subset` (:gh:`261` by Maciej Śliwowski)

API changes

Version 0.5.1 (2021-07-14)

Enhancements

  • Adding n_jobs parameter to windowers :func:`braindecode.datautil.create_windows_from_events` and :func:`braindecode.datautil.create_fixed_length_windows` to allow for parallelization of the windowing process (:gh:`199` by Hubert Banville)
  • Adding support for on-the-fly transforms (:gh:`198` by Hubert Banville)
  • Unifying preprocessors under the :class:`braindecode.datautil.Preprocessor` class (:gh:`197` by Hubert Banville)
  • Adding self-supervised learning example on the Sleep Physionet dataset along with new sampler module braindecode.samplers (:gh:`178` by Hubert Banville)
  • Adding sleep staging example on the Sleep Physionet dataset (:gh:`161` by Hubert Banville)
  • Adding new parameters to windowers :func:`braindecode.datautil.create_windows_from_events` and :func:`braindecode.datautil.create_fixed_length_windows` for finer control over epoching (:gh:`152` by Hubert Banville)
  • Adding Temporal Convolutional Network :class:`braindecode.models.TCN` (:gh:`138` by Lukas Gemein)
  • Adding option to use BaseConcatDataset as input to BaseConcatDataset (:gh:`142` by Lukas Gemein)
  • Adding a simplified API for splitting of BaseConcatDataset: parameters property and split_ids in :meth:`braindecode.datasets.BaseConcatDataset.split` are replaced by by (:gh:`147` by Lukas Gemein)
  • Adding a preprocessor that realizes a filterbank: :func:`braindecode.datautil.filterbank` (:gh:`158` by Lukas Gemein)
  • Removing code duplicate in BaseDataset and WindowsDataset (:gh:`159` by Lukas Gemein)
  • Only load data if needed during preprocessing (e.g., allow timecrop without loading) (:gh:`164` by Robin Tibor Schirrmeister)
  • Adding option to sort filtered channels by frequency band for the filterbank in :func:`braindecode.datautil.filterbank` (:gh:`185` by Lukas Gemein)
  • Adding the USleep model :class:`braindecode.models.USleep` (:gh:`282` by Théo Gnassounou and Omar Chehab)
  • Adding :class:`braindecode.models.SleepStagerEldele2021` and :class:`braindecode.models.SleepStagerBlanco2020` models for sleep staging (:gh:`341` by Divyesh Narayanan)

Bugs

  • Amplitude gradients are correctly computed for layers with multiple filters (before, they were accidentally summed over all previous filters in the layer) (:gh:`167` by Robin Tibor Schirrmeister)
  • :func:`braindecode.models.get_output_shape` and :func:`braindecode.visualization.compute_amplitude_gradients` assume 3d, not 4d inputs (:gh:`166` by Robin Tibor Schirrmeister)
  • Fixing windower functions when the continuous data has been cropped (:gh:`152` by Hubert Banville)
  • Fixing incorrect usage of recording ids in TUHAbnormal (:gh:`146` by Lukas Gemein)
  • Adding check for correct input dimensions (4d) in TCN (:gh:`169` by Lukas Gemein)
  • Fixing :func:`braindecode.datautil.create_windows_from_events` when window_size is not given but there is a trial_stop_offset_samples (:gh:`148` by Lukas Gemein)
  • Fixing :meth:`braindecode.classifier.EEGClassifier.predict_proba` and :meth:`braindecode.regressor.EEGRegressor.predict` behavior in the cropped mode (:gh:`171` by Maciej Śliwowski)
  • Freeze torch random generator for scoring functions for reproducibility (:gh:`155` by Robin Tibor Schirrmeister)
  • Make EEGResNet work for final_pool_length='auto' (:gh:`223` by Robin Tibor Schirrmeister and Maciej Śliwowski)

API changes

  • Preprocessor classes :class:`braindecode.datautil.MNEPreproc` and :class:`braindecode.datautil.NumpyPreproc` are deprecated in favor of :class:`braindecode.datautil.Preprocessor` (:gh:`197` by Hubert Banville)
  • Parameter stop_offset_samples of :func:`braindecode.datautil.create_fixed_length_windows` must now be set to None instead of 0 to indicate the end of the recording (:gh:`152` by Hubert Banville)

Authors