Las señales del EEG registran la actividad eléctrica del cerebro colocando sensores en el cuero cabelludo. El tipo de señal registrada es ruidosa, tiene artefactos y, sobre todo, no es información que podamos estudiar y analizar directamente (imágenes, gráficos, etc.). En esa medida, los médicos, neurocientíficos e ingenieros biomédicos suelen llevar una formación de años para comprender y extraer información significativa del EEG.
Y aún así es necesario procesar los datos crudos registrados antes de que los especialistas los examinen. Normalmente, se aplica un filtro temporal y espacial, así como procedimientos de eliminación de artefactos, que ya se aplican mientras aún se está grabando el experimento. Este procesamiento puede luego ser inspeccionado visualmente para detectar anomalías (por ejemplo, un episodio de epilepsia), cambios en el estado mental (por ejemplo, fases de sueño) o para estudiar las respuestas promedio de los grupos de personas.
La inspección visual es un proceso largo, caro y tedioso, no escala bien y no puede ser transferido a las aplicaciones de BCI. La IA y las herramientas de machine learning son la herramienta perfecta para automatizar, ampliar y mejorar el análisis de datos. De hecho, las interfaces cerebro-computador (BCI por sus siglas en inglés), así como los deletreadores o los dispositivos controlados por el cerebro, se basan en conductos de decodificación que utilizan algoritmos de machine learning muy diversos.
Antes de la revolución del Deep Learning, el análisis estándar del EEG combinaba las técnicas del procesamiento de señal y las de machine learning, con el objetivo de mejorar la relación señal/ruido, limpiar la señal de artefactos, extraer features y decodificar e interpretar las señales. En la Figura 1, se muestra el análisis más común cuando se procesa un EEG:
Desde un punto de vista computacional, la señal cruda del EEG es simplemente una serie temporal discreta multivariada, es decir, con múltiples dimensiones.
El número de canales del EEG determina la dimensión de cada punto de la serie temporal. Cada punto temporal corresponde a una muestra del EEG adquirida en el mismo punto temporal. El número de puntos de la serie temporal depende del tiempo registrado y de la frecuencia de muestreo (por ejemplo, 256 Hz).
Estas señales en crudo se utilizan raramente, ya que (posiblemente) contienen derivaciones y compensaciones de Corriente Directa, ruido electromagnético y artefactos que deben filtrarse. El procesamiento de señal se utiliza en los primeros pasos para eliminar el ruido, filtrar los artefactos o aislar una versión mejorada de la señal de interés. El ruido y los artefactos son una parte tan importante del análisis del EEG que toda bibliografía científica ha estudiado y sigue estudiando este problema. Puedes aprender sobre esto en nuestro artículo titulado Todo sobre los artefactos del EEG y las herramientas de filtrado.
Una vez que la señal está limpia, es hora de mejorar y descubrir los patrones cerebrales y los correlatos neurales de interés. En muchos casos, los procesos cerebrales que se estudian se sitúan en una onda de frecuencia determinada, como la respuesta evocada del P300 que se produce en la onda theta (4-7 Hz) o la modulación de los ritmos sensorio motor o mu, que se producen entre 8 y 15 Hz. El procesamiento más sencillo consiste en utilizar filtros de frecuencia como el filtro paso-bajo o paso-banda para aislar las ondas de interés y eliminar las frecuencias que no son de interés. En la Figura 2, se muestra el espectro de actividad del EEG y las ondas más comunes que se utilizan cuando se analizan los correlatos del EEG:
Figura 2: Izquierda: Espectro del EEG para dos condiciones diferentes: enfocado vs. distraído. En base a ello, se puede seleccionar el rango de frecuencia sombreado en gris para distinguir estas dos condiciones. A la derecha: Actividad del EEG filtrada en las ondas más comunes. La onda gamma [30--140Hz] también muestra la actividad correlacionada con los procesos cognitivos y muestra la alteración de los trastornos cognitivos.
Después del preprocesamiento, es hora de extraer features significativas de los datos del EEG limpio. En la era previa al Deep Learning, la extracción de features se basaba en métodos ad-hoc para el proceso cerebral de los intereses que iban desde las features artesanales hasta técnicas más sofisticadas, como el filtrado espacial lineal y no lineal. Estas últimas van desde métodos genéricos como el análisis de componentes principales y el análisis de componentes independientes, hasta otros más específicos del EEG como los CSP (Blankertz, 2007) y las variantes (Ang, 2008) para las características de potencia y X-Dawn (Rivet, 2009) para las temporales. En la Figura 3, se muestra uno de los métodos más simples de extracción de features, que, básicamente, submuestra directamente en el dominio temporal o de frecuencia de las señales limpias del EEG.
Figura 3. Un ejemplo de la extracción de features más simple. Time domain (izquierda): una ventana de un segundo de la señal del EEG filtrada en onda theta es submuestreada y los valores correspondientes se apilan en un vector de features. Frequency domain (derecha): se calcula el power spectrum del EEG en una ventana determinada y la potencia en un rango de frecuencias determinado se apila en otro vector de features. Estos vectores pueden utilizarse independientemente o combinarse para su posterior procesamiento.
Las features extraídas suelen estar adaptadas a la aplicación específica, como encontrar diferencias entre las condiciones experimentales (por ejemplo, niveles de atención, respuestas a acciones desajustadas), distinguir entre un grupo de clases predefinidas (por ejemplo, un deletreador), predecir el comportamiento (por ejemplo, anticipando el movimiento en la neurorehabilitación), encontrar anomalías con respecto a una dataset normativa (por ejemplo, QEEG o convulsiones). Las técnicas actuales de vanguardia incluyen clasificadores basados en la geometría de Riemann, bancos de filtros y clasificadores adaptativos, utilizados para manejar, con diversos niveles de éxito, los desafíos de los datos del EEG. (Perronnet, 2016, Lotte 2018).
Una vez que las funciones estén listas, es hora de usar la información para decodificar automáticamente el EEG. El enfoque más común es el supervised learning. Este utiliza un conjunto de ejemplos conocidos como el training dataset para aprender un modelo que puede clasificar, predecir o identificar los patrones del EEG, basándose en las features extraídas.
Existe una gran variedad de métodos. Los más comunes son los métodos de clasificación, que clasifican un patrón del EEG en una de un conjunto de clases predefinidas, o los métodos de regresión, que transforman el patrón del EEG en otra señal, como una dirección de movimiento. Los métodos utilizados incluyen métodos lineales simples (LDA para la clasificación y para la Multiple Linear Regression), SVM como métodos kernel , random forests, neural networks (véase la Sección 4 para los métodos de deep learning), o una combinación más sofisticada de métodos.
Cualquiera que sea el método, el enfoque supervisado necesita tener un conjunto de datos de entrenamiento etiquetado (labeled traning dataset). Este conjunto de datos se utiliza para entrenar y evaluar el método, normalmente utilizando la validación cruzada.
Dos consideraciones importantes para los decodificadores del EEG debido a la naturaleza no estacionaria y dependiente del sujeto del EEG:
En términos técnicos, la distribución de las features cambia y es necesario volver a capacitar a los modelos en un conjunto de datos de capacitación actualizado. Inicialmente, los decodificadores eran específicos para cada participante y sesión; es decir, se adquiere un conjunto de capacitación específico para cada participante y sesión. En términos prácticos, esto tiene una gran repercusión en el esfuerzo que hay que hacer para construir y capacitar estos modelos y en el despliegue de los mismos fuera de los entornos del laboratorio. ¡La calibración de cada participante es un proceso costoso y tedioso!
Para superar esta limitación, se dispone de varios métodos diferentes. Las técnicas actuales tienen por objeto reducir al mínimo este proceso de calibración e intentan diseñar métodos robustos que funcionen a lo largo del tiempo y entre los participantes (Lopéz-Larraz, 2018).
Hay un último punto que merece ser discutido. Hasta ahora, hemos asumido que sabemos exactamente en qué momento tenemos la información relevante del EEG. Aunque este es el caso de muchas aplicaciones (por ejemplo, un deletreador del EEG), en muchas otras aplicaciones del BCI y la neurotecnología esta suposición no se sostiene. Se debe considerar, por ejemplo, la detección de un ataque de epilepsia en casa o la detección de la intención de mover un miembro durante una sesión de neurorehabilitación. En esta configuración, es necesario procesar la convulsión del EEG en línea o de manera asincrónica. Esto añade un desafío adicional a la tarea de decodificación: no basta con distinguir los patrones de interés, sino que también hay que tratar con un EEG de fondo (background EEG).
Todo el procesamiento anterior tiene que ser ampliado o adaptado para obtener tal decodificación asincrónica. La forma más sencilla es utilizar una ventana deslizante (sliding window) en la que calculamos nuestra salida para cada ventana de forma independiente (véase la Figura 4 para un ejemplo de decodificación de movimiento). Durante el training, el EEG de fondo se etiqueta como "descanso", mientras que el inicio del movimiento se extrae utilizando algún protocolo de calibración como la actividad del EMG. Los mismos algoritmos de aprendizaje supervisado pueden aplicarse entonces para aprender el decodificador. Este último se puede utilizar luego sobre una ventana deslizante (sliding window) para proporcionar una decodificación continua.
Figura 4: Ejemplo de detección online usando una ventana deslizante (sliding window). Durante el entrenamiento, las ventanas se extraen de los ejemplos de entrenamiento para preparar a los clasificadores. En tiempo real, la decodificación se hace para cada ventana independientemente. El resultado, en este caso, es una probabilidad a lo largo del tiempo que puede suavizarse aún más, si es necesario.
El Deep Learning ha cambiado radicalmente el machine learning en muchos ámbitos (por ejemplo, en la visión por computadora, el habla, el reinforcement learning, etc.) al proporcionar modelos de propósito general y flexibles, que pueden trabajar con datos crudos, así como reconocer las transformaciones apropiadas para un problema en cuestión. Estos modelos pueden utilizar grandes cantidades de datos para estudiar directamente las features y captar la estructura de los datos de manera eficiente, que luego pueden transferirse y/o adaptarse a diferentes tareas. Esta capacidad de aprendizaje completo encaja perfectamente con el tipo de análisis que requiere un EEG en el que los múltiples procesos interdependientes son fundamentales y, hasta hace poco, se diseñaban cuidadosamente para cada propósito diferente.
Los datos del EEG tienen sus propios desafíos.
Estos desafíos no han impedido que los investigadores y profesionales aprovechen los beneficios que ofrece el deep learning. Gracias al deep learning, en los últimos 10 años se ha observado un rápido aumento de los resultados en todos los campos relacionados con los datos del EEG. Ha habido un creciente interés en el uso de este tipo de técnica. Una revisión muy interesante de más de 100 trabajos arroja luz sobre el estado actual de la técnica.
La Figura 5 muestra cómo los principales campos de aplicación del análisis de datos del EEG han probado el deep learning demostrando qué modelos profundos (deep models) son los más comunes. Todavía no hay una clara arquitectura dominante. Muchos de los aplicados al EEG han sido tomados directamente de aplicaciones anteriores como la visión por computadora. Por lo tanto, las convolutional neural networks (CNN) son la arquitectura más común, mientras que los autocodificadores y las redes recurrentes también se utilizan con bastante frecuencia.
Figura 5: Estadísticas sobre AP aplicadas a los datos del EEG copiados de (Roy, 2019): Número de publicaciones por dominio y año (izquierda) y tipo de arquitecturas utilizadas (derecha).
En la mayoría de los casos, los métodos de deep learning realizan la extracción y decodificación de features simultáneamente (véase la Figura 1) y utilizan el mismo enfoque supervisado (descrito en la Sección 2). En muchos casos, el preprocesamiento se simplifica, por ejemplo, mediante el cálculo de las features de potencia o la segmentación de los datos de entrada. Curiosamente, algunos modelos profundos han mostrado un rendimiento de decodificación de principio a fin, mejorando los métodos anteriores y abordando directamente cuestiones comunes del EEG como los movimientos oculares, los artefactos o el EEG de fondo (background EEG).
Los autores de la meta-revisión en Roy (2019) han calculado que la mejora media de la precisión es de alrededor del 5,4% de forma consistente en todos los dominios que se muestran en la Figura 6. Aunque también señalan algunos problemas de reproducibilidad, los resultados muestran que, a pesar de los desafíos mencionados anteriormente, el deep learning mejora los resultados de la decodificación; en muchos casos, con un mínimo o ningún pre-procesamiento. Una consecuencia interesante de la utilización de las técnicas de deep learning que requieren el uso de una gran cantidad de datos, es que la configuración estándar de participante/sesión específica ha sido sustituida por otra más ecológica en la que todas las sesiones y los participantes contribuyen a los decodificadores. Para dar una visión más detallada, destacamos los resultados en tres aplicaciones diferentes que son relevantes para comprender el estado actual de la técnica:
En este primer ejemplo, veremos cómo se pueden usar para decodificar tareas mentales de principio a fin del EEG. La decodificación de principio a fin explota las arquitecturas profundas aprendiendo los mapas directamente de los datos en crudo y obteniendo representaciones de alto nivel, en este caso, la imaginación mental del usuario. Las redes convolucionales se diseñaron en la visión por computadora y pueden verse como filtros espaciales de variación de desplazamiento sobre la imagen. Estas aprenden features locales que luego se utilizan para crear features de alto nivel en capas más profundas de la red neuronal.
Esta misma idea puede utilizarse para crear filtros de tiempo y frecuencia que aprenden automáticamente features del EEG en crudo, y luego aprenden features más complejas a partir de ahí. La Figura 6 muestra la arquitectura ConvNet propuesta en Schirrmeister, 2017. Los resultados muestran que un mapeo de un extremo a otro puede funcionar tan bien como filtrar las bank common spatial patterns (FBCSP), el método actual de última generación desarrollado específicamente para imágenes motoras. (Ang et al., 2008). Aunque el FBCSP está diseñado para utilizar modulaciones de potencia espectral, las features utilizadas por ConvNets no están fijadas a priori. Para aquellos interesados en aspectos detallados de implementación técnica (Schirrmeister, 2017) , proporciona una profunda comprensión de cómo los recientes desarrollos en la regularización y normalización pueden marcar una gran diferencia a la hora de entrenar tu modelo.
Figura 6: ConvNet, una arquitectura de deep learning basada en CNN para la decodificación de end-to-end de imágenes motoras. Los datos en crudo entran en la primera capa (la superior) y luego crean features de nivel superior que capturan los patrones cerebrales para distinguir entre las imágenes motoras de la mano izquierda/derecha y del pie. Imagen tomada de (Schirrmeister, 2017).
Los ejemplos anteriores muestran que las técnicas de deep learning están ahora presentes en todas las aplicaciones de decodificación EEG y representan el estado actual de la técnica. Todavía hay muchas preguntas abiertas, como qué modelos funcionan mejor, y si se necesitan modelos y algoritmos específicos para el EEG.
Para quienes estén interesados en los detalles técnicos de cómo se han utilizado las diferentes redes con el EEG, recomendamos consultar algunas reseñas muy completas (Roy, 2019; Craik, 2019) que proporcionan referencias de los trabajos apropiados. La mayoría de los resultados se han obtenido utilizando conjuntos de datos públicos. El código está disponible en los repositorios correspondientes. Véase, por ejemplo, the braindecod github para una completa decodificación de deep learning utilizando las redes de la CNN (Schirrmeister,2017).
Beware of the hype! El aumento del número de estudios que afirman obtener mejores resultados con el deep learning no ha estado exento de controversia. La reproducibilidad y, cuando sea posible, la comparación con líneas de base bien establecidas son una necesidad, y su falta debe ser tratada cuidadosamente al evaluar cualquier afirmación. Curiosamente, Roy (2019) señala que solo el 7% de los resultados reportados proporcionan tanto el software (19%) como los conjuntos de datos (54%) necesarios para evaluar y replicar el método. A veces hay razones delicadas para no proporcionar la fuente y los conjuntos de datos (como la privacidad en los registros médicos, la necesidad de explotar el conjunto de datos o el código para su propia investigación) antes de que se haga público. No obstante, hoy en día estas buenas prácticas son cada vez más comunes y, en algunos casos, se exige que se publiquen los datos. Lo cierto es que siempre serán un buen indicador de la calidad del trabajo y un buen punto de partida para sus propios proyectos.