Cross-Subject SSVEP#

This example shows how to perform a cross-subject analysis on an SSVEP dataset. We will compare four pipelines :

  • Riemannian Geometry

  • CCA

  • TRCA

  • MsetCCA

We will use the SSVEP paradigm, which uses the AUC as metric.

# Authors: Sylvain Chevallier <sylvain.chevallier@uvsq.fr>
#
# License: BSD (3-clause)

import warnings

import matplotlib.pyplot as plt
import pandas as pd
from pyriemann.estimation import Covariances
from pyriemann.tangentspace import TangentSpace
from sklearn.linear_model import LogisticRegression
from sklearn.pipeline import make_pipeline

import moabb
import moabb.analysis.plotting as moabb_plt
from moabb.analysis.chance_level import chance_by_chance
from moabb.datasets import Kalunga2016
from moabb.evaluations import CrossSubjectEvaluation
from moabb.paradigms import SSVEP, FilterBankSSVEP
from moabb.pipelines import SSVEP_CCA, SSVEP_TRCA, ExtendedSSVEPSignal, SSVEP_MsetCCA


warnings.simplefilter(action="ignore", category=FutureWarning)
warnings.simplefilter(action="ignore", category=RuntimeWarning)
moabb.set_log_level("info")

Loading Dataset#

We will load the data from all 12 subjects of the SSVEP_Exo dataset and compare four algorithms on this set. One of the algorithms could only process class associated with a stimulation frequency, we will thus drop the resting class. As the resting class is the last defined class, picking the first three classes (out of four) allows to focus only on the stimulation frequency.

Choose Paradigm#

We define the paradigms (SSVEP, SSVEP TRCA, SSVEP MsetCCA, and FilterBankSSVEP) and use the dataset Kalunga2016. All 3 SSVEP paradigms applied a bandpass filter (10-42 Hz) on the data, which include all stimuli frequencies and their first harmonics, while the FilterBankSSVEP paradigm uses as many bandpass filters as there are stimulation frequencies (here 3). For each stimulation frequency the EEG is filtered with a 1 Hz-wide bandpass filter centered on the frequency. This results in n_classes copies of the signal, filtered for each class, as used in the filterbank motor imagery paradigms.

paradigm = SSVEP(fmin=10, fmax=42, n_classes=3)
paradigm_TRCA = SSVEP(fmin=10, fmax=42, n_classes=3)
paradigm_MSET_CCA = SSVEP(fmin=10, fmax=42, n_classes=3)
paradigm_fb = FilterBankSSVEP(filters=None, n_classes=3)
2026-03-25 18:56:59,726 WARNING MainThread moabb.paradigms.ssvep Choosing the first 3 classes from all possible events
2026-03-25 18:56:59,726 WARNING MainThread moabb.paradigms.ssvep Choosing the first 3 classes from all possible events
2026-03-25 18:56:59,726 WARNING MainThread moabb.paradigms.ssvep Choosing the first 3 classes from all possible events
2026-03-25 18:56:59,726 WARNING MainThread moabb.paradigms.ssvep Choosing the first 3 classes from all possible events

Classes are defined by the frequency of the stimulation, here we use the first three frequencies of the dataset, 13, 17, and 21 Hz. The evaluation function uses a LabelEncoder, transforming them to 0, 1, and 2.

freqs = paradigm.used_events(dataset)

Create Pipelines#

Pipelines must be a dict of sklearn pipeline transformer. The first pipeline uses Riemannian geometry, by building an extended covariance matrices from the signal filtered around the considered frequency and applying a logistic regression in the tangent plane. The second pipeline relies on the above defined CCA classifier. The third pipeline relies on the TRCA algorithm, and the fourth uses the MsetCCA algorithm. Both CCA based methods (i.e. CCA and MsetCCA) used 3 CCA components.

Evaluation#

The evaluation will return a DataFrame containing an accuracy score for each subject / session of the dataset, and for each pipeline.

Results are saved into the database, so that if you add a new pipeline, it will not run again the evaluation unless a parameter has changed. Results can be overwritten if necessary.

overwrite = True  # set to True if we want to overwrite cached results

evaluation = CrossSubjectEvaluation(
    paradigm=paradigm, datasets=dataset, overwrite=overwrite
)
results = evaluation.process(pipelines)
Downloading data from 'https://zenodo.org/record/2392979/files/subject04_run1_raw.fif' to file '/home/runner/work/moabb/moabb/mne_data/MNE-ssvepexo-data/zenodo/2392979/subject04_run1_raw.fif'.
/home/runner/work/moabb/moabb/.venv/lib/python3.10/site-packages/urllib3/connectionpool.py:1097: InsecureRequestWarning: Unverified HTTPS request is being made to host 'zenodo.org'. Adding certificate verification is strongly advised. See: https://urllib3.readthedocs.io/en/latest/advanced-usage.html#tls-warnings
  warnings.warn(
/home/runner/work/moabb/moabb/.venv/lib/python3.10/site-packages/urllib3/connectionpool.py:1097: InsecureRequestWarning: Unverified HTTPS request is being made to host 'zenodo.org'. Adding certificate verification is strongly advised. See: https://urllib3.readthedocs.io/en/latest/advanced-usage.html#tls-warnings
  warnings.warn(

  0%|                                              | 0.00/2.29M [00:00<?, ?B/s]
  1%|▏                                     | 12.3k/2.29M [00:00<00:22, 100kB/s]
  4%|█▌                                    | 95.2k/2.29M [00:00<00:06, 330kB/s]
 12%|████▊                                  | 281k/2.29M [00:00<00:03, 646kB/s]
 36%|█████████████▌                        | 821k/2.29M [00:00<00:00, 1.93MB/s]
 70%|█████████████████████████▊           | 1.60M/2.29M [00:00<00:00, 3.57MB/s]
  0%|                                              | 0.00/2.29M [00:00<?, ?B/s]
100%|█████████████████████████████████████| 2.29M/2.29M [00:00<00:00, 7.81GB/s]
SHA256 hash of downloaded file: 0b62acb6716f9f56880391a2b2b58f262e6c80a31719d11f9b0012bfdf164d94
Use this value as the 'known_hash' argument of 'pooch.retrieve' to ensure that the file hasn't changed if it is downloaded again in the future.
Downloading data from 'https://zenodo.org/record/2392979/files/subject04_run2_raw.fif' to file '/home/runner/work/moabb/moabb/mne_data/MNE-ssvepexo-data/zenodo/2392979/subject04_run2_raw.fif'.
/home/runner/work/moabb/moabb/.venv/lib/python3.10/site-packages/urllib3/connectionpool.py:1097: InsecureRequestWarning: Unverified HTTPS request is being made to host 'zenodo.org'. Adding certificate verification is strongly advised. See: https://urllib3.readthedocs.io/en/latest/advanced-usage.html#tls-warnings
  warnings.warn(
/home/runner/work/moabb/moabb/.venv/lib/python3.10/site-packages/urllib3/connectionpool.py:1097: InsecureRequestWarning: Unverified HTTPS request is being made to host 'zenodo.org'. Adding certificate verification is strongly advised. See: https://urllib3.readthedocs.io/en/latest/advanced-usage.html#tls-warnings
  warnings.warn(

  0%|                                              | 0.00/2.06M [00:00<?, ?B/s]
  1%|▏                                    | 12.3k/2.06M [00:00<00:21, 94.3kB/s]
  5%|█▊                                    | 96.3k/2.06M [00:00<00:06, 322kB/s]
 15%|█████▊                                 | 309k/2.06M [00:00<00:01, 922kB/s]
 31%|███████████▉                          | 647k/2.06M [00:00<00:00, 1.71MB/s]
 60%|██████████████████████▎              | 1.24M/2.06M [00:00<00:00, 3.05MB/s]
  0%|                                              | 0.00/2.06M [00:00<?, ?B/s]
100%|█████████████████████████████████████| 2.06M/2.06M [00:00<00:00, 6.87GB/s]
SHA256 hash of downloaded file: cb9013ee0eb75837bdfc5840070130c6e34345b333517243359201eadb8baffc
Use this value as the 'known_hash' argument of 'pooch.retrieve' to ensure that the file hasn't changed if it is downloaded again in the future.
Downloading data from 'https://zenodo.org/record/2392979/files/subject05_run1_raw.fif' to file '/home/runner/work/moabb/moabb/mne_data/MNE-ssvepexo-data/zenodo/2392979/subject05_run1_raw.fif'.
/home/runner/work/moabb/moabb/.venv/lib/python3.10/site-packages/urllib3/connectionpool.py:1097: InsecureRequestWarning: Unverified HTTPS request is being made to host 'zenodo.org'. Adding certificate verification is strongly advised. See: https://urllib3.readthedocs.io/en/latest/advanced-usage.html#tls-warnings
  warnings.warn(
/home/runner/work/moabb/moabb/.venv/lib/python3.10/site-packages/urllib3/connectionpool.py:1097: InsecureRequestWarning: Unverified HTTPS request is being made to host 'zenodo.org'. Adding certificate verification is strongly advised. See: https://urllib3.readthedocs.io/en/latest/advanced-usage.html#tls-warnings
  warnings.warn(

  0%|                                              | 0.00/2.12M [00:00<?, ?B/s]
  1%|▏                                     | 12.3k/2.12M [00:00<00:20, 102kB/s]
  4%|█▌                                    | 84.0k/2.12M [00:00<00:07, 287kB/s]
 11%|████▎                                  | 236k/2.12M [00:00<00:02, 702kB/s]
 19%|███████▌                               | 413k/2.12M [00:00<00:01, 937kB/s]
 33%|████████████▋                         | 707k/2.12M [00:00<00:00, 1.52MB/s]
 70%|█████████████████████████▉           | 1.49M/2.12M [00:00<00:00, 3.38MB/s]
  0%|                                              | 0.00/2.12M [00:00<?, ?B/s]
100%|█████████████████████████████████████| 2.12M/2.12M [00:00<00:00, 5.95GB/s]
SHA256 hash of downloaded file: ce682ca6aedb88a61154f7ef0233ba27ccf59d6c87d58d37cd6bd240743a4bfd
Use this value as the 'known_hash' argument of 'pooch.retrieve' to ensure that the file hasn't changed if it is downloaded again in the future.
Downloading data from 'https://zenodo.org/record/2392979/files/subject05_run2_raw.fif' to file '/home/runner/work/moabb/moabb/mne_data/MNE-ssvepexo-data/zenodo/2392979/subject05_run2_raw.fif'.
/home/runner/work/moabb/moabb/.venv/lib/python3.10/site-packages/urllib3/connectionpool.py:1097: InsecureRequestWarning: Unverified HTTPS request is being made to host 'zenodo.org'. Adding certificate verification is strongly advised. See: https://urllib3.readthedocs.io/en/latest/advanced-usage.html#tls-warnings
  warnings.warn(
/home/runner/work/moabb/moabb/.venv/lib/python3.10/site-packages/urllib3/connectionpool.py:1097: InsecureRequestWarning: Unverified HTTPS request is being made to host 'zenodo.org'. Adding certificate verification is strongly advised. See: https://urllib3.readthedocs.io/en/latest/advanced-usage.html#tls-warnings
  warnings.warn(

  0%|                                              | 0.00/2.47M [00:00<?, ?B/s]
  1%|▏                                     | 13.3k/2.47M [00:00<00:23, 105kB/s]
  4%|█▎                                    | 87.0k/2.47M [00:00<00:06, 367kB/s]
  7%|██▊                                    | 177k/2.47M [00:00<00:04, 475kB/s]
 15%|█████▉                                 | 375k/2.47M [00:00<00:02, 947kB/s]
 33%|████████████▋                         | 826k/2.47M [00:00<00:00, 2.05MB/s]
 63%|███████████████████████▎             | 1.56M/2.47M [00:00<00:00, 3.67MB/s]
  0%|                                              | 0.00/2.47M [00:00<?, ?B/s]
100%|█████████████████████████████████████| 2.47M/2.47M [00:00<00:00, 6.69GB/s]
SHA256 hash of downloaded file: 99ca9e3a9026bd2d2fed57c3d4a36780bc44fcefbe047cf183346db3331b1750
Use this value as the 'known_hash' argument of 'pooch.retrieve' to ensure that the file hasn't changed if it is downloaded again in the future.
Downloading data from 'https://zenodo.org/record/2392979/files/subject06_run1_raw.fif' to file '/home/runner/work/moabb/moabb/mne_data/MNE-ssvepexo-data/zenodo/2392979/subject06_run1_raw.fif'.
/home/runner/work/moabb/moabb/.venv/lib/python3.10/site-packages/urllib3/connectionpool.py:1097: InsecureRequestWarning: Unverified HTTPS request is being made to host 'zenodo.org'. Adding certificate verification is strongly advised. See: https://urllib3.readthedocs.io/en/latest/advanced-usage.html#tls-warnings
  warnings.warn(
/home/runner/work/moabb/moabb/.venv/lib/python3.10/site-packages/urllib3/connectionpool.py:1097: InsecureRequestWarning: Unverified HTTPS request is being made to host 'zenodo.org'. Adding certificate verification is strongly advised. See: https://urllib3.readthedocs.io/en/latest/advanced-usage.html#tls-warnings
  warnings.warn(

  0%|                                              | 0.00/2.71M [00:00<?, ?B/s]
  0%|▏                                    | 12.3k/2.71M [00:00<00:29, 91.4kB/s]
  3%|█▏                                    | 81.9k/2.71M [00:00<00:09, 269kB/s]
 11%|████▏                                  | 288k/2.71M [00:00<00:02, 859kB/s]
 24%|█████████▏                            | 656k/2.71M [00:00<00:01, 1.76MB/s]
 46%|█████████████████                    | 1.25M/2.71M [00:00<00:00, 3.08MB/s]
 77%|████████████████████████████▌        | 2.10M/2.71M [00:00<00:00, 4.74MB/s]
  0%|                                              | 0.00/2.71M [00:00<?, ?B/s]
100%|█████████████████████████████████████| 2.71M/2.71M [00:00<00:00, 16.4GB/s]
SHA256 hash of downloaded file: b2e66e124b9b796f5e24bed990d28841c7a0ab8149737af82a8ff953318179ec
Use this value as the 'known_hash' argument of 'pooch.retrieve' to ensure that the file hasn't changed if it is downloaded again in the future.
Downloading data from 'https://zenodo.org/record/2392979/files/subject06_run2_raw.fif' to file '/home/runner/work/moabb/moabb/mne_data/MNE-ssvepexo-data/zenodo/2392979/subject06_run2_raw.fif'.
/home/runner/work/moabb/moabb/.venv/lib/python3.10/site-packages/urllib3/connectionpool.py:1097: InsecureRequestWarning: Unverified HTTPS request is being made to host 'zenodo.org'. Adding certificate verification is strongly advised. See: https://urllib3.readthedocs.io/en/latest/advanced-usage.html#tls-warnings
  warnings.warn(
/home/runner/work/moabb/moabb/.venv/lib/python3.10/site-packages/urllib3/connectionpool.py:1097: InsecureRequestWarning: Unverified HTTPS request is being made to host 'zenodo.org'. Adding certificate verification is strongly advised. See: https://urllib3.readthedocs.io/en/latest/advanced-usage.html#tls-warnings
  warnings.warn(

  0%|                                              | 0.00/2.33M [00:00<?, ?B/s]
  1%|▏                                     | 12.3k/2.33M [00:00<00:22, 102kB/s]
  4%|█▎                                    | 84.0k/2.33M [00:00<00:06, 359kB/s]
  9%|███▍                                   | 206k/2.33M [00:00<00:03, 567kB/s]
 23%|████████▋                             | 534k/2.33M [00:00<00:01, 1.42MB/s]
 44%|████████████████▎                    | 1.02M/2.33M [00:00<00:00, 2.49MB/s]
 84%|██████████████████████████████▉      | 1.94M/2.33M [00:00<00:00, 4.54MB/s]
  0%|                                              | 0.00/2.33M [00:00<?, ?B/s]
100%|█████████████████████████████████████| 2.33M/2.33M [00:00<00:00, 6.98GB/s]
SHA256 hash of downloaded file: 7022c4ef4650c05e9a04783118dd7e40d9ad022e598a15ae2566298620e6ee8f
Use this value as the 'known_hash' argument of 'pooch.retrieve' to ensure that the file hasn't changed if it is downloaded again in the future.
Downloading data from 'https://zenodo.org/record/2392979/files/subject07_run1_raw.fif' to file '/home/runner/work/moabb/moabb/mne_data/MNE-ssvepexo-data/zenodo/2392979/subject07_run1_raw.fif'.
/home/runner/work/moabb/moabb/.venv/lib/python3.10/site-packages/urllib3/connectionpool.py:1097: InsecureRequestWarning: Unverified HTTPS request is being made to host 'zenodo.org'. Adding certificate verification is strongly advised. See: https://urllib3.readthedocs.io/en/latest/advanced-usage.html#tls-warnings
  warnings.warn(
/home/runner/work/moabb/moabb/.venv/lib/python3.10/site-packages/urllib3/connectionpool.py:1097: InsecureRequestWarning: Unverified HTTPS request is being made to host 'zenodo.org'. Adding certificate verification is strongly advised. See: https://urllib3.readthedocs.io/en/latest/advanced-usage.html#tls-warnings
  warnings.warn(

  0%|                                              | 0.00/2.27M [00:00<?, ?B/s]
  1%|▏                                    | 12.3k/2.27M [00:00<00:23, 97.2kB/s]
  4%|█▌                                    | 95.2k/2.27M [00:00<00:06, 327kB/s]
 16%|█████▉                                | 358k/2.27M [00:00<00:01, 1.11MB/s]
 33%|████████████▋                         | 758k/2.27M [00:00<00:00, 2.04MB/s]
 61%|██████████████████████▋              | 1.39M/2.27M [00:00<00:00, 3.40MB/s]
  0%|                                              | 0.00/2.27M [00:00<?, ?B/s]
100%|█████████████████████████████████████| 2.27M/2.27M [00:00<00:00, 8.76GB/s]
SHA256 hash of downloaded file: 199c5ab96fb6830daf637c67a85abb5bfa9c3fdf2e7c5600d9a0ff9a6483c100
Use this value as the 'known_hash' argument of 'pooch.retrieve' to ensure that the file hasn't changed if it is downloaded again in the future.
Downloading data from 'https://zenodo.org/record/2392979/files/subject07_run2_raw.fif' to file '/home/runner/work/moabb/moabb/mne_data/MNE-ssvepexo-data/zenodo/2392979/subject07_run2_raw.fif'.
/home/runner/work/moabb/moabb/.venv/lib/python3.10/site-packages/urllib3/connectionpool.py:1097: InsecureRequestWarning: Unverified HTTPS request is being made to host 'zenodo.org'. Adding certificate verification is strongly advised. See: https://urllib3.readthedocs.io/en/latest/advanced-usage.html#tls-warnings
  warnings.warn(
/home/runner/work/moabb/moabb/.venv/lib/python3.10/site-packages/urllib3/connectionpool.py:1097: InsecureRequestWarning: Unverified HTTPS request is being made to host 'zenodo.org'. Adding certificate verification is strongly advised. See: https://urllib3.readthedocs.io/en/latest/advanced-usage.html#tls-warnings
  warnings.warn(

  0%|                                              | 0.00/1.99M [00:00<?, ?B/s]
  1%|▏                                     | 12.3k/1.99M [00:00<00:19, 103kB/s]
  5%|█▋                                    | 90.1k/1.99M [00:00<00:06, 308kB/s]
 13%|█████▏                                 | 267k/1.99M [00:00<00:02, 802kB/s]
 29%|███████████▏                          | 583k/1.99M [00:00<00:00, 1.57MB/s]
 61%|██████████████████████▌              | 1.22M/1.99M [00:00<00:00, 3.08MB/s]
  0%|                                              | 0.00/1.99M [00:00<?, ?B/s]
100%|█████████████████████████████████████| 1.99M/1.99M [00:00<00:00, 8.39GB/s]
SHA256 hash of downloaded file: 21b4d5d08f82494f54451124859fd6a7f0bc2fcd1f3428f6a48c3576864a21db
Use this value as the 'known_hash' argument of 'pooch.retrieve' to ensure that the file hasn't changed if it is downloaded again in the future.
Downloading data from 'https://zenodo.org/record/2392979/files/subject07_run3_raw.fif' to file '/home/runner/work/moabb/moabb/mne_data/MNE-ssvepexo-data/zenodo/2392979/subject07_run3_raw.fif'.
/home/runner/work/moabb/moabb/.venv/lib/python3.10/site-packages/urllib3/connectionpool.py:1097: InsecureRequestWarning: Unverified HTTPS request is being made to host 'zenodo.org'. Adding certificate verification is strongly advised. See: https://urllib3.readthedocs.io/en/latest/advanced-usage.html#tls-warnings
  warnings.warn(
/home/runner/work/moabb/moabb/.venv/lib/python3.10/site-packages/urllib3/connectionpool.py:1097: InsecureRequestWarning: Unverified HTTPS request is being made to host 'zenodo.org'. Adding certificate verification is strongly advised. See: https://urllib3.readthedocs.io/en/latest/advanced-usage.html#tls-warnings
  warnings.warn(

  0%|                                              | 0.00/2.98M [00:00<?, ?B/s]
  0%|▏                                     | 12.3k/2.98M [00:00<00:29, 102kB/s]
  3%|█▏                                    | 93.2k/2.98M [00:00<00:09, 321kB/s]
 10%|███▊                                   | 290k/2.98M [00:00<00:03, 878kB/s]
 20%|███████▍                              | 583k/2.98M [00:00<00:01, 1.55MB/s]
 37%|█████████████▌                       | 1.10M/2.98M [00:00<00:00, 2.69MB/s]
 67%|████████████████████████▊            | 2.00M/2.98M [00:00<00:00, 4.66MB/s]
  0%|                                              | 0.00/2.98M [00:00<?, ?B/s]
100%|█████████████████████████████████████| 2.98M/2.98M [00:00<00:00, 7.93GB/s]
SHA256 hash of downloaded file: d8a902974b8c38d2905e1ca6b8ed6befd7d474c3bcc48d383d9a692a69508c22
Use this value as the 'known_hash' argument of 'pooch.retrieve' to ensure that the file hasn't changed if it is downloaded again in the future.
Downloading data from 'https://zenodo.org/record/2392979/files/subject08_run1_raw.fif' to file '/home/runner/work/moabb/moabb/mne_data/MNE-ssvepexo-data/zenodo/2392979/subject08_run1_raw.fif'.
/home/runner/work/moabb/moabb/.venv/lib/python3.10/site-packages/urllib3/connectionpool.py:1097: InsecureRequestWarning: Unverified HTTPS request is being made to host 'zenodo.org'. Adding certificate verification is strongly advised. See: https://urllib3.readthedocs.io/en/latest/advanced-usage.html#tls-warnings
  warnings.warn(
/home/runner/work/moabb/moabb/.venv/lib/python3.10/site-packages/urllib3/connectionpool.py:1097: InsecureRequestWarning: Unverified HTTPS request is being made to host 'zenodo.org'. Adding certificate verification is strongly advised. See: https://urllib3.readthedocs.io/en/latest/advanced-usage.html#tls-warnings
  warnings.warn(

  0%|                                              | 0.00/2.72M [00:00<?, ?B/s]
  0%|▏                                     | 13.3k/2.72M [00:00<00:23, 114kB/s]
  3%|█▎                                    | 90.1k/2.72M [00:00<00:08, 314kB/s]
 14%|█████▍                                | 387k/2.72M [00:00<00:02, 1.08MB/s]
 33%|████████████▌                         | 894k/2.72M [00:00<00:00, 1.99MB/s]
 78%|████████████████████████████▋        | 2.11M/2.72M [00:00<00:00, 4.75MB/s]
  0%|                                              | 0.00/2.72M [00:00<?, ?B/s]
100%|█████████████████████████████████████| 2.72M/2.72M [00:00<00:00, 20.3GB/s]
SHA256 hash of downloaded file: 22047d563a3d14458da1d097133e90774bd11a33610bbce5484f3c9520c54e9a
Use this value as the 'known_hash' argument of 'pooch.retrieve' to ensure that the file hasn't changed if it is downloaded again in the future.
Downloading data from 'https://zenodo.org/record/2392979/files/subject08_run2_raw.fif' to file '/home/runner/work/moabb/moabb/mne_data/MNE-ssvepexo-data/zenodo/2392979/subject08_run2_raw.fif'.
/home/runner/work/moabb/moabb/.venv/lib/python3.10/site-packages/urllib3/connectionpool.py:1097: InsecureRequestWarning: Unverified HTTPS request is being made to host 'zenodo.org'. Adding certificate verification is strongly advised. See: https://urllib3.readthedocs.io/en/latest/advanced-usage.html#tls-warnings
  warnings.warn(
/home/runner/work/moabb/moabb/.venv/lib/python3.10/site-packages/urllib3/connectionpool.py:1097: InsecureRequestWarning: Unverified HTTPS request is being made to host 'zenodo.org'. Adding certificate verification is strongly advised. See: https://urllib3.readthedocs.io/en/latest/advanced-usage.html#tls-warnings
  warnings.warn(

  0%|                                              | 0.00/2.74M [00:00<?, ?B/s]
  0%|                                     | 1.02k/2.74M [00:00<05:47, 7.87kB/s]
  4%|█▎                                    | 97.3k/2.74M [00:00<00:07, 338kB/s]
 11%|████▍                                  | 313k/2.74M [00:00<00:02, 944kB/s]
 26%|██████████                            | 723k/2.74M [00:00<00:01, 1.96MB/s]
 40%|██████████████▊                      | 1.10M/2.74M [00:00<00:00, 2.52MB/s]
 79%|█████████████████████████████▎       | 2.17M/2.74M [00:00<00:00, 5.06MB/s]
  0%|                                              | 0.00/2.74M [00:00<?, ?B/s]
100%|█████████████████████████████████████| 2.74M/2.74M [00:00<00:00, 19.3GB/s]
SHA256 hash of downloaded file: 7ed774ba1ffb4d532a4661f9ddb925bd7fabff8f4f31f796f0e6f28bcababd78
Use this value as the 'known_hash' argument of 'pooch.retrieve' to ensure that the file hasn't changed if it is downloaded again in the future.
Downloading data from 'https://zenodo.org/record/2392979/files/subject09_run1_raw.fif' to file '/home/runner/work/moabb/moabb/mne_data/MNE-ssvepexo-data/zenodo/2392979/subject09_run1_raw.fif'.
/home/runner/work/moabb/moabb/.venv/lib/python3.10/site-packages/urllib3/connectionpool.py:1097: InsecureRequestWarning: Unverified HTTPS request is being made to host 'zenodo.org'. Adding certificate verification is strongly advised. See: https://urllib3.readthedocs.io/en/latest/advanced-usage.html#tls-warnings
  warnings.warn(
/home/runner/work/moabb/moabb/.venv/lib/python3.10/site-packages/urllib3/connectionpool.py:1097: InsecureRequestWarning: Unverified HTTPS request is being made to host 'zenodo.org'. Adding certificate verification is strongly advised. See: https://urllib3.readthedocs.io/en/latest/advanced-usage.html#tls-warnings
  warnings.warn(

  0%|                                              | 0.00/2.74M [00:00<?, ?B/s]
  0%|▏                                     | 12.3k/2.74M [00:00<00:26, 102kB/s]
  3%|█▎                                    | 95.2k/2.74M [00:00<00:07, 332kB/s]
 15%|█████▋                                | 408k/2.74M [00:00<00:02, 1.14MB/s]
 33%|████████████▍                         | 897k/2.74M [00:00<00:00, 1.98MB/s]
 78%|████████████████████████████▉        | 2.14M/2.74M [00:00<00:00, 4.83MB/s]
  0%|                                              | 0.00/2.74M [00:00<?, ?B/s]
100%|█████████████████████████████████████| 2.74M/2.74M [00:00<00:00, 18.2GB/s]
SHA256 hash of downloaded file: 6702693d029445aa39a0a37adac647ae5ccdff5036ee784e82a6c5b95d3086cb
Use this value as the 'known_hash' argument of 'pooch.retrieve' to ensure that the file hasn't changed if it is downloaded again in the future.
Downloading data from 'https://zenodo.org/record/2392979/files/subject09_run2_raw.fif' to file '/home/runner/work/moabb/moabb/mne_data/MNE-ssvepexo-data/zenodo/2392979/subject09_run2_raw.fif'.
/home/runner/work/moabb/moabb/.venv/lib/python3.10/site-packages/urllib3/connectionpool.py:1097: InsecureRequestWarning: Unverified HTTPS request is being made to host 'zenodo.org'. Adding certificate verification is strongly advised. See: https://urllib3.readthedocs.io/en/latest/advanced-usage.html#tls-warnings
  warnings.warn(
/home/runner/work/moabb/moabb/.venv/lib/python3.10/site-packages/urllib3/connectionpool.py:1097: InsecureRequestWarning: Unverified HTTPS request is being made to host 'zenodo.org'. Adding certificate verification is strongly advised. See: https://urllib3.readthedocs.io/en/latest/advanced-usage.html#tls-warnings
  warnings.warn(

  0%|                                              | 0.00/2.73M [00:00<?, ?B/s]
  0%|                                     | 5.12k/2.73M [00:00<00:58, 46.3kB/s]
  3%|█▎                                    | 95.2k/2.73M [00:00<00:07, 348kB/s]
 14%|█████▍                                | 387k/2.73M [00:00<00:01, 1.24MB/s]
 26%|█████████▋                            | 697k/2.73M [00:00<00:01, 1.86MB/s]
 58%|█████████████████████▌               | 1.59M/2.73M [00:00<00:00, 4.13MB/s]
  0%|                                              | 0.00/2.73M [00:00<?, ?B/s]
100%|█████████████████████████████████████| 2.73M/2.73M [00:00<00:00, 8.43GB/s]
SHA256 hash of downloaded file: 4fbcc52be99886160ced7d32d4add4c92f4abe2c83e934e3cdd9311a3a31d65e
Use this value as the 'known_hash' argument of 'pooch.retrieve' to ensure that the file hasn't changed if it is downloaded again in the future.
Downloading data from 'https://zenodo.org/record/2392979/files/subject10_run1_raw.fif' to file '/home/runner/work/moabb/moabb/mne_data/MNE-ssvepexo-data/zenodo/2392979/subject10_run1_raw.fif'.
/home/runner/work/moabb/moabb/.venv/lib/python3.10/site-packages/urllib3/connectionpool.py:1097: InsecureRequestWarning: Unverified HTTPS request is being made to host 'zenodo.org'. Adding certificate verification is strongly advised. See: https://urllib3.readthedocs.io/en/latest/advanced-usage.html#tls-warnings
  warnings.warn(
/home/runner/work/moabb/moabb/.venv/lib/python3.10/site-packages/urllib3/connectionpool.py:1097: InsecureRequestWarning: Unverified HTTPS request is being made to host 'zenodo.org'. Adding certificate verification is strongly advised. See: https://urllib3.readthedocs.io/en/latest/advanced-usage.html#tls-warnings
  warnings.warn(

  0%|                                              | 0.00/3.97M [00:00<?, ?B/s]
  0%|                                      | 12.3k/3.97M [00:00<00:37, 105kB/s]
  2%|▊                                     | 86.0k/3.97M [00:00<00:10, 372kB/s]
  5%|█▉                                     | 198k/3.97M [00:00<00:06, 543kB/s]
 14%|█████▏                                | 540k/3.97M [00:00<00:02, 1.45MB/s]
 28%|██████████▎                          | 1.10M/3.97M [00:00<00:01, 2.75MB/s]
 53%|███████████████████▌                 | 2.10M/3.97M [00:00<00:00, 4.95MB/s]
  0%|                                              | 0.00/3.97M [00:00<?, ?B/s]
100%|█████████████████████████████████████| 3.97M/3.97M [00:00<00:00, 16.5GB/s]
SHA256 hash of downloaded file: 25c96cf5f24e04cf348be8481a847107e7ff178fc896c2a0285236e53a3b125e
Use this value as the 'known_hash' argument of 'pooch.retrieve' to ensure that the file hasn't changed if it is downloaded again in the future.
Downloading data from 'https://zenodo.org/record/2392979/files/subject10_run2_raw.fif' to file '/home/runner/work/moabb/moabb/mne_data/MNE-ssvepexo-data/zenodo/2392979/subject10_run2_raw.fif'.
/home/runner/work/moabb/moabb/.venv/lib/python3.10/site-packages/urllib3/connectionpool.py:1097: InsecureRequestWarning: Unverified HTTPS request is being made to host 'zenodo.org'. Adding certificate verification is strongly advised. See: https://urllib3.readthedocs.io/en/latest/advanced-usage.html#tls-warnings
  warnings.warn(
/home/runner/work/moabb/moabb/.venv/lib/python3.10/site-packages/urllib3/connectionpool.py:1097: InsecureRequestWarning: Unverified HTTPS request is being made to host 'zenodo.org'. Adding certificate verification is strongly advised. See: https://urllib3.readthedocs.io/en/latest/advanced-usage.html#tls-warnings
  warnings.warn(

  0%|                                              | 0.00/2.72M [00:00<?, ?B/s]
  0%|▏                                    | 11.3k/2.72M [00:00<00:31, 85.2kB/s]
  3%|█                                     | 74.8k/2.72M [00:00<00:07, 371kB/s]
  5%|██                                     | 145k/2.72M [00:00<00:05, 514kB/s]
 10%|████                                   | 281k/2.72M [00:00<00:02, 831kB/s]
 19%|███████▏                              | 516k/2.72M [00:00<00:01, 1.37MB/s]
 47%|█████████████████▍                   | 1.29M/2.72M [00:00<00:00, 3.48MB/s]
 76%|████████████████████████████▏        | 2.07M/2.72M [00:00<00:00, 4.90MB/s]
  0%|                                              | 0.00/2.72M [00:00<?, ?B/s]
100%|█████████████████████████████████████| 2.72M/2.72M [00:00<00:00, 7.32GB/s]
SHA256 hash of downloaded file: 46c401efa32d18740bb81ddfebe1d175df3fa8398c0410461c841aea8f0c2f68
Use this value as the 'known_hash' argument of 'pooch.retrieve' to ensure that the file hasn't changed if it is downloaded again in the future.
Downloading data from 'https://zenodo.org/record/2392979/files/subject10_run3_raw.fif' to file '/home/runner/work/moabb/moabb/mne_data/MNE-ssvepexo-data/zenodo/2392979/subject10_run3_raw.fif'.
/home/runner/work/moabb/moabb/.venv/lib/python3.10/site-packages/urllib3/connectionpool.py:1097: InsecureRequestWarning: Unverified HTTPS request is being made to host 'zenodo.org'. Adding certificate verification is strongly advised. See: https://urllib3.readthedocs.io/en/latest/advanced-usage.html#tls-warnings
  warnings.warn(
/home/runner/work/moabb/moabb/.venv/lib/python3.10/site-packages/urllib3/connectionpool.py:1097: InsecureRequestWarning: Unverified HTTPS request is being made to host 'zenodo.org'. Adding certificate verification is strongly advised. See: https://urllib3.readthedocs.io/en/latest/advanced-usage.html#tls-warnings
  warnings.warn(

  0%|                                              | 0.00/2.82M [00:00<?, ?B/s]
  0%|▏                                    | 11.3k/2.82M [00:00<00:29, 94.5kB/s]
  3%|█▎                                    | 95.2k/2.82M [00:00<00:08, 333kB/s]
 11%|████▍                                  | 322k/2.82M [00:00<00:02, 992kB/s]
 26%|██████████                            | 745k/2.82M [00:00<00:01, 1.59MB/s]
 61%|██████████████████████▌              | 1.72M/2.82M [00:00<00:00, 3.76MB/s]
  0%|                                              | 0.00/2.82M [00:00<?, ?B/s]
100%|█████████████████████████████████████| 2.82M/2.82M [00:00<00:00, 8.31GB/s]
SHA256 hash of downloaded file: fa9049f0270df97f3caaf10f72145d8f2ad5b04af2e30cceae8c4f5222a472b4
Use this value as the 'known_hash' argument of 'pooch.retrieve' to ensure that the file hasn't changed if it is downloaded again in the future.
Downloading data from 'https://zenodo.org/record/2392979/files/subject10_run4_raw.fif' to file '/home/runner/work/moabb/moabb/mne_data/MNE-ssvepexo-data/zenodo/2392979/subject10_run4_raw.fif'.
/home/runner/work/moabb/moabb/.venv/lib/python3.10/site-packages/urllib3/connectionpool.py:1097: InsecureRequestWarning: Unverified HTTPS request is being made to host 'zenodo.org'. Adding certificate verification is strongly advised. See: https://urllib3.readthedocs.io/en/latest/advanced-usage.html#tls-warnings
  warnings.warn(
/home/runner/work/moabb/moabb/.venv/lib/python3.10/site-packages/urllib3/connectionpool.py:1097: InsecureRequestWarning: Unverified HTTPS request is being made to host 'zenodo.org'. Adding certificate verification is strongly advised. See: https://urllib3.readthedocs.io/en/latest/advanced-usage.html#tls-warnings
  warnings.warn(

  0%|                                              | 0.00/2.77M [00:00<?, ?B/s]
  0%|▏                                    | 11.3k/2.77M [00:00<00:29, 93.4kB/s]
  3%|█                                     | 74.8k/2.77M [00:00<00:08, 323kB/s]
  7%|██▌                                    | 182k/2.77M [00:00<00:05, 513kB/s]
 18%|██████▊                               | 494k/2.77M [00:00<00:01, 1.34MB/s]
 40%|██████████████▊                      | 1.11M/2.77M [00:00<00:00, 2.84MB/s]
 71%|██████████████████████████▎          | 1.97M/2.77M [00:00<00:00, 4.24MB/s]
  0%|                                              | 0.00/2.77M [00:00<?, ?B/s]
100%|█████████████████████████████████████| 2.77M/2.77M [00:00<00:00, 8.35GB/s]
SHA256 hash of downloaded file: e9a7ab3c54ab1f23314b8d20214984747ff54842ce29482cdddf1fc3ad491da4
Use this value as the 'known_hash' argument of 'pooch.retrieve' to ensure that the file hasn't changed if it is downloaded again in the future.
Downloading data from 'https://zenodo.org/record/2392979/files/subject11_run1_raw.fif' to file '/home/runner/work/moabb/moabb/mne_data/MNE-ssvepexo-data/zenodo/2392979/subject11_run1_raw.fif'.
/home/runner/work/moabb/moabb/.venv/lib/python3.10/site-packages/urllib3/connectionpool.py:1097: InsecureRequestWarning: Unverified HTTPS request is being made to host 'zenodo.org'. Adding certificate verification is strongly advised. See: https://urllib3.readthedocs.io/en/latest/advanced-usage.html#tls-warnings
  warnings.warn(
/home/runner/work/moabb/moabb/.venv/lib/python3.10/site-packages/urllib3/connectionpool.py:1097: InsecureRequestWarning: Unverified HTTPS request is being made to host 'zenodo.org'. Adding certificate verification is strongly advised. See: https://urllib3.readthedocs.io/en/latest/advanced-usage.html#tls-warnings
  warnings.warn(

  0%|                                              | 0.00/2.72M [00:00<?, ?B/s]
  0%|▏                                     | 12.3k/2.72M [00:00<00:25, 108kB/s]
  3%|█▎                                    | 94.2k/2.72M [00:00<00:07, 328kB/s]
  8%|███▏                                   | 221k/2.72M [00:00<00:03, 650kB/s]
 17%|██████▍                               | 464k/2.72M [00:00<00:02, 1.09MB/s]
 32%|████████████▎                         | 879k/2.72M [00:00<00:00, 1.99MB/s]
 64%|███████████████████████▋             | 1.74M/2.72M [00:00<00:00, 3.95MB/s]
  0%|                                              | 0.00/2.72M [00:00<?, ?B/s]
100%|█████████████████████████████████████| 2.72M/2.72M [00:00<00:00, 8.29GB/s]
SHA256 hash of downloaded file: 239688db2cde8627edf207a5fb83a39c6891424f1ce5b50ce1220ea94040ffda
Use this value as the 'known_hash' argument of 'pooch.retrieve' to ensure that the file hasn't changed if it is downloaded again in the future.
Downloading data from 'https://zenodo.org/record/2392979/files/subject11_run2_raw.fif' to file '/home/runner/work/moabb/moabb/mne_data/MNE-ssvepexo-data/zenodo/2392979/subject11_run2_raw.fif'.
/home/runner/work/moabb/moabb/.venv/lib/python3.10/site-packages/urllib3/connectionpool.py:1097: InsecureRequestWarning: Unverified HTTPS request is being made to host 'zenodo.org'. Adding certificate verification is strongly advised. See: https://urllib3.readthedocs.io/en/latest/advanced-usage.html#tls-warnings
  warnings.warn(
/home/runner/work/moabb/moabb/.venv/lib/python3.10/site-packages/urllib3/connectionpool.py:1097: InsecureRequestWarning: Unverified HTTPS request is being made to host 'zenodo.org'. Adding certificate verification is strongly advised. See: https://urllib3.readthedocs.io/en/latest/advanced-usage.html#tls-warnings
  warnings.warn(

  0%|                                              | 0.00/2.75M [00:00<?, ?B/s]
  0%|▏                                    | 10.2k/2.75M [00:00<00:27, 98.4kB/s]
  4%|█▎                                    | 97.3k/2.75M [00:00<00:07, 356kB/s]
 12%|████▌                                 | 333k/2.75M [00:00<00:02, 1.06MB/s]
 24%|████████▉                             | 650k/2.75M [00:00<00:01, 1.36MB/s]
 54%|███████████████████▉                 | 1.49M/2.75M [00:00<00:00, 3.24MB/s]
  0%|                                              | 0.00/2.75M [00:00<?, ?B/s]
100%|█████████████████████████████████████| 2.75M/2.75M [00:00<00:00, 9.75GB/s]
SHA256 hash of downloaded file: 17dbfdf278d9f4ea97496e3e6fd1c43521a21ae0ca9dcc7453a8ee8051730cb9
Use this value as the 'known_hash' argument of 'pooch.retrieve' to ensure that the file hasn't changed if it is downloaded again in the future.
Downloading data from 'https://zenodo.org/record/2392979/files/subject12_run1_raw.fif' to file '/home/runner/work/moabb/moabb/mne_data/MNE-ssvepexo-data/zenodo/2392979/subject12_run1_raw.fif'.
/home/runner/work/moabb/moabb/.venv/lib/python3.10/site-packages/urllib3/connectionpool.py:1097: InsecureRequestWarning: Unverified HTTPS request is being made to host 'zenodo.org'. Adding certificate verification is strongly advised. See: https://urllib3.readthedocs.io/en/latest/advanced-usage.html#tls-warnings
  warnings.warn(
/home/runner/work/moabb/moabb/.venv/lib/python3.10/site-packages/urllib3/connectionpool.py:1097: InsecureRequestWarning: Unverified HTTPS request is being made to host 'zenodo.org'. Adding certificate verification is strongly advised. See: https://urllib3.readthedocs.io/en/latest/advanced-usage.html#tls-warnings
  warnings.warn(

  0%|                                              | 0.00/3.26M [00:00<?, ?B/s]
  0%|▏                                     | 13.3k/3.26M [00:00<00:31, 103kB/s]
  2%|▉                                     | 78.8k/3.26M [00:00<00:08, 394kB/s]
  6%|██▎                                    | 190k/3.26M [00:00<00:04, 704kB/s]
 11%|████▎                                 | 372k/3.26M [00:00<00:02, 1.13MB/s]
 20%|███████▋                              | 663k/3.26M [00:00<00:01, 1.75MB/s]
 36%|█████████████▎                       | 1.17M/3.26M [00:00<00:00, 2.87MB/s]
 73%|██████████████████████████▉          | 2.38M/3.26M [00:00<00:00, 5.85MB/s]
  0%|                                              | 0.00/3.26M [00:00<?, ?B/s]
100%|█████████████████████████████████████| 3.26M/3.26M [00:00<00:00, 14.9GB/s]
SHA256 hash of downloaded file: e864605256819ca15ef57bdd3f0071fc5103952007bb5066bc0bb1f8876a26c8
Use this value as the 'known_hash' argument of 'pooch.retrieve' to ensure that the file hasn't changed if it is downloaded again in the future.
Downloading data from 'https://zenodo.org/record/2392979/files/subject12_run2_raw.fif' to file '/home/runner/work/moabb/moabb/mne_data/MNE-ssvepexo-data/zenodo/2392979/subject12_run2_raw.fif'.
/home/runner/work/moabb/moabb/.venv/lib/python3.10/site-packages/urllib3/connectionpool.py:1097: InsecureRequestWarning: Unverified HTTPS request is being made to host 'zenodo.org'. Adding certificate verification is strongly advised. See: https://urllib3.readthedocs.io/en/latest/advanced-usage.html#tls-warnings
  warnings.warn(
/home/runner/work/moabb/moabb/.venv/lib/python3.10/site-packages/urllib3/connectionpool.py:1097: InsecureRequestWarning: Unverified HTTPS request is being made to host 'zenodo.org'. Adding certificate verification is strongly advised. See: https://urllib3.readthedocs.io/en/latest/advanced-usage.html#tls-warnings
  warnings.warn(

  0%|                                              | 0.00/3.33M [00:00<?, ?B/s]
  0%|▏                                    | 12.3k/3.33M [00:00<00:35, 94.5kB/s]
  3%|█                                     | 93.2k/3.33M [00:00<00:10, 312kB/s]
  6%|██▍                                    | 213k/3.33M [00:00<00:05, 606kB/s]
 18%|██████▋                               | 591k/3.33M [00:00<00:01, 1.63MB/s]
 35%|█████████████                        | 1.18M/3.33M [00:00<00:00, 2.96MB/s]
 65%|████████████████████████             | 2.16M/3.33M [00:00<00:00, 5.09MB/s]
  0%|                                              | 0.00/3.33M [00:00<?, ?B/s]
100%|█████████████████████████████████████| 3.33M/3.33M [00:00<00:00, 17.8GB/s]
SHA256 hash of downloaded file: 29b8edad256d6fa02769c1f4919970c543ffbbb83fac491a2ec15935e274a37a
Use this value as the 'known_hash' argument of 'pooch.retrieve' to ensure that the file hasn't changed if it is downloaded again in the future.
Downloading data from 'https://zenodo.org/record/2392979/files/subject12_run3_raw.fif' to file '/home/runner/work/moabb/moabb/mne_data/MNE-ssvepexo-data/zenodo/2392979/subject12_run3_raw.fif'.
/home/runner/work/moabb/moabb/.venv/lib/python3.10/site-packages/urllib3/connectionpool.py:1097: InsecureRequestWarning: Unverified HTTPS request is being made to host 'zenodo.org'. Adding certificate verification is strongly advised. See: https://urllib3.readthedocs.io/en/latest/advanced-usage.html#tls-warnings
  warnings.warn(
/home/runner/work/moabb/moabb/.venv/lib/python3.10/site-packages/urllib3/connectionpool.py:1097: InsecureRequestWarning: Unverified HTTPS request is being made to host 'zenodo.org'. Adding certificate verification is strongly advised. See: https://urllib3.readthedocs.io/en/latest/advanced-usage.html#tls-warnings
  warnings.warn(

  0%|                                              | 0.00/3.23M [00:00<?, ?B/s]
  0%|▏                                     | 11.3k/3.23M [00:00<00:30, 107kB/s]
  3%|█                                     | 88.1k/3.23M [00:00<00:09, 319kB/s]
 11%|████▏                                 | 355k/3.23M [00:00<00:02, 1.01MB/s]
 24%|█████████▏                            | 781k/3.23M [00:00<00:01, 1.74MB/s]
 54%|████████████████████                 | 1.75M/3.23M [00:00<00:00, 3.92MB/s]
  0%|                                              | 0.00/3.23M [00:00<?, ?B/s]
100%|█████████████████████████████████████| 3.23M/3.23M [00:00<00:00, 11.0GB/s]
SHA256 hash of downloaded file: 55d3f197b4aff6c1f96b1f1d7bc54f7eb0d18b89b66dd7b58acaf2ca48489e01
Use this value as the 'known_hash' argument of 'pooch.retrieve' to ensure that the file hasn't changed if it is downloaded again in the future.
Downloading data from 'https://zenodo.org/record/2392979/files/subject12_run4_raw.fif' to file '/home/runner/work/moabb/moabb/mne_data/MNE-ssvepexo-data/zenodo/2392979/subject12_run4_raw.fif'.
/home/runner/work/moabb/moabb/.venv/lib/python3.10/site-packages/urllib3/connectionpool.py:1097: InsecureRequestWarning: Unverified HTTPS request is being made to host 'zenodo.org'. Adding certificate verification is strongly advised. See: https://urllib3.readthedocs.io/en/latest/advanced-usage.html#tls-warnings
  warnings.warn(
/home/runner/work/moabb/moabb/.venv/lib/python3.10/site-packages/urllib3/connectionpool.py:1097: InsecureRequestWarning: Unverified HTTPS request is being made to host 'zenodo.org'. Adding certificate verification is strongly advised. See: https://urllib3.readthedocs.io/en/latest/advanced-usage.html#tls-warnings
  warnings.warn(

  0%|                                              | 0.00/6.92M [00:00<?, ?B/s]
  0%|                                     | 10.2k/6.92M [00:00<01:22, 83.8kB/s]
  1%|▍                                     | 82.9k/6.92M [00:00<00:23, 286kB/s]
  5%|█▊                                     | 316k/6.92M [00:00<00:06, 980kB/s]
 10%|███▋                                  | 668k/6.92M [00:00<00:03, 1.81MB/s]
 19%|███████                              | 1.33M/6.92M [00:00<00:01, 3.32MB/s]
 30%|███████████▏                         | 2.10M/6.92M [00:00<00:01, 4.70MB/s]
 50%|██████████████████▍                  | 3.45M/6.92M [00:00<00:00, 7.42MB/s]
  0%|                                              | 0.00/6.92M [00:00<?, ?B/s]
100%|█████████████████████████████████████| 6.92M/6.92M [00:00<00:00, 27.4GB/s]
SHA256 hash of downloaded file: 5f92d56007b4b9c9bc4e20486d39d84c8ef43c0de8e827ee452b4788481296eb
Use this value as the 'known_hash' argument of 'pooch.retrieve' to ensure that the file hasn't changed if it is downloaded again in the future.
Downloading data from 'https://zenodo.org/record/2392979/files/subject12_run5_raw.fif' to file '/home/runner/work/moabb/moabb/mne_data/MNE-ssvepexo-data/zenodo/2392979/subject12_run5_raw.fif'.
/home/runner/work/moabb/moabb/.venv/lib/python3.10/site-packages/urllib3/connectionpool.py:1097: InsecureRequestWarning: Unverified HTTPS request is being made to host 'zenodo.org'. Adding certificate verification is strongly advised. See: https://urllib3.readthedocs.io/en/latest/advanced-usage.html#tls-warnings
  warnings.warn(
/home/runner/work/moabb/moabb/.venv/lib/python3.10/site-packages/urllib3/connectionpool.py:1097: InsecureRequestWarning: Unverified HTTPS request is being made to host 'zenodo.org'. Adding certificate verification is strongly advised. See: https://urllib3.readthedocs.io/en/latest/advanced-usage.html#tls-warnings
  warnings.warn(

  0%|                                              | 0.00/5.35M [00:00<?, ?B/s]
  0%|                                     | 7.17k/5.35M [00:00<01:26, 61.9kB/s]
  2%|▋                                     | 95.2k/5.35M [00:00<00:15, 338kB/s]
  4%|█▋                                     | 239k/5.35M [00:00<00:07, 712kB/s]
 12%|████▋                                 | 663k/5.35M [00:00<00:03, 1.44MB/s]
 20%|███████▌                             | 1.09M/5.35M [00:00<00:01, 2.20MB/s]
 37%|█████████████▋                       | 1.99M/5.35M [00:00<00:00, 4.05MB/s]
 59%|█████████████████████▋               | 3.13M/5.35M [00:00<00:00, 6.13MB/s]
  0%|                                              | 0.00/5.35M [00:00<?, ?B/s]
100%|█████████████████████████████████████| 5.35M/5.35M [00:00<00:00, 19.0GB/s]
SHA256 hash of downloaded file: f3272b17761df094a2454faaf9eed3a4c760c3128a49b367e0f5bc5613464e02
Use this value as the 'known_hash' argument of 'pooch.retrieve' to ensure that the file hasn't changed if it is downloaded again in the future.
[codecarbon WARNING @ 18:57:33] Multiple instances of codecarbon are allowed to run at the same time.
2026-03-25 18:58:15,202 INFO MainThread moabb.evaluations.base CCA | Kalunga2016 | 1 | 0: Score 0.333
2026-03-25 18:58:15,202 INFO MainThread moabb.evaluations.base CCA | Kalunga2016 | 2 | 0: Score 0.333
2026-03-25 18:58:15,202 INFO MainThread moabb.evaluations.base CCA | Kalunga2016 | 3 | 0: Score 0.333
2026-03-25 18:58:15,202 INFO MainThread moabb.evaluations.base CCA | Kalunga2016 | 4 | 0: Score 0.333
2026-03-25 18:58:15,202 INFO MainThread moabb.evaluations.base CCA | Kalunga2016 | 5 | 0: Score 0.312
2026-03-25 18:58:15,202 INFO MainThread moabb.evaluations.base CCA | Kalunga2016 | 6 | 0: Score 0.333
2026-03-25 18:58:15,202 INFO MainThread moabb.evaluations.base CCA | Kalunga2016 | 7 | 0: Score 0.333
2026-03-25 18:58:15,202 INFO MainThread moabb.evaluations.base CCA | Kalunga2016 | 8 | 0: Score 0.333
2026-03-25 18:58:15,202 INFO MainThread moabb.evaluations.base CCA | Kalunga2016 | 9 | 0: Score 0.333
2026-03-25 18:58:15,202 INFO MainThread moabb.evaluations.base CCA | Kalunga2016 | 10 | 0: Score 0.333
2026-03-25 18:58:15,202 INFO MainThread moabb.evaluations.base CCA | Kalunga2016 | 11 | 0: Score 0.333
2026-03-25 18:58:15,202 INFO MainThread moabb.evaluations.base CCA | Kalunga2016 | 12 | 0: Score 0.333
/home/runner/work/moabb/moabb/moabb/analysis/results.py:192: H5pyDeprecationWarning: Creating a dataset without passing data or dtype is deprecated. Pass an explicit dtype. Using dtype='f4' will keep the current default behaviour.
  dset.create_dataset(

Filter bank processing, determine the filter automatically from the stimulation frequency values of events.

2026-03-25 18:58:58,888 INFO MainThread moabb.evaluations.base RG+LogReg | Kalunga2016 | 1 | 0: Score 0.375
2026-03-25 18:58:58,888 INFO MainThread moabb.evaluations.base RG+LogReg | Kalunga2016 | 2 | 0: Score 0.396
2026-03-25 18:58:58,888 INFO MainThread moabb.evaluations.base RG+LogReg | Kalunga2016 | 3 | 0: Score 0.583
2026-03-25 18:58:58,888 INFO MainThread moabb.evaluations.base RG+LogReg | Kalunga2016 | 4 | 0: Score 0.458
2026-03-25 18:58:58,888 INFO MainThread moabb.evaluations.base RG+LogReg | Kalunga2016 | 5 | 0: Score 0.271
2026-03-25 18:58:58,888 INFO MainThread moabb.evaluations.base RG+LogReg | Kalunga2016 | 6 | 0: Score 0.354
2026-03-25 18:58:58,888 INFO MainThread moabb.evaluations.base RG+LogReg | Kalunga2016 | 7 | 0: Score 0.611
2026-03-25 18:58:58,888 INFO MainThread moabb.evaluations.base RG+LogReg | Kalunga2016 | 8 | 0: Score 0.354
2026-03-25 18:58:58,888 INFO MainThread moabb.evaluations.base RG+LogReg | Kalunga2016 | 9 | 0: Score 0.521
2026-03-25 18:58:58,888 INFO MainThread moabb.evaluations.base RG+LogReg | Kalunga2016 | 10 | 0: Score 0.417
2026-03-25 18:58:58,888 INFO MainThread moabb.evaluations.base RG+LogReg | Kalunga2016 | 11 | 0: Score 0.438
2026-03-25 18:58:58,889 INFO MainThread moabb.evaluations.base RG+LogReg | Kalunga2016 | 12 | 0: Score 0.533
/home/runner/work/moabb/moabb/moabb/analysis/results.py:192: H5pyDeprecationWarning: Creating a dataset without passing data or dtype is deprecated. Pass an explicit dtype. Using dtype='f4' will keep the current default behaviour.
  dset.create_dataset(

TRCA processing also relies on filter bank that is automatically designed.

2026-03-25 19:05:54,414 INFO MainThread moabb.evaluations.base TRCA | Kalunga2016 | 1 | 0: Score 0.271
2026-03-25 19:05:54,414 INFO MainThread moabb.evaluations.base TRCA | Kalunga2016 | 2 | 0: Score 0.333
2026-03-25 19:05:54,414 INFO MainThread moabb.evaluations.base TRCA | Kalunga2016 | 3 | 0: Score 0.354
2026-03-25 19:05:54,414 INFO MainThread moabb.evaluations.base TRCA | Kalunga2016 | 4 | 0: Score 0.354
2026-03-25 19:05:54,414 INFO MainThread moabb.evaluations.base TRCA | Kalunga2016 | 5 | 0: Score 0.208
2026-03-25 19:05:54,414 INFO MainThread moabb.evaluations.base TRCA | Kalunga2016 | 6 | 0: Score 0.250
2026-03-25 19:05:54,414 INFO MainThread moabb.evaluations.base TRCA | Kalunga2016 | 7 | 0: Score 0.403
2026-03-25 19:05:54,415 INFO MainThread moabb.evaluations.base TRCA | Kalunga2016 | 8 | 0: Score 0.417
2026-03-25 19:05:54,415 INFO MainThread moabb.evaluations.base TRCA | Kalunga2016 | 9 | 0: Score 0.271
2026-03-25 19:05:54,415 INFO MainThread moabb.evaluations.base TRCA | Kalunga2016 | 10 | 0: Score 0.312
2026-03-25 19:05:54,415 INFO MainThread moabb.evaluations.base TRCA | Kalunga2016 | 11 | 0: Score 0.250
2026-03-25 19:05:54,415 INFO MainThread moabb.evaluations.base TRCA | Kalunga2016 | 12 | 0: Score 0.308
/home/runner/work/moabb/moabb/moabb/analysis/results.py:192: H5pyDeprecationWarning: Creating a dataset without passing data or dtype is deprecated. Pass an explicit dtype. Using dtype='f4' will keep the current default behaviour.
  dset.create_dataset(

MsetCCA processing

2026-03-25 19:06:59,941 INFO MainThread moabb.evaluations.base MSET_CCA | Kalunga2016 | 1 | 0: Score 0.375
2026-03-25 19:06:59,941 INFO MainThread moabb.evaluations.base MSET_CCA | Kalunga2016 | 2 | 0: Score 0.375
2026-03-25 19:06:59,941 INFO MainThread moabb.evaluations.base MSET_CCA | Kalunga2016 | 3 | 0: Score 0.333
2026-03-25 19:06:59,941 INFO MainThread moabb.evaluations.base MSET_CCA | Kalunga2016 | 4 | 0: Score 0.438
2026-03-25 19:06:59,941 INFO MainThread moabb.evaluations.base MSET_CCA | Kalunga2016 | 5 | 0: Score 0.292
2026-03-25 19:06:59,941 INFO MainThread moabb.evaluations.base MSET_CCA | Kalunga2016 | 6 | 0: Score 0.458
2026-03-25 19:06:59,942 INFO MainThread moabb.evaluations.base MSET_CCA | Kalunga2016 | 7 | 0: Score 0.264
2026-03-25 19:06:59,942 INFO MainThread moabb.evaluations.base MSET_CCA | Kalunga2016 | 8 | 0: Score 0.375
2026-03-25 19:06:59,942 INFO MainThread moabb.evaluations.base MSET_CCA | Kalunga2016 | 9 | 0: Score 0.396
2026-03-25 19:06:59,942 INFO MainThread moabb.evaluations.base MSET_CCA | Kalunga2016 | 10 | 0: Score 0.385
2026-03-25 19:06:59,942 INFO MainThread moabb.evaluations.base MSET_CCA | Kalunga2016 | 11 | 0: Score 0.417
2026-03-25 19:06:59,942 INFO MainThread moabb.evaluations.base MSET_CCA | Kalunga2016 | 12 | 0: Score 0.417
/home/runner/work/moabb/moabb/moabb/analysis/results.py:192: H5pyDeprecationWarning: Creating a dataset without passing data or dtype is deprecated. Pass an explicit dtype. Using dtype='f4' will keep the current default behaviour.
  dset.create_dataset(

After processing the four, we simply concatenate the results.

Plot Results#

Here we display the results using the MOABB score plot with chance level annotations. The 3-class SSVEP paradigm has a theoretical chance level of 33.3%.

chance_levels = chance_by_chance(results, alpha=[0.05, 0.01])

fig, _ = moabb_plt.score_plot(results, chance_level=chance_levels)
plt.show()
plot cross subject ssvep
2026-03-25 19:07:00,197 WARNING MainThread moabb.analysis.plotting Dataset names are too similar, turning off name shortening
/home/runner/work/moabb/moabb/moabb/analysis/plotting.py:421: UserWarning: The palette list has more values (6) than needed (4), which may not be intended.
  sea.stripplot(

Total running time of the script: (10 minutes 3.315 seconds)

Gallery generated by Sphinx-Gallery