{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "## Using the coffeine filterbank for dedoding motor imagery\n", "\n", "This notebook is based on the [MNE example](https://mne.tools/dev/auto_examples/decoding/decoding_csp_eeg.html) and illustrates the construction of the filterbank models.\n", "\n", "First we load the data as in the original example." ] }, { "cell_type": "code", "execution_count": 1, "metadata": {}, "outputs": [], "source": [ "import numpy as np\n", "import pandas as pd\n", "\n", "from sklearn.linear_model import LogisticRegression\n", "from sklearn.model_selection import ShuffleSplit, cross_val_score\n", "\n", "import mne\n", "from mne import Epochs, pick_types, events_from_annotations\n", "from mne.io import concatenate_raws, read_raw_edf\n", "from mne.datasets import eegbci\n", "\n", "from coffeine import compute_coffeine, make_filter_bank_classifier" ] }, { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [], "source": [ "mne.set_log_level('critical')\n", "pd.set_option(\"large_repr\", \"info\")" ] }, { "cell_type": "code", "execution_count": 3, "metadata": {}, "outputs": [], "source": [ "tmin, tmax = -1.0, 4.0\n", "event_id = dict(hands=2, feet=3)\n", "subject = 1\n", "runs = [6, 10, 14] # motor imagery: hands vs feet\n", "raw_fnames = eegbci.load_data(subject, runs)\n", "raw = concatenate_raws([read_raw_edf(f, preload=True) for f in raw_fnames])\n", "eegbci.standardize(raw) # set channel names" ] }, { "cell_type": "code", "execution_count": 4, "metadata": {}, "outputs": [], "source": [ "# Apply band-pass filter\n", "raw.filter(4.0, 35.0, fir_design=\"firwin\", skip_by_annotation=\"edge\")\n", "\n", "events, _ = events_from_annotations(raw, event_id=dict(T1=2, T2=3))\n", "picks = pick_types(raw.info, meg=False, eeg=True, stim=False, eog=False, exclude=\"bads\")\n", "\n", "# Read epochs (train will be done only between 1 and 2s)\n", "# Testing will be done with a running classifier\n", "epochs = Epochs(\n", " raw,\n", " events,\n", " event_id,\n", " tmin,\n", " tmax,\n", " proj=True,\n", " picks=picks,\n", " baseline=None,\n", " preload=True,\n", ")\n", "\n", "labels = epochs.events[:, -1] - 2\n", "conditions = ['feet', 'hand']" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Building a coffeine data frame of covariances per frequency\n", "\n", "\n", "In the following, we compute covariances based on pre-defined frequencies and show how to make a coffeine data frame from them. This was previously complicated, now coffeine provides the API for it." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "As this is event-related data and not subject-level data as in [Sabbagh et al 2020](https://www.sciencedirect.com/science/article/pii/S1053811920303797), we need to loop over epochs. Luckily, coffeine does this for us. We now get the pandas data frame where each columns is an object array of covariances, which is represented as a list of covariances, leading to an object array type." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "We can now make the pandas data frame where each columns is an object array of covariances, which we can represent as a list of covariances." ] }, { "cell_type": "code", "execution_count": 5, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
<class 'pandas.core.frame.DataFrame'>\n",
       "RangeIndex: 5 entries, 0 to 4\n",
       "Data columns (total 2 columns):\n",
       " #   Column  Non-Null Count  Dtype \n",
       "---  ------  --------------  ----- \n",
       " 0   alpha1  5 non-null      object\n",
       " 1   alpha2  5 non-null      object\n",
       "dtypes: object(2)\n",
       "memory usage: 208.0+ bytes\n",
       "
" ], "text/plain": [ "\n", "RangeIndex: 5 entries, 0 to 4\n", "Data columns (total 2 columns):\n", " # Column Non-Null Count Dtype \n", "--- ------ -------------- ----- \n", " 0 alpha1 5 non-null object\n", " 1 alpha2 5 non-null object\n", "dtypes: object(2)\n", "memory usage: 208.0+ bytes" ] }, "execution_count": 5, "metadata": {}, "output_type": "execute_result" } ], "source": [ "X_df, feature_info = compute_coffeine(epochs, frequencies=('ipeg', ['alpha1', 'alpha2']))\n", "X_df.head()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Now we can call the model constructor and select our preferred covariance vectorizer, which is the Riemannian tangent-space embedding.\n", "As this makes the assumption of full-rank data, it can be worthwhile to inspect the rank of the data.\n", "As we will see, a rank of 64 seems to be a safe assumption althought it could also be ~60 if on some epochs the rank is lower.\n", "If the rank of covariance is different, it makes sense to take the smallest common rank." ] }, { "cell_type": "code", "execution_count": 6, "metadata": {}, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAW4AAAE0CAYAAAAMt9keAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjcuMSwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/bCgiHAAAACXBIWXMAAA9hAAAPYQGoP6dpAABqiklEQVR4nO29eXwURf7//+q5JzeEJJNAgBhuAUVwEVTAA1x0XY9VVBQVXRWBXQFdV0TXeAVlhW90FVBXEZTr5yLq7qIQLzxARRRlwY8ioiAQI+FIyDXJTP/+COmp97szJ+AM4f18PObxmOrqrqqu7lR6Xv2qd2m6rusQBEEQjhks8W6AIAiCEB0ycAuCIBxjyMAtCIJwjCEDtyAIwjGGDNyCIAjHGDJwC4IgHGPIwC0IgnCMIQO3IAjCMYYM3IIgCMcYMnDHkRdeeAGapgX9vPfee8a+nTt3DrrfsGHDTGV/9dVXuPHGG1FYWAi32w23242uXbvilltuwWefffbrnWQc0DQNRUVF8W6GIBw1bPFugADMmzcPPXr0MG3v1asXSZ9++ul47LHHTPulpaWR9NNPP42JEyeie/fuuO2223DiiSdC0zR8/fXXWLx4MU499VR89913KCwsPLInkiCsXbsWHTp0iHczBOGoIQN3AtC7d28MGDAg7H4ZGRk47bTTQu7z0UcfYfz48bjgggvwr3/9Cw6Hw8g7++yzMWHCBLz88stwu92H3e5EQtd11NXVwe12h+0jQTjWEamklVFcXAyr1Yqnn36aDNoql19+OfLy8sKWtXPnTtx8883Iz8+Hw+FAXl4eLrvsMvz888/GPtu3b8c111yD7OxsOJ1O9OzZEzNnzoTf7wcANDQ0IDs7G2PGjDGVv3//frjdbkyZMgUAUFdXh9tvvx0nn3wy0tPT0bZtWwwaNAivvfaa6VhN0zBx4kTMnTsXPXv2hNPpxPz58408VSr55ZdfMH78ePTq1QspKSnIzs7G2WefjQ8++ICU+cMPP0DTNDz22GOYNWsWCgoKkJKSgkGDBuHjjz82teGTTz7BhRdeiMzMTLhcLhQWFmLSpElkny1btmD06NGkf5566qmwfS8IoZAn7gTA5/OhsbGRbNM0DVarlWzTdd20HwBYrVZomgafz4d3330XAwYMQG5u7mG1aefOnTj11FPR0NCAu+++G3379kVFRQVWrlyJffv2IScnB7/88gsGDx4Mr9eLBx98EJ07d8Z//vMf3HHHHdi6dStmz54Nu92Oa665BnPnzsVTTz1FZJ3Fixejrq4OY8eOBQDU19dj7969uOOOO9C+fXt4vV689dZbuPTSSzFv3jxce+21pI2vvvoqPvjgA/ztb3+Dx+NBdnZ2i+eyd+9eAMB9990Hj8eDgwcPYvny5Rg2bBjefvtt0zuCp556Cj169EBJSQkA4N5778X555+Pbdu2IT09HQCwcuVKXHjhhejZsydmzZqFjh074ocffsCqVauMcjZv3ozBgwejY8eOmDlzJjweD1auXIk///nP2LNnD+67777DukbCcYwuxI158+bpAFr8WK1Wsm+nTp2C7vvggw/quq7rZWVlOgD9yiuvNNXV2NioNzQ0GB+/3x+ybTfccINut9v1zZs3B93nrrvu0gHon3zyCdl+66236pqm6d98842u67r+1Vdf6QD0Z555huz3m9/8Ru/fv3/Q8pvbfOONN+r9+vUjeQD09PR0fe/evabjAOj33Xdf2HLPOecc/ZJLLjG2b9u2TQeg9+nTR29sbDS2f/rppzoAffHixca2wsJCvbCwUK+trQ1az3nnnad36NBBP3DgANk+ceJE3eVytdh2QYgEkUoSgAULFmDdunXk88knn5j2O+OMM0z7rVu3DjfeeGPYOvr37w+73W58Zs6cGXL/N954A2eddRZ69uwZdJ933nkHvXr1wm9+8xuy/frrr4eu63jnnXcAAH369EH//v0xb948Y5+vv/4an376KW644QZy7Msvv4zTTz8dKSkpsNlssNvteO655/D111+b6j/77LPRpk2bsOcOAHPnzsUpp5wCl8tllPv222+3WO4FF1xAfu307dsXAPDjjz8CAL799lts3boVN954I1wuV4v11dXV4e2338Yll1yCpKQkNDY2Gp/zzz8fdXV1LcovghAJIpUkAD179ozo5WR6enrI/dq1awe3220MMCqLFi1CTU0Ndu/ejd///vdh6/rll1/COjMqKirQuXNn0/Zm/byiosLYdsMNN2DChAn4v//7P/To0QPz5s2D0+nEVVddZezzyiuvYNSoUbj88svxl7/8BR6PBzabDXPmzMHzzz9vqidSOWjWrFm4/fbbMW7cODz44INo164drFYr7r333hYH7szMTJJ2Op0AgNraWgBNfQMgZP9UVFSgsbER//jHP/CPf/yjxX327NkTUfsFgSMDdyvCarXi7LPPxqpVq7B7924ysDVbC3/44YeIysrKysJPP/0Ucp/MzEzs3r3btH3Xrl0Amv6RNHPVVVdhypQpeOGFF/Dwww/jxRdfxMUXX0yemF966SUUFBRg6dKl0DTN2F5fX99i/eo+oXjppZcwbNgwzJkzh2yvqqqK6HhOVlYWAITsnzZt2sBqtWLMmDGYMGFCi/sUFBTEVL8giFTSypg6dSp8Ph/GjRuHhoaGmMsZOXIk3n33XXzzzTdB9znnnHOwefNmfP7552T7ggULoGkazjrrLGNbmzZtcPHFF2PBggX4z3/+g7KyMpNMomkaHA4HGZDLyspadJVEg6ZpxlNzM1999RXWrl0bU3ndunVDYWEhnn/++aD/VJKSknDWWWfhiy++QN++fTFgwADThz/ZC0KkyBN3AvC///2vRbdIYWGh8XQHNNnnWtJFnU4n+vXrB6Bpks5TTz2FP/3pTzjllFNw880348QTT4TFYsHu3buxbNkyAOZJO5wHHngAb7zxBoYMGYK7774bffr0wf79+/Hmm29iypQp6NGjByZPnowFCxbgggsuwAMPPIBOnTrhv//9L2bPno1bb70V3bp1I2XecMMNWLp0KSZOnIgOHTrg3HPPJfm/+93v8Morr2D8+PG47LLLsGPHDjz44IPIzc3Fli1bIuvMFvjd736HBx98EPfddx+GDh2Kb775Bg888AAKCgpa7PdIeOqpp3DhhRfitNNOw+TJk9GxY0ds374dK1euxMKFCwEAjz/+OM444wyceeaZuPXWW9G5c2dUVVXhu+++w7///W/jHYAgRE28344ez4RylQDQn332WWPfUK6S9u3bm8resGGDPnbsWL2goEB3Op26y+XSu3Tpol977bX622+/HVH7duzYod9www26x+PR7Xa7npeXp48aNUr/+eefjX1+/PFHffTo0XpmZqZut9v17t2763//+991n89nKs/n8+n5+fk6AH3atGkt1vnII4/onTt31p1Op96zZ0/92Wef1e+77z6d36oA9AkTJrRYBpirpL6+Xr/jjjv09u3b6y6XSz/llFP0V199Vb/uuuv0Tp06Gfs1u0r+/ve/hy1T13V97dq1+siRI/X09HTd6XTqhYWF+uTJk8k+27Zt02+44Qa9ffv2ut1u17OysvTB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", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "image/png": "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", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/plain": [ "(
,
)" ] }, "execution_count": 6, "metadata": {}, "output_type": "execute_result" } ], "source": [ "mne.compute_covariance(epochs).plot(epochs.info)" ] }, { "cell_type": "code", "execution_count": 7, "metadata": {}, "outputs": [], "source": [ "fb_model = make_filter_bank_classifier(\n", " names=list(X_df.columns),\n", " method='riemann',\n", " projection_params=dict(scale=1, n_compo=60, reg=0),\n", " estimator=LogisticRegression(solver='liblinear', C=1e7)\n", ")" ] }, { "cell_type": "code", "execution_count": 8, "metadata": {}, "outputs": [], "source": [ "cv = ShuffleSplit(5, test_size=0.2, random_state=42)" ] }, { "cell_type": "code", "execution_count": 9, "metadata": {}, "outputs": [], "source": [ "scores = cross_val_score(estimator=fb_model, X=X_df, y=labels, cv=cv, n_jobs=2)" ] }, { "cell_type": "code", "execution_count": 10, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Mean classification accuracy: 0.84\n" ] } ], "source": [ "print(f'Mean classification accuracy: {np.mean(scores):0.2f}')" ] } ], "metadata": { "kernelspec": { "display_name": "coffeine", "language": "python", "name": "coffeine" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.9.16" } }, "nbformat": 4, "nbformat_minor": 2 }