scieee AI-readable full text Open interactive document viewer

Identificación biométrica basada en el electroencefalograma

González Gil, Victor

Abstract

Se pretende investigar si es posible establecer la identidad de una persona a partir de las características biofísicas de su electroencefalograma (EEG). El EEG es un registro no invasivo de las corrientes eléctricas generadas por el cerebro. Sus características (forma de onda, potencia y otras) dependen de la personalidad y el aprendizaje, por lo que potencialmente puede ser empleado para distinguir a un sujeto del resto. Estas características conformarán los llamados “vectores de características”. Estos serán introducidos como entrenamiento a una Máquina de Soporte Vectorial, que aprenderá del conjunto de datos. Esta se alimentará, posteriormente, con nuevos vectores de características y se determinará si es capaz de identificar correctamente de que sujeto se trata. Se realiza un estudio con diferentes sujetos y tipos de ondas cerebrales, calculando la tasa de éxito aproximada para cada uno de ellos. Debido a que el estudio ha sido realizado para una pequeña cantidad de individuos, las tasas de error y los resultados a los que se llega, no serán concluyentes. Pero sí demostrarán el potencial del electroencefalograma para establecer la identidad de una persona.

Full text

Equation Chapter 1 Section 1 Trabajo Fin de Grado Grado en Ingeniería de las Tecnologías de Telecomunicación IDENTIFICACIÓN BIOMÉTRICA BASADA EN EL ELECTROENCEFALOGRAMA Autor: Víctor González Gil Tutor: Rubén Martín Clemente Dep. Teoría de la Señal y Comunicaciones Escuela Técnica Superior de Ingeniería Universidad de Sevilla Sevilla, 2017 iii Proyecto Fin de Carrera Ingeniería de Telecomunicación IDENTIFICACIÓN BIOMÉTRICA BASADA EN EL ELECTROENCEFALOGRAMA Autor: Víctor González Gil Tutor: Rubén Martín Clemente Profesor titular Dep. de Teoría de la Señal y Comunicaciones Escuela Técnica Superior de Ingeniería Universidad de Sevilla Sevilla, 2017 v Proyecto Fin de Carrera: IDENTIFICACIÓN BIOMÉTRICA BASADA EN EL ELECTROENCEFALOGRAMA Autor: Víctor González Gil Tutor: Rubén Martín Clemente El tribunal nombrado para juzgar el Proyecto arriba indicado, compuesto por los siguientes miembros: Presidente: Vocales: Secretario: Acuerdan otorgarle la calificación de: Sevilla, 2017 El Secretario del Tribunal vii A mi familia A mis maestros ix Agradecimientos En primer lugar, agradecer a mis padres todo lo que han hecho por mi, y por su apoyo incondicional durante todos estos años. Además, me gustaría darle las gracias a todos los que me han acompañado desde que entre en la Escuela, con los que he pasado buenos y malos momentos. Para finalizar, agradecer a mi tutor y profesor Rubén Martín Clemente toda la ayuda recibida durante el transcurso de este proyecto. Víctor González Gil Sevilla, 2017 5.2 Demostración del principio 31 5.3 Resultados de la clasificación. Caso 1 36 5.3.1 Sujeto A 36 5.3.2 Sujeto B 41 5.3.3 Sujeto C 46 5.4 Resultados de la clasificación. Caso 2 51 5.4.1 Sujeto A 51 5.4.2 Sujeto B 56 5.4.3 Sujeto C 61 6 Conclusión 67 Referencias 69 Anexos 71 xvii ÍNDICE DE TABLAS Tabla 5-1 Base de datos. 31 Tabla 5-2 Tasas de acierto. Caso 1. Sujeto A. 36 Tabla 5-3 Tasas de acierto. Caso 1. Sujeto B. 41 Tabla 5-4 Tasas de acierto. Caso 1. Sujeto C. 46 Tabla 5-5 Tasas de acierto. Caso 2. Sujeto A. 51 Tabla 5-6 Tasas de acierto. Caso 2. Sujeto B. 56 Tabla 5-7 Tasas de acierto. Caso 2. Sujeto C 61 xix ÍNDICE DE FIGURAS Figura 2-1 Partes principales del cerebro 3 Figura 2-2 Lóbulos del cerebro 4 Figura 2-3 Colocación de los electrodos de contacto. 6 Figura 2-4 Colocación de los electrodos en casco de malla. 6 Figura 2-5 Colocación de los electrodos. 7 Figura 2-6 Montaje de un registro Monopolar. 8 Figura 2-7 Esquema del sistema Wilson. 8 Figura 2-8 Montaje de un registro Bipolar. 9 Figura 2-9 Esquema de un Montaje Longitudinal (A) y uno Transversal (B). 10 Figura 2-10 Tipos de Ondas Cerebrales. 10 Figura 3-1 Señal sin procesar del EEG de A-1 16 Figura 3-2 Señal, tras aplicar el algotirmo SSP , del EEG de A-1 17 Figura 3-3 Ejemplo de uso de la función designfilt para el diseño del filtro Alpha. 18 Figura 3-4 Señal de EEG tras el filtro Delta 19 Figura 3-5 Señal de EEG tras el filtro Theta 19 Figura 3-6 Señal de EEG tras el filtro Alpha 20 Figura 3-7 Señal de EEG tras el filtro Beta. 20 Figura 4-1 Funcionamiento SVM 23 Figura 4-2 Representación del hiperplano óptimo junto con sus vectores de soporte asociados 24 Figura 4-3 Separacion lineal: margen blando. 27 Figura 4-4 Clasificador no lineal 29 Figura 5-1 Representación de los vectores de características para el sujeto “A” correspondientes a la onda cerebral Delta. Para la representación se han tomado únicamente las características de los electrodos Fp1 y F7. 32 Figura 5-2 Representación de los vectores de características para el sujeto “B” correspondientes a la onda cerebral Alpha. Para la representación se han tomado únicamente las características de los electrodos Fp1 y F7. 33 Figura 5-3 Representación de los vectores de características para el sujeto “A-2” y “B-1” correspondientes a la onda cerebral Beta. Para la representación se han tomado únicamente las características de los electrodos Fp1 y F7. 34 Figura 5-4 Representación de los vectores de características para el sujeto “A-1” y “C-1” correspondientes a la onda cerebral Beta. Para la representación se han tomado únicamente las características de los electrodos Fp1 y F7. 35 Figura 5-5 Representación de los vectores de características para el sujeto “A-1” y “B-1” para la onda cerebral Beta, correspondientes a los sensores Fp1 y F7. 37 Figura 5-6 Representación de los vectores de características para el sujeto “A-1” y “B-2” para la onda cerebral Alpha, correspondientes a los sensores Fp1 y F7. 38 Figura 5-7 Representación de los vectores de características para el sujeto “A-1” y “C-1” para la onda cerebral Theta, correspondientes a los sensores Fp1 y F7. 39 Figura 5-8 Representación de los vectores de características para el sujeto “A-1” y “C-2” para la onda cerebral Delta, correspondientes a los sensores Fp1 y F7. 40 Figura 5-9 Representación de los vectores de características para el sujeto “B-1” y “A-1” para la onda cerebral Beta, correspondientes a los sensores Fp1 y F7. 42 Figura 5-10 Representación de los vectores de características para el sujeto “B-1” y “A-2” para la onda cerebral Alpha, correspondientes a los sensores Fp1 y F7. 43 Figura 5-11 Representación de los vectores de características para el sujeto “B-1” y “C-1” para la onda cerebral Theta, correspondientes a los sensores Fp1 y F7. 44 Figura 5-12 Representación de los vectores de características para el sujeto “B-1” y “C-2” para la onda cerebral Delta, correspondientes a los sensores Fp1 y F7. 45 Figura 5-13 Representación de los vectores de características para el sujeto “C-1” y “A-1” para la onda cerebral Beta, correspondientes a los sensores Fp1 y F7. 47 Figura 5-14 Representación de los vectores de características para el sujeto “C-1” y “A-2” para la onda cerebral Alpha, correspondientes a los sensores Fp1 y F7. 48 Figura 5-15 Representación de los vectores de características para el sujeto “C-1” y “B-1” para la onda cerebral Theta, correspondientes a los sensores Fp1 y F7. 49 Figura 5-16 Representación de los vectores de características para el sujeto “C-1” y “B-2” para la onda cerebral Delta, correspondientes a los sensores Fp1 y F7. 50 Figura 5-17 Representación de los vectores de características para el sujeto “A-1” y “B-1” para la onda cerebral Beta, correspondientes a los sensores Fp2 y F8. Los círculos verdes corresponden al vector de prueba de “A-2”. 52 Figura 5-18 Representación de los vectores de características para el sujeto “A-1” y “B-2” para la onda cerebral Alpha, correspondientes a los sensores Fp2 y AF4. Los círculos verdes corresponden al vector de prueba de “A2”. 53 Figura 5-19 Representación de los vectores de características para el sujeto “A-1” y “C-1” para la onda cerebral Theta, correspondientes a los sensores Fp1 y F7. Los círculos verdes corresponden al vector de prueba de “A2”. 54 Figura 5-20 Representación de los vectores de características para el sujeto “A-1” y “C-2” para la onda cerebral Delta, correspondientes a los sensores Fp1 y F7. Los círculos verdes corresponden al vector de prueba de “A2”. 55 Figura 5-21 Representación de los vectores de características para el sujeto “B-1” y “A-1” para la onda cerebral Beta, correspondientes a los sensores Fp2 y F8. Los círculos verdes corresponden al vector de prueba de “B-2”. 57 Figura 5-22 Representación de los vectores de características para el sujeto “B-1” y “A-2” para la onda cerebral Alpha, correspondientes a los sensores Fp2 y AF4. Los círculos verdes corresponden al vector de prueba de “B2”. 58 Figura 5-23 Representación de los vectores de características para el sujeto “B-1” y “C-1” para la onda cerebral Theta, correspondientes a los sensores Fp1 y F7. Los círculos verdes corresponden al vector de prueba de “B2”. 59 Figura 5-24 Representación de los vectores de características para el sujeto “B-1” y “C-2” para la onda cerebral Delta. , correspondientes a los sensores Fp1 y Fpz. Los círculos verdes corresponden al vector de prueba de “B2”. 60 Figura 5-25 Representación de los vectores de características para el sujeto “C-1” y “A-1” para la onda cerebral Beta, correspondientes a los sensores Fp1 y F7. Los círculos verdes corresponden al vector de prueba de “C-2”. 62 Figura 5-26 Representación de los vectores de características para el sujeto “C-1” y “A-2” para la onda cerebral xxi Alpha, correspondientes a los sensores Fp1 y F7. Los círculos verdes corresponden al vector de prueba de “C2”. 63 Figura 5-27 Representación de los vectores de características para el sujeto “C-1” y “B-1” para la onda cerebral Theta, correspondientes a los sensores Fp1 y F7. Los círculos verdes corresponden al vector de prueba de “C2”. 64 Figura 5-28 Representación de los vectores de características para el sujeto “C-1” y “B-2” para la onda cerebral Delta, correspondientes a los sensores Fp1 y F7. Los círculos verdes corresponden al vector de prueba de “C2”. 65 Notación SVM Máquina de Soporte Vectorial EEG Electroencefalograma var Varianza H0 Hiperplano óptimo L Multiplicadores de Lagrange ϵ Existe P Potencia ∂y ∂x Derivada parcial : Tal que < Menor o igual > Mayor o igual ⇔ Si y sólo si 1 1 INTRODUCCIÓN Existen diferentes formas de identificación biométrica que se pueden utilizar como métodos de identificación y autentificación de sujetos, pudiendo reemplazar a las contraseñas. Algunas de estas ya se encuentran en nuestra vida cotidiana, como es la lectura de huellas dactilares en los smartphones. También otras menos comunes como son el escáner de retina o el reconociemiento facial. En este trabajo se investigará la identificación biométrica de personas por su electroencefalograma. 1.1 Objetivos y alcance El objetivo de este trabajo será investigar si es posible establecer la identidad de un sujeto utilizando las características biofísicas de su electroencefalograma. Asi como realizar diferentes pruebas, siendo el propósito final establecer una base metodológica para futuras líneas de investigación. Se realizará el estudio con diferentes sujetos y tipos de ondas cerebrales, calculando la tasa de acierto aproximada para cada uno de ellos. Debido a que el estudio ha sido realizado para una pequeña cantidad de sujetos, las tasas de acierto y los resultados obtenidos no serán concluyentes. Pero si demostrarán el potencial del electroencefalograma para establecer la identidad de una persona. 1.2 Metodología Poder llegar a este objetivo implica el siguiente programa de tareas:  Revisión de todos los contenidos implicados en este estudio. Como es la electroencefalografía, las máquinas de soporte vectorial y el análisis de los resultados.  El pre-procesado de los EEGs, asi como la extracción de características de los mismos. Con las que se llevará a cabo el objetivo de este trabajo, introduciéndolas en la máquina de soporte vectorial.  Análisis de los resultados en los que se comparará la tasa de acierto en función de proceso utilizado. 1.3 Estructura de la memoria Para explicar el desarrollo de este trabajo se ha decidido utilizer la estructura organizada por capitulos que se describe a continuación:  Capitulo 2: “Electroencefalografía”. Se lleva a cabo una explicación de los conocimientos básicos relacionados con la encefalografía. Como es la anatomía del encefalo o la captacion de los EEGs.  Capitulo 3: “Pre-procesado y extracción de caracteristicas de los EEGs”. En este capitulo se describen las diferentes etapas que se llevan a cabo para el procesamiento de las señales EEG y la extracción de caracteristicas que serán usadas en la máquina de soporte vectorial.  Capitulo 4: “Clasificación”. Se exponen los conceptos básicos para poder entender el funcionamiento de las maquinas de soporte vectorial (SVM). Electroencefalografía 8 Figura 2-6 Montaje de un registro Monopolar. Teóricamente este electrodo debe estar situado a potencial cero, aunque ésto en la práctica es muy difícil de conseguir. Por eso se emplean referencias como el uso de electrodos en el lóbulo de la oreja o en el mentón. Con ésto, solo se podría registrar la actividad de un electrodo, ya que todos los demás estarían cortocircuitados entre sí. Para poder solucionar este problema, la interconexión entre todos se realiza por medio de resistencias (entre 1 y 1.5 Mohmios). Este es el llamado sistema Wilson y con él se pueden tomar tantos pares referencial-activo como se desee. Figura 2-7 Esquema del sistema Wilson. 9 IDENTIFICACIÓN BIOMÉTRICA BASADA EN EL ELECTROENCEFALOGRAMA En los Registros Bipolares se toman parejas de electrodos, y se registran las diferencias de tensión entre cada par de puntos. Los dos electrodos de cada pareja son activos. Figura 2-8 Montaje de un registro Bipolar. Utilizando este método es posible realizar un número enorme de registros bipolares diferentes, tantos como parejas diferentes de electrodo, tomadas en grupos de 8, de 12, de 16 ... (según el número de canales disponibles para registro simultáneo). Hay muchas combinaciones que no ofrecerían información importante, por esta razón es preciso seleccionar, de entre todas las posibles, las combinaciones más interesantes. Cada una de las combinaciones seleccionadas se llama un Montaje. Distinguimos entre dos tipos de Montajes:  Montajes a Largas Distancias: cuando se registra entre electrodos no contiguos.  Montajes a Distancias Cortas: cuando se hacen registros entre electrodos vecinos. Por otra parte, los montajes también han sido clasificados por la Federación Internacional de EEG y Neurofisiologia en:  En Montajes Longitudinales: se registra la actividad de pares de electrodos dispuestos en sentido anteroposterior de cada mitad del cráneo.  En Montajes Transversales: se realizan registros de pares de electrodos dispuestos transversalmente según los planos sagitales anterior, medio o posterior. Electroencefalografía 10 Figura 2-9 Esquema de un Montaje Longitudinal (A) y uno Transversal (B). 2.5. Las ondas cerebrales Nuestro cerebro produce impulsos eléctricos que viajan a través de nuestras neuronas. Estos impulsos eléctricos producen ritmos que son conocidos como ondas cerebrales. Sabemos que los diferentes patrones de ondas cerebrales se relacionan con diferentes estados de consciencia, tales como concentración intensa, estado de alerta (despierto), sueño profundo, sueños vívidos, somnolencia, relajación, hipnosis, estados alterados de conciencia, etc. Existen cuatro tipos principales de ondas cerebrales: [4] Figura 2-10 Tipos de Ondas Cerebrales. 11 IDENTIFICACIÓN BIOMÉTRICA BASADA EN EL ELECTROENCEFALOGRAMA  Ondas Beta: Se producen cuando el cerebro está despierto e implicado en actividades mentales. Son ondas amplias y las de mayor velocidad de transmisión de las cuatro. Denotan una actividad mental intensa.  Ondas Alfa: Alfa representa un estado de escasa actividad cerebral y relajación. Estas ondas son más lentas y de mayor amplitud que las Beta.  Ondas Theta: Son ondas de mayor amplitud y menor frecuencia. Se alcanzan bajo un estado de calma profunda.  Ondas Delta: Son las ondas de mayor amplitud y menor frecuencia. Nunca llegan a cero, pues eso significaría la muerte cerebral. Se generan ante un estado de ‘sueño profundo’. Cuando nos vamos a dormir, las ondas cerebrales van pasando sucesivamente de beta a alfa, theta y finalmente, delta. Durante el sueño se producen ciclos que duran unos 90 minutos. 2.6. Potenciales evocados Los potenciales evocados (PEs) son indicadores de procesos o subprocesos cognitivos o perceptivos. Coles y Rugg (1995) definen los PEs como variaciones en el voltaje del EEG provocadas por sucesos sensoriales, motores o cognitivos. Estos cambios son capaces de informar sobre los procesos cognitivos asociados a diferentes sucesos. Pero para que estos potenciales se manifiesten en una señal de EEG, el sujeto que produce la señal debe de estar realizando una tarea que los evoque. Una de las principales diferencias entre un PE y un EEG, es su voltaje. La amplitud de un PE se encuentre entre 0.5µV y 20µV, mientras que la de un EEG es de 50µV a 10mV. Esta diferencia de amplitud hace que un potencial evocado sea imperceptible dentro de un EEG. Para poder solucionar esto, calculamos un potencial promedio. La actividad que se encuentre al margen de dicha excitación aparecerá de forma aleatoria, mientras que las de un PE será constante. 2.6.1. Características de los PEs Un potencial evocado se define como una combinación de su polaridad, latencia, sensibilidad y topografía.  Respecto a la polaridad, los PEs pueden ser positivos o negativos.  La latencia suele medirse en milisegundos desde la presentación del estímulo hasta la aparición del pico o del valle, siendo este el punto de máxima amplitud.  La topografía es la distribución sobre el cuero cabelludo.  Como última característica tenemos la sensibilidad respecto a una determinada manipulación experimental. Es difícil de establecer, pues existen componentes bastante específicos.  Potencial de disparidad (MMN): Se obtiene al presentar un estímulo discrepante dentro de una secuencia de estímulos auditivos.  N400: Onda negativa que tiene topografía centroparietal y una latencia de 400ms. Electroencefalografía 12 2.6.2. Clasificación de los PEs Los potenciales evocados se agrupan en dos clases: los que son previos a la ocurrencia del suceso y los posteriores a esta. A continuación, se describen algunos de ellos.  LPR: Se trata de un potencial negativo que se produce cuando se prepara paraa realizar un movimiento con una mano. Presenta la máxima amplitud en las localizaciones precentrales.  CNV: Es una onda negativa lenta que se produce cuando se presentan dos estímulos separados por un intervalo de tiempo. Alcanza su máxima amplitud cuanto mas cerca se esta del segundo estímulo.  Componentes sensoriales: Son respuestas del sistema nervioso a estímulos externos.  N100: Onda negativa que aparece a los 100ms después de un estímulo.  P300, P3, P3a y P3b: Se trata de una serie de picos positivos que aparecen ante estímulos inesperados que son relevantes para el sujeto. La amplitud del mismo se ve modulada por el grado de expectación que el sujeto tiene del estímulo. 22 3 PRE-PROCESADO Y EXTRACCIÓN DE CARACTERÍSTICAS DE LOS EEG 3.1 Introducción En este capitulo se describirá el método llevado a cabo para la extracción de diferentes características de cada uno de los EEG. En primer lugar, se describirá el método que se ha llevado a cabo para la captación de los EEG. A continuación, se especificarán las diferentes operaciones a realizar en las señales con el fin de adecuarlas para su posterior estudio. Posteriormente se extraerán ciertos parámetros de interes de las señales pre-procesadas. 3.2 Captación de los EEG Para la captación del EEGs se ha sometido a los sujetos al paradigma de “oddball”. Este proceso consiste en una secuencia aleatoria de dos estímulos diferentes, uno con mayor probabilidad que el otro. El sujeto tendrá que discriminar el estímulo menos frecuente pulsando un botón de respuesta. Este estímulo genera el conocido potencial evocado “P300”. Es un potencial positivo de mayor amplitud que se genera sobre los electrodos parietales, que se manifiesta en torno a los 300ms. 3.3 Pre-procesado Una vez adquiridas las señales, es necesario adaptarlas para que puedan proporcionar informacion útil. Los EEG suelen contener una gran cantidad de ruido y algunos artefactos con una amplitud tan grande, que no permite analizar correctamente la señal. Para poder realizar este pre-procesado, utilizaremos MATLAB y un programa llamado Brainstorm, que utilizaremos para observar y aplicar el método SSP a las diferentes grabaciones. 3.3.1 Análisis SSP El primer paso que se va a realizar en el pre-procesado, es la aplicación del método SSP. Utilizando la herramienta Brainstorm, vamos a observar como la señal EEG tiene una serie de picos de gran amplitud en comparación con el resto de la señal. Estos picos corresponden a los llamados “blinks” (parpadeo) y nuestro primer objetivo será la detección y eliminación de los mismos. Para ello, Brainstorm cuenta con funciones para la detección de eventos entre los que están los blinks. Utilizaremos el canal Veog como referencia para este proceso. Siendo este, un sensor colocado próximo al ojo y cuya función es la de detectar los parpadeos. Una vez se han detectado los eventos, procedemos a aplicar el método SSP, consiguiendo en gran medida la supresión de ruido y artefactos no deseados. Consiguiendo así tener la señal perteciente unicamente a los procesos cognitivos. Pre-procesado y extracción de características de los EEG 14 3.3.1.1 Fundamento La proyección de la señal desde el espacio (SSP) es un método para el rechazo de perturbaciones externas. A diferencia de muchos otros enfoques sobre la cancelación de ruido, SSP no requiere sensores adicionales de referencia para registrar las zonas de trastornos. En su lugar, SSP se basa en el hecho de que las distribuciones de campos magnéticos generados por las fuentes en el cerebro, tienen distribuciones espaciales suficientemente diferentes de las generadas por fuentes de ruido externo. Además, se asume implícitamente que el espacio lineal abarcado por los patrones de ruido externos significativos tiene una dimensión mínima. [1] Sin pérdida de generalidad, siempre se puede descomponer cualquier medición de un canal b(t) en sus componentes de señal y ruido como: b(t) = bs (t) + bn (t) (3-1) Además, si sabemos que bn (t) está bien caracterizado por unos patrones de campo b1 ... bm, podemos expresar la perturbación como bn (t) = Ucn (t) + e (t) (3-2) donde las columnas de U constituyen una base ortonormal para b1...bm, cn (t) es un m-vector columna componente, y el término de error e (t) es pequeño y no presenta ningún distribuciones espaciales coherentes a lo largo del tiempo, es decir, Ce = E{eeT}= I. Posteriormente, llamaremos al espacio columna de U, el subespacio de ruido. La idea básica de la SSP es que podemos encontrar un pequeño conjunto de bases b1 ... bm tal que las condiciones descritas anteriormente son satisfechas. Ahora podemos construir el operador de complemento ortogonal: 𝑃⊥ = I − U𝑈𝑇 (3-3) y aplicarlo a b (t), produciendo: 𝑏 (𝑡) ≈ 𝑃⊥ 𝑏𝑠 (𝑡) (3-4) desde P⊥ bn (t) = P ⊥ Uc n (t) ≈ 0. El operador P⊥ se denomina “operador de proyección en el espacio de señal” y generalmente proporciona un considerable rechazo de ruido en la supresión de perturbaciones externas por un factor de 10 o más. La eficacia de la SSP depende de dos factores: 15 IDENTIFICACIÓN BIOMÉTRICA BASADA EN EL ELECTROENCEFALOGRAMA 1. La base establecida b 1 ... b m debe ser capaz de caracterizar los patrones de campos de perturbación por completo. 2. Los ángulos entre el espacio subespacio de ruido abarcado por b1 ... bm y los vectores de señal bs(t) deben ser lo más cerca de pi / 2 como sea posible. Si el primer requisito no se cumple, algo de ruido escapará porque P⊥ bn (t) ≠ 0. Si cualquiera de los vectores de las señales del cerebro bs (t) está cerca del subespacio de ruido (no sólo el ruido sino también la señal), será atenuado por la aplicación de P⊥. Puesto que la proyección en el espacio de señal modifica los vectores que se originan en el cerebro, es necesario aplicar la proyección a la solución hacia adelante en el curso de los cálculos inversos. La lógica de la computación SSP es el siguiente: 1. Tomar una pequeña ventana de tiempo alrededor de cada evento para capturar el efecto completo del artefacto. La ventana de tiempo predeterminado es [-200, +200] ms para parpadeo de los ojos, y [-40, +40] ms para los latidos del corazón. 2. Filtrar las señales en una banda de frecuencia de interés, en el que el artefacto es la más visible (en la práctica, extraemos un segmento de tiempo suficiente para que pueda ser filtrada apropiadamente, y cortar después de la filtración). 3. Concatenar todos estos bloques de tiempo en una matriz grande A = [ b1, ..., bm] 4. Calcular la descomposición de valor singular de esta matriz A: [U, S, V] = svd (A, 'econ') 5. Los vectores singulares Ui junto con los más altos valores singulares Si son una base ortonormal del subespacio artefacto que queremos restar de las grabaciones. El software selecciona por defecto el vector con el mayor valor propio. Entonces es posible redefinir de forma interactiva los componentes seleccionados. 6. Calcular el operador de proyección: 𝑃⊥𝑖 = I − 𝑈𝑖 𝑈𝑖𝑇 (3-5) 7. Aplicar esta proyección sobre grabaciones MEG o EEG F: F = P⊥i F F = 𝑃⊥iF (3-6) 8. El proceso tiene que ser repetido por separado varias veces para cada tipo de sensor y cada artefacto. Pre-procesado y extracción de características de los EEG 16 3.3.1.2 Ejemplo Práctico El algoritmo SSP se le aplicará a las señales EEG utilizando las funciones de la herramienta Brainstorm, que pueden ser consultadas en el anexo de este trabajo. En las figuras se pueden ver las señales, correspondientes a uno de los registros del sujeto A, antes y después de aplicarles el algoritmo SSP. Las señales Veog+, Veog-, Heog+ y Heogcorresponden a unos electrodos situados alrededor de los ojos, cuya función es detectar los parpadeos que realiza el sujeto durante el registro. Observamos en la figura 3-1 los picos en la señal, pertenecientes a los blinks: Figura 3-1 Señal sin procesar del EEG de A-1 17 IDENTIFICACIÓN BIOMÉTRICA BASADA EN EL ELECTROENCEFALOGRAMA Tras aplicar la detección de blinks (parpadeos) y el algoritmo SSP: Figura 3-2 Señal, tras aplicar el algotirmo SSP , del EEG de A-1 Clasificación 24 4.1.1 Descripción del clasificador lineal óptimo Se basa en la selección del hiperplano, Ho, que actúa como frontera de separación entre las clases que se hayan considerado, maximizando la distancia de separación entre los vectores transformados. Esta distancia de separación se obtiene mediante la construcción de dos hiperplanos paralelos al anterior, siendo este, el de separación óptima. Estos dos hiperplanos paralelos deben contener al menos a uno de los vectores transformados, denominado vector de soporte. Cuanto mayor sea la distancia mejor será la capacidad de clasificación del modelo. Se caracterizan por su buena capacidad de generalización, estando esta directamente relacionada con la distancia entre los dos hiperplanos paralelos. Asi como por minimizar el efecto de sobre-aprendizaje del conjunto de entrenamiento, del que son susceptibles otros métodos de aprendizaje como los clasificadores basados en redes neuronales. Figura 4-2 Representación del hiperplano óptimo junto con sus vectores de soporte asociados 25 IDENTIFICACIÓN BIOMÉTRICA BASADA EN EL ELECTROENCEFALOGRAMA 4.1.2 Descripción del problema de optimización lineal Dado un conjunto de datos o vectores de entrada 𝑥 ∈ℝ𝑛 de las diferentes clases 𝑦∈ℕ, se desea encontrar el valor de los parámetros del hiperplano: {w,b}, que da lugar a la mayor separación del hiperplano a dichas clases. Matemáticamente se obtiene la expresión recogida en la ecuación 4-1. 𝑤𝑥𝑖+ 𝑏 ≶ 𝑦𝑖 ∕ {𝑦𝑖=1 ∀𝑥𝑖∈𝐶𝑖=𝐴 𝑦𝑖=−1 ∀𝑥𝑖∈𝐶𝑖=𝐵 ⟹ ⇒∃ (𝑤∗,𝑏∗) ∕ 𝑤∗𝑥+ 𝑏∗=0 𝐻𝑖𝑝𝑒𝑟𝑝𝑙𝑎𝑛𝑜 ó𝑝𝑡𝑖𝑚𝑜 (4-1) Para el desarrollo formal solo se usan dos clases: {A, B}, pero las conclusiones son extrapolables para el caso de un mayor número de clases. El mejor hiperplano, para la clasificación de los datos de prueba, será aquel cuya distancia de separación a los vectores vecinos de las dos clases sea máxima. Al hiperplano, H0, así obtenido se le denomina hiperplano de separación óptima, para el que el margen es máximo. Este margen se obtiene como la distancia entre los dos hiperplanos paralelos, que contienen al menos un vector de cada clase, denominados vectores de soporte. La expression matemática de estos dos hiperplanos paralelos H1 y H2 se muestra a continuación: 𝐻1:𝑤𝑥−𝑏 = 1 𝐻2:𝑤𝑥−𝑏 =−1 (4-2) (4-3) Si los vectores de entrada son linealmente separables, es posible elegir dos hiperplanos entre los que no haya datos y maximicen la distancia entre ellos. Geométricamente el vector w es perpendicular al hiperplano que define, y la distancia al origen del sistema de coordenadas viene dada por la siguiente ecuación. 𝑑 = 𝑏 |𝑤| (4-4) Utilizando las ecuaciones 4-2 y 4-3 se obtiene que la distancia entre H1 y H2 es: 𝑑 = 2 |𝑤| (4-5) Por lo que el objetivo de maximizar la distancia de separación entre ambos hiperplanos es equivalente a minimizar |𝑤|. A la vez que la solución propuesta debe evitar que haya vectores de entrada dentro de la región entre ambos hiperplanos. Clasificación 26 𝑦𝑖(𝑤𝑥𝑖−𝑏)≥1, 1≤𝑖 ≤𝑛 (4-6) Todo lo anterior da lugar a la expresión del siguiente problema de optimización: 𝑀𝑖𝑛𝑖𝑚𝑖𝑧𝑎𝑟 Ω(𝑤)=1 2|𝑤|2 𝐶𝑜𝑛𝑠𝑖𝑑𝑒𝑟𝑎𝑛𝑑𝑜 𝑙𝑎 𝑟𝑒𝑠𝑡𝑟𝑖𝑐𝑐𝑖ó𝑛 𝑦𝑖(𝑤𝑥𝑖−𝑏)≥1, 1≤𝑖 ≤𝑛 (4-7) (4-8) Para su resolución, se utiliza el método de multiplicadores de Lagrange, dando lugar a la siguiente función lagrangiana: 𝐿(𝑤,𝑏,𝛼)=1 2𝑤𝑇𝑤−∑𝛼𝑖[𝑦𝑖(𝑤𝑇𝑥𝑖+𝑏)−1] 𝑁 𝑖=1 (4-9) Cuya resolución en el punto óptimo da lugar al sistema de ecuaciones 4-10 y 4-11, resoluble si los datos son linealmente separables, asegurando que el mínimo encontrado es un mínimo global. 𝛿𝐿 𝛿𝑤 =0 ⟶ 𝑤 =∑𝛼𝑖 𝑁 𝑖=1 𝑦𝑖𝑥𝑖 𝛿𝐿 𝛿𝑏 =0 ⟶ 𝑤 =∑𝛼𝑖 𝑁 𝑖=1 𝑦𝑖=0 (4-10) (4-11) Estas ecuaciones dan lugar a: 𝑤𝑇𝑤 =𝑤𝑇∑𝛼𝑖 𝑁 𝑖=1 𝑦𝑖𝑥𝑖=∑∑𝛼𝑖 𝑁 𝑗=1 𝛼𝑗𝑦𝑖𝑦𝑗𝑥𝑖𝑥𝑗 𝑁 𝑖=1 (4-12) Que sustituyendo en la ecuación 4-9 hacen que la función a maximizar Q(𝛼) sea: 𝐽(𝑤,𝑏,𝛼)=𝑄(𝛼)= ∑𝛼𝑖−1 2 𝑁 𝑖=1 ∑∑𝛼𝑖 𝑁 𝑗=1 𝛼𝑗𝑦𝑖𝑦𝑗𝑥𝑖𝑥𝑗 𝑁 𝑖=1 (4-13) Estando sujeta a las restricciones: 27 IDENTIFICACIÓN BIOMÉTRICA BASADA EN EL ELECTROENCEFALOGRAMA ∑𝛼𝑖 𝑁 𝑖=1 𝑦𝑖=0 𝛼𝑖≥0 𝑖 =1,…,𝑁 (4-14) Donde se puede demostrar que sólo los 𝛼𝑖 correspondientes a vectores soporte son distintos de cero. De todo lo cual se deduce qie el hiperplano de separación óptima, H0, solo depende de los vectores de soporte provenientes del conjunto de entrenamiento. Una ve hayados los valores 𝛼𝑖∗ se obtienen los coeficientes del hiperplano: 𝛼𝑖∗ ⇒ 𝑤∗= ∑𝛼𝑖∗ 𝑁 𝑖=1 𝑦𝑖𝑥𝑖⟶ 𝑏∗=1−𝑤∗𝑇𝑥𝑠 (4-15) 4.1.3 Margen blando En el análisis anterior se considera que en la región comprendida entre los hiperplanos paralelos al óptimo no va a haber ningún vector, ni que estos pudieran ser erróneamente clasificados. Esta consideración es muy difícil de encontrar en caso práctico real. Por eso se propuso una nueva idea de margen máximo, a la que se le denomina “Margen blando”. Para este se selecciona el hiperplano que separando los vectores de entrada tan limpiamente como sea posible, permite errores de clasificación a la vez que maximiza la distancia al resto de los datos que han sido identificados correctamente. Figura 4-3 Separacion lineal: margen blando. Clasificación 28 Esta nueva variante introduce las denominadas “variables de holgura”: hi, i = {1, …, N}, que permiten ponderar el grado de desclasificación de cada vector, tal que: 𝑦𝑖(𝑤𝑇𝑥𝑖+𝑏)≥1−ℎ𝑖, 𝑖 =1,…,𝑁 (4-16) En donde: ℎ𝑖≥0 ∀𝑖 ⇒ { 0≤ ℎ𝑖 ≤1 → 𝑐𝑙𝑎𝑠𝑖𝑓𝑖𝑐𝑎𝑐𝑖ó𝑛 𝑐𝑜𝑟𝑟𝑒𝑐𝑡𝑎 ℎ𝑖>1 →𝑐𝑙𝑎𝑠𝑖𝑓𝑖𝑐𝑎𝑐𝑖ó𝑛 𝑖𝑛𝑐𝑜𝑟𝑟𝑒𝑐𝑡𝑎 (4-17) Originando que la nueva función objetivo, Ω(𝑤,ℎ), contenga un término que penaliza a la variables de holgura, convirtiendose la optimización en un balance entre el mayor margen y el error de penalización. En caso de que la función de penalización sea lineal, la función objetivo 4-7 se tranforma en: 𝑀𝑖𝑛𝑖𝑚𝑖𝑧𝑎𝑟 Ω(𝑤,ℎ)=1 2|𝑤|2+𝐶∑ℎ𝑖 𝑁 𝑖=1 𝐶𝑜𝑛𝑠𝑖𝑑𝑒𝑟𝑎𝑛𝑑𝑜 𝑙𝑎 𝑟𝑒𝑠𝑡𝑟𝑖𝑐𝑐𝑖ó𝑛 𝑦𝑖(𝑤𝑥𝑖−𝑏)≥1, 1≤𝑖 ≤𝑛 (4-18) (4-19) Siguiendo un proceso de resolución semejante al seguido con anterioridad, da lugar a que en el problema dual las variables de ajuste desaparezcan, manteniéndose sólo la constante C como restricción adicional en los multiplicadores de Lagrange, la cual controla el compromiso entre complejidad del modelo y el número de datos no separables, esta constante se especifica empíricamente mediante el procedimiento de la validación cruzada. [3] 4.1.4 Clasificador no lineal Hay casos en los que los conjuntos de datos no son separables linealmente, por eso se propuso un nuevo tipo de clasificador, que tras la transformación a través de una función no lineal Φ(.) de los conjuntos de datos originales a conjuntos de datos en espacios de características original, y separables linealmente, emplearan el algoritmo de determinación de hiperplano óptimo, H0, como método de separación de dichos conjuntos. [3] El algoritmo resultante es formalmente similar al descrito con anterioridad, con la diferencia de que el producto escalar de vectores original es reemplazado por una función de kernel K no lineal. El procedimiento aplica una transformación no lineal, Φ(.), a los datos de entrada convirtiéndolos en un espacio de dimensión superior, en el cual es posible realizar una separación lineal de los datos tranformados. 29 IDENTIFICACIÓN BIOMÉTRICA BASADA EN EL ELECTROENCEFALOGRAMA Figura 4-4 Clasificador no lineal Por lo que, teniendo en cuenta el desarrollo del procedimiento de optimización lineal anterior y la consideración realizada para margen blando, la función objetivo a minimizar, Ω(𝑤,ℎ), es equivalente a la considerada en la ecuación 4-18: Ω(𝑤,ℎ)=1 2𝑤𝑇𝑤+𝐶∑ℎ𝑖 𝑁 𝑖=1 (4-20) Teniendo en cuenta que en las restricciones equivalentes a la ecuación 4-19, la función de transformación Φ(𝑥) sustituye al vector de datos x, se da lugar a: 𝑦𝑖(𝑤𝑇Φ(𝑥𝑖) + 𝑏)≥1−ℎ𝑖, 𝑖 =1,…,𝑁 ℎ𝑖≥0 ∀𝑖 (4-21) Obteniéndose los parámetros del hiperplano {w, b} en el nuevo espacio de características ℝ𝑚. Hay que tener en cuenta que la tranformación explícita, Φ(𝑥), es costosa en caso de que m sea elevado, por lo que se buscan alternativas para no tener que realizar la transformación explícita de cada dato, dando lugar a las denominadas funciones Kernel K. Clasificación 30 4.1.4.1 Función Kernel K Teniendo en cuenta que en la ecuación 4-13 de la formulación dual, aparece solamente el producto escalar de los datos, y que su equivalente para el caso de clasificación no lineal sería la siguiente ecuación: 𝑄(𝛼)= ∑𝛼𝑖−1 2 𝑁 𝑖=1 ∑∑𝛼𝑖 𝑁 𝑗=1 𝛼𝑗𝑦𝑖𝑦𝑗Φ(𝑥𝑖) 𝑇 Φ(𝑥𝑗) 𝑁 𝑖=1 (4-22) El objetivo será encontrar una función en la que el productor escalar de las transformaciones de cada dato, Φ(𝑥), sea igual a la tranformación del producto escalar de los datos, lo cual origina que no sea preciso transformar explícitamente los datos de entrada para resolver el problema de optimización o entrenamiento de las SVMs, ni que sea preciso el conocimiento exacto de la expression de la función Φ(𝑥). 4.2 Implementación en el trabajo Para este estudio se ha utilizado el toolbox LIBSVM (A Library for Support Vector Machines) de MATLAB. Es un software integrado para realizar la clasificación, regresión y la estimación de distribuciones mediante SVM. Se han utilizado los EEGs de tres sujetos distintos, aplicándoles el pre-procesado explicado en el capítulo anterior. Una vez extraidas las características que se van a utilizar, se han generado vectores con el formato con el que trabaja LIBSVM. Estos vectores serán los utilizados para el entrenamiento y las posteriores pruebas, para obtener un conjunto de tasas de éxito en la identificación de un sujeto por su EEG. 31 5 RESULTADOS En este capítulo se pretenden exponer los diferentes resultados extraídos de la Maquina de Soporte Vectorial. En primer lugar, se demostrará el principio por el cual es posible llegar a los resultados que se van a estudiar en este TFG. A continuación, se llevarán a cabo una serie de pruebas en las que analizaremos diferentes posiblidades de clasificación e identificación de los sujetos. Se realizarán pruebas para distintos sensores y ondas cerebrales, obteniendo la tasa de acierto de cada uno de ellos. Se hará uso de los métodos expuestos en los capítulos anteriores (SSP, filtrado, extracción de características) para obtener los distintos resultados de interes del estudio. 5.1 Base de datos Para este estudio se ha utilizado una base de datos que consta de tres sujetos (A, B, C), donde a cada uno se le han registrado dos EEGs. En la siguiente tabla se muestra el nombre con el que se ha trabajado con cada uno de ellos, con la intención de facilitar su mención en los apartados posteriores. SUJETO A SUJETO B SUJETO C A-1 (308.8 seg) B-1 (298.8 seg) C-1 (314 seg) A-2 (306.4 seg) B-2 (299.2 seg) C-2 (312.5 seg) Tabla 5-1 Base de datos. 5.2 Demostración del principio El primer objetivo de este capítulo será demostrar que, en la clasificación de los vectores de características de un mismo sujeto, no será posible una separación viable de los mismos. Mientras que, para sujetos diferentes, se podrá obtener una separación que permita obtener resultados positivos en la clasificación de los vectores de prueba. El primer experimento se ha llevado a cabo como sigue: para cada individuo hemos dividido sus registros en bloques de un segundo y extraido las características (potencia por bandas) del mismo. Después hemos entrenado una red SVM con los bloques de los dos registros del sujeto, aprendiendo la red a diferenciar entre ambos, si es posible. Se pretende comprobar si la red SVM es capaz o no de apreciar las diferencias. RESULTADOS 32  La siguiente figura muestra los vectores de características de dos registros de un mismo individuo. Se utilizarán los vectores de características de los dos EEGs correspondientes al sujeto “A” filtrados para la onda cerebral Delta. Se observa en la figura que las características se superponen, siendo por tanto imposible discriminarlas. Este hecho se interpreta como que no existen diferencias significativas para una misma persona entre diferentes sesiones. Podemos observarlo en la figura 5-1. Figura 5-1 Representación de los vectores de características para el sujeto “A” correspondientes a la onda cerebral Delta. Para la representación se han tomado únicamente las características de los electrodos Fp1 y F7. 33 IDENTIFICACIÓN BIOMÉTRICA BASADA EN EL ELECTROENCEFALOGRAMA  La siguiente figura, al igual que la anterior, muestra los vectores de características de dos registros de un mismo individuo. Se utilizarán los vectores de características de los dos EEGs correspondientes al sujeto “B” filtrados para la onda cerebral Alpha. Se observa en la figura que las características se superponen, siendo por tanto imposible discriminarlas. Este hecho se interpreta como que no existen diferencias significativas para una misma persona entre diferentes sesiones. Podemos observarlo en la figura 5-2. Figura 5-2 Representación de los vectores de características para el sujeto “B” correspondientes a la onda cerebral Alpha. Para la representación se han tomado únicamente las características de los electrodos Fp1 y F7. RESULTADOS 40 Figura 5-8 Representación de los vectores de características para el sujeto “A-1” y “C-2” para la onda cerebral Delta, correspondientes a los sensores Fp1 y F7. Se observa de qué manera para el sujeto C-2 la potencia se distribuye principalmente sobre el sensor Fp1 (Eje de abscisas), mientras que para la persona A-1 es sobre el sensor F7 (Eje de ordenadas). Esta diferencia permitirá una amplia separación entre ambos sujetos, permitiendo que la SVM sea capaz de clasificar a los dos individuos y obteniendo una óptima tasa de acierto en la identificación del sujeto A-2. 41 IDENTIFICACIÓN BIOMÉTRICA BASADA EN EL ELECTROENCEFALOGRAMA 5.3.2 Sujeto B Se realizan diferentes pruebas en las que se calculará la tasa de acierto en la identificacion del sujeto “B”. Se usará como vectores de entrenamiento los correspondientes a “B-1” y los correspondientes a los otros dos individuos. Para realizar la prueba de identificación se utilizarán los vectores de características de “B-2”. B-1 A-1 A-2 C-1 C-2 BETA 72% 62% 100% 100% ALPHA 66% 39% 97% 99% THETA 68% 81% 98% 99% DELTA 61% 54% 20% 9% Tabla 5-3 Tasas de acierto. Caso 1. Sujeto B. En las siguientes figuras van a representarse cómo estarían situados los vectores de características para algunos de los casos anteriores, a modo de demostración de los resultados expuestos en la tabla anterior. RESULTADOS 42 Figura 5-9 Representación de los vectores de características para el sujeto “B-1” y “A-1” para la onda cerebral Beta, correspondientes a los sensores Fp1 y F7. Se observa cómo para el sensor Fp1 (Eje de abscisas), la potencia del sujeto B-1 es mayor que para A1. Siendo, para el sensor F7 (Eje de ordenadas), aproximadente la misma para ambos sujetos. Por tanto, el sensor Fp1 será, en este caso, el que produce la separación entre ambos sujetos. Permitiendo que la SVM sea capaz de clasificar a los dos individuos y obteniendo una buena tasa de acierto en la identificación del sujeto B-2. 43 IDENTIFICACIÓN BIOMÉTRICA BASADA EN EL ELECTROENCEFALOGRAMA Figura 5-10 Representación de los vectores de características para el sujeto “B-1” y “A-2” para la onda cerebral Alpha, correspondientes a los sensores Fp1 y F7. Para este caso, la potencia de ambos sujetos en estos dos sensores es muy parecida. Es decir, que ninguno de los dos sensores será discriminatorio. Esto hará que a la SVM no lo sea posible hacer una correcta clasificación del vector de prueba. Esto se ve reflejado en la baja tasa de acierto. RESULTADOS 44 Figura 5-11 Representación de los vectores de características para el sujeto “B-1” y “C-1” para la onda cerebral Theta, correspondientes a los sensores Fp1 y F7. Se observa de qué manera para el sujeto C-1 la potencia se distribuye principalmente sobre el sensor Fp1 (Eje de abscisas), mientras que para la persona B-1 es sobre el sensor F7(Eje de ordenadas). Esta diferencia permitirá una amplia separación entre ambos sujetos, por lo que la SVM será capaz de clasificar a los dos individuos obteniendo una óptima tasa de acierto en la identificación del sujeto B2. 45 IDENTIFICACIÓN BIOMÉTRICA BASADA EN EL ELECTROENCEFALOGRAMA Figura 5-12 Representación de los vectores de características para el sujeto “B-1” y “C-2” para la onda cerebral Delta, correspondientes a los sensores Fp1 y F7. Para esta onda cerebral, ninguno de los dos sensores registra valores discriminatorios para estos dos EEGs. Los dos sujetos se solapan en la zona con mayor densidad de puntos. Esto hará que a la SVM no lo sea posible hacer una correcta clasificación del vector de prueba. Esto se ve reflejado en la baja tasa de acierto. RESULTADOS 46 5.3.3 Sujeto C Se realizan diferentes pruebas en las que se calculará la tasa de acierto en la identificacion del sujeto “C”. Se usará como vectores de entrenamiento los correspondientes a “C-1” y los correspondientes a los otros dos individuos. Para realizar la prueba de identificación se utilizarán los vectores de características de “C-2”. C-1 A-1 A-2 B-1 B-2 BETA 100% 100% 100% 100% ALPHA 99% 100% 97% 98% THETA 99% 99% 100% 99% DELTA 93% 90% 86% 94% Tabla 5-4 Tasas de acierto. Caso 1. Sujeto C. En las siguientes figuras van a representarse como estarían situados los vectores de características para algunos de los casos anteriores, a modo de demostración de los resultados expuestos en la tabla anterior. 47 IDENTIFICACIÓN BIOMÉTRICA BASADA EN EL ELECTROENCEFALOGRAMA Figura 5-13 Representación de los vectores de características para el sujeto “C-1” y “A-1” para la onda cerebral Beta, correspondientes a los sensores Fp1 y F7. Se observa cómo para el sujeto C-1 la potencia se distribuye principalmente sobre el sensor Fp1 (Eje de abscisas), mientras que para la persona A-1 es sobre el sensor F7 (Eje de ordenadas). La diferencia de potencia para el sensor Fp1 entre ambos sujetos es muy grande, lo que produce una amplia separación entre los dos, esto hará que la SVM sea capaz de clasificar a los dos individuos con una óptima tasa de acierto en la identificación del sujeto C-2. RESULTADOS 48 Figura 5-14 Representación de los vectores de características para el sujeto “C-1” y “A-2” para la onda cerebral Alpha, correspondientes a los sensores Fp1 y F7. Se observa de qué manera para el sujeto C-1 la potencia se distribuye principalmente sobre el sensor Fp1 (Eje de abscisas), mientras que para la persona A-2 es sobre el sensor F7 (Eje de ordenadas). Al igual que para el caso anterior, la diferencia de potencia para el sensor Fp1 entre ambos sujetos es lo suficientemente grande, lo que produce una amplia separación entre los dos. Esto hará que la SVM sea capaz de clasificar a los dos individuos con una óptima tasa de acierto en la identificación del sujeto C-2. 49 IDENTIFICACIÓN BIOMÉTRICA BASADA EN EL ELECTROENCEFALOGRAMA Figura 5-15 Representación de los vectores de características para el sujeto “C-1” y “B-1” para la onda cerebral Theta, correspondientes a los sensores Fp1 y F7. Al igual que en los casos anteriores, la amplia diferencia de potencia entre ambos sujetos en el sensor Fp1, permitirá una óptima tasa de aciertos en la clasificación de vector de prueba C-2. RESULTADOS 56 5.4.2 Sujeto B Se realizan diferentes pruebas en las que se calculará la tasa de acierto en la identificacion del sujeto “B”. Se usará como vectores de entrenamiento los correspondientes a “B-1” y los correspondientes a los otros dos individuos. Para realizar la prueba de identificación se utilizarán los vectores de características de “B-2”. B-1 A-1 A-2 C-1 C-2 BETA 70% 99% 100% 97% ALPHA 85% 85% 99% 96% THETA 81% 96% 99% 96% DELTA 50% 27% 76% 44% Tabla 5-6 Tasas de acierto. Caso 2. Sujeto B. En las siguientes figuras van a representarse cómo estarían situados los vectores de características para algunos de los casos anteriores. Debido a la alta dimensionalidad de los datos, no es posible hacer una representación total de los mismos. Por tanto, se utilizarán unicamente dos sensores para poder generar las figuras. Se podrá observar una aproximación de la tasa de acierto que se ha conseguido. Para seleccionar los sensores, se observa los registros EEG de cada sujeto y se desestiman los que tengan mas ruido o sean excesivamente planos. 57 IDENTIFICACIÓN BIOMÉTRICA BASADA EN EL ELECTROENCEFALOGRAMA Figura 5-21 Representación de los vectores de características para el sujeto “B-1” y “A-1” para la onda cerebral Beta, correspondientes a los sensores Fp2 y F8. Los círculos verdes corresponden al vector de prueba de “B-2”. Para la representación de de los vectores de los sujetos B-1 y A-1, se han utilizado los sensores Fp2 y F8. Se observa de qué manera la potencia del sujeto B-1 es mayor que la de A-1 para el sensor Fp2 (Eje de abscisas), mientras que para el sensor F8 (Eje de ordenadas) la distribución es prácticamente igual. La diferencia de potencia entre ambos sujetos, para el sensor Fp2, permite que la SVM sea capaz de clasificar a los dos individuos y obtener una buena tasa de acierto en la identificación del sujeto B-2. RESULTADOS 58 Figura 5-22 Representación de los vectores de características para el sujeto “B-1” y “A-2” para la onda cerebral Alpha, correspondientes a los sensores Fp2 y AF4. Los círculos verdes corresponden al vector de prueba de “B-2”. Para la representación de de los vectores de los sujetos B-1 y A-2, se han utilizado los sensores Fp2 y AF4. Se observa cómo la potencia del sujeto B-1 es igual que la de A-2 para el sensor Fp2 (Eje de abscisas), mientras que para el sensor F8 (Eje de ordenadas) la potencia del sujeto B-1 es ligeramente superior. La diferencia de potencia entre ambos sujetos, para el sensor AF4, permite que la SVM sea capaz de clasificar a los dos individuos y obtener una buena tasa de acierto en la identificación del sujeto B-2. 59 IDENTIFICACIÓN BIOMÉTRICA BASADA EN EL ELECTROENCEFALOGRAMA Figura 5-23 Representación de los vectores de características para el sujeto “B-1” y “C-1” para la onda cerebral Theta, correspondientes a los sensores Fp1 y F7. Los círculos verdes corresponden al vector de prueba de “B-2”. Para la representación de de los vectores de los sujetos B-1 y C-1, se han utilizado los sensores Fp1 y F7. Se observa de qué manera la potencia del sujeto C-1 es mayor que la de B-1 para el sensor Fp2 (Eje de abscisas), mientras que para el sensor F8 (Eje de ordenadas) la distribución es prácticamente igual. La diferencia de potencia entre ambos sujetos, para el sensor Fp2, permite que la SVM sea capaz de clasificar a los dos individuos y obtener una óptima tasa de acierto en la identificación del sujeto B-2. RESULTADOS 60 Figura 5-24 Representación de los vectores de características para el sujeto “B-1” y “C-2” para la onda cerebral Delta. , correspondientes a los sensores Fp1 y Fpz. Los círculos verdes corresponden al vector de prueba de “B-2”. Para la representación de de los vectores de los sujetos B-1 y C-2, se han utilizado los sensores Fp1 y Fpz. Se observa cómo la potencia del sujeto B-1 es mayor que la de C-2 para el sensor Fpz (Eje de abscisas), mientras que para el sensor Fp1 (Eje de ordenadas) la distribución es prácticamente igual. La poca diferencia de potencia entre ambos sujetos para esta onda cerebral, en el sensor Fpz, permite que la SVM sea incapaz de clasificar a los dos individuos y obtener una óptima tasa de acierto en la identificación del sujeto B-2. 61 IDENTIFICACIÓN BIOMÉTRICA BASADA EN EL ELECTROENCEFALOGRAMA 5.4.3 Sujeto C Se realizan diferentes pruebas en las que se calculará la tasa de acierto en la identificacion del sujeto “C”. Se usará como vectores de entrenamiento los correspondientes a “C-1” y los correspondientes a los otros dos individuos. Para realizar la prueba de identificación se utilizarán los vectores de características de “C-2”. C-1 A-1 A-2 B-1 B-2 BETA 96% 99% 82% 96% ALPHA 98% 94% 73% 77% THETA 99% 100% 98% 99% DELTA 93% 97% 77% 88% Tabla 5-7 Tasas de acierto. Caso 2. Sujeto C En las siguientes figuras van a representarse de qué manera estarían situados los vectores de características para algunos de los casos anteriores. Debido a la alta dimensionalidad de los datos, no es posible hacer una representación total de los mismos. Por tanto, se utilizarán unicamente dos sensores para poder generar las figuras. Se podrá observar una aproximación de la tasa de acierto que se ha conseguido. Para seleccionar los sensores, se observa los registros EEG de cada sujeto y se desestiman los que tengan mas ruido o sean excesivamente planos. RESULTADOS 62 Figura 5-25 Representación de los vectores de características para el sujeto “C-1” y “A-1” para la onda cerebral Beta, correspondientes a los sensores Fp1 y F7. Los círculos verdes corresponden al vector de prueba de “C-2”. Para la representación de de los vectores de los sujetos C-1 y A-1, se han utilizado los sensores Fp1 y F7. Se observa de qué manera la potencia del sujeto C-1 se distribuye principalmente por el sensor Fp1 (Eje de abscisas), mientras que para el sujeto A-1 se distribuye por el sensor F7 (Eje de ordenadas). La gran diferencia de distribución de la potencia entre ambos sujetos permite que la SVM sea capaz de clasificar a los dos individuos y obtener una buena tasa de acierto en la identificación del sujeto C2. 63 IDENTIFICACIÓN BIOMÉTRICA BASADA EN EL ELECTROENCEFALOGRAMA Figura 5-26 Representación de los vectores de características para el sujeto “C-1” y “A-2” para la onda cerebral Alpha, correspondientes a los sensores Fp1 y F7. Los círculos verdes corresponden al vector de prueba de “C-2”. Para la representación de de los vectores de los sujetos C-1 y A-2, se han utilizado los sensores Fp1 y F7. Se observa cómo la potencia del sujeto C-1 se distribuye principalmente por el sensor Fp1 (Eje de abscisas), mientras que para el sujeto A-2 se distribuye por el sensor F7 (Eje de ordenadas). La gran diferencia de distribución de la potencia entre ambos sujetos permite que la SVM sea capaz de clasificar a los dos individuos y obtener una buena tasa de acierto en la identificación del sujeto C2. RESULTADOS 64 Figura 5-27 Representación de los vectores de características para el sujeto “C-1” y “B-1” para la onda cerebral Theta, correspondientes a los sensores Fp1 y F7. Los círculos verdes corresponden al vector de prueba de “C-2”. Para la representación de de los vectores de los sujetos C-1 y B-1, se han utilizado los sensores Fp1 y F7. Se observa cómo la potencia del sujeto C-1 se distribuye principalmente por el sensor Fp1 (Eje de abscisas), mientras que para el sujeto B-1 se distribuye por el sensor F7 (Eje de ordenadas). La gran diferencia de distribución de la potencia entre ambos sujetos permite que la SVM sea capaz de clasificar a los dos individuos y obtener una buena tasa de acierto en la identificación del sujeto C2. 65 IDENTIFICACIÓN BIOMÉTRICA BASADA EN EL ELECTROENCEFALOGRAMA Figura 5-28 Representación de los vectores de características para el sujeto “C-1” y “B-2” para la onda cerebral Delta, correspondientes a los sensores Fp1 y F7. Los círculos verdes corresponden al vector de prueba de “C-2”. Para la representación de de los vectores de los sujetos C-1 y B-1, se han utilizado los sensores Fp1 y F7. Se observa de qué manera la potencia del sujeto C-1 se distribuye principalmente por el sensor Fp1 (Eje de abscisas), mientras que para el sujeto B-2 se distribuye por el sensor F7 (Eje de ordenadas). La gran diferencia de distribución de la potencia entre ambos sujetos permite que la SVM sea capaz de clasificar a los dos individuos y obtener una buena tasa de acierto en la identificación del sujeto C2. Anexos 72 2. FILTRADO: En esta opción utilizaremos MATLAB para generar cuatro filtros paso de banda, uno para cada tipo de onda cerebral. A continuación, se procederá al filtrado de las diferentes señales EEG. %Script parar detectar "blinks" y posteriormente aplicar el algoritmo SSP. % Cargamos el fichero al que queremos aplicar SSP. nombre= load('nombre_ICA.mat'); nombre=char(nombre.nombre); ruta_programa = load('ruta_brains.mat'); ruta_programa = char(ruta_programa.ruta_brainstorm); ruta_programa=strcat(ruta_programa,'\'); ruta_fichero = strcat(ruta_programa,'brainstorm_db\TFG\data\NewSubject\@raw'); fichero = strcat(ruta_fichero,nombre); F=ls(fichero); fichero=strcat(fichero,'\'); fichero =strcat(fichero,F(5,:)); % Input files sFiles = {fichero}; % Start a new report bst_report('Start', sFiles); % Process: Detect: blink sFiles = bst_process('CallProcess', 'process_evt_detect', sFiles, [], ... 'eventname', 'blink', ... 'channelname', 'Veog+', ... 'timewindow', [], ... 'bandpass', [1.5, 15], ... 'threshold', 6, ... 'blanking', 0.1, ... 'isnoisecheck', 1, ... 'isclassify', 0); % Process: SSP EOG: blink sFiles = bst_process('CallProcess', 'process_ssp_eog', sFiles, [], ... 'eventname', 'blink', ... 'sensortypes', 'EEG', ... 'usessp', 1, ... 'select', 1); % Save and display report ReportFile = bst_report('Save', sFiles); bst_report('Open', ReportFile); % bst_report('Export', ReportFile, ExportDir); 73 IDENTIFICACIÓN BIOMÉTRICA BASADA EN EL ELECTROENCEFALOGRAMA Se muestra, a continuación, el código de una de las funciones para el filtrado de las señales: Anexos 74 %Creamos un filtro para obtener la onda cerebral "alpha". d1 = designfilt('bandpassiir','FilterOrder',4, ... 'HalfPowerFrequency1',8,'HalfPowerFrequency2',13.99, ... 'SampleRate',500); %Cargamos la ruta y el nombre de la señal que queremos filtrar. nombre= load('nombre_freq.mat'); nombre=char(nombre.nombre); ruta_programa = load('ruta_prog.mat'); ruta_programa = char(ruta_programa.ruta_programa); ruta_fichero = strcat(ruta_programa,'\PROGRAMA\datos\eeg_original\'); fichero=strcat(ruta_fichero,nombre); fichero=load(fichero); data=fichero.data; %Filtramos la señal para cada sensor. dim=size(data); for i=1:1:dim(1) data(i,:) = filtfilt(d1,data(i,:)); end %Tras haber analizado el transitorio del filtro, eliminamos las muestras de la señal que están alteradas por este. data(:,[1:450])=[]; dim=size(data); data(:,[(dim(2)-449):dim(2)])=[]; %Cargamos el nombre y la ruta, que queremos ponerle, de nuestro fichero con la señal ya filtrada. nombre= load('nombre.mat'); nombre=char(nombre.nombre); ruta_programa = load('ruta_prog.mat'); ruta_programa = char(ruta_programa.ruta_programa); ruta_fichero = strcat(ruta_programa,'\PROGRAMA\datos\eeg_alfa\'); ruta_nueva=strcat(ruta_fichero,nombre); %Guardamos el fichero en la ruta elegida. save(ruta_nueva,'data') 75 IDENTIFICACIÓN BIOMÉTRICA BASADA EN EL ELECTROENCEFALOGRAMA 3. SEGMENTACIÓN: Se procede a la segmentación de las señales EEG ya filtradas, para posteriormente realizar la extracción de características de cada uno de los bloques en los que se ha dividido. Se utiliza MATLAB para el desarrollo de una función que nos permite realizar este proceso. Anexos 76 function [Matriz_bloques] = Separar_bloques(t,l,datos) % t = tiempo que queremos que ocupe cada bloque. % l = tiempo de solapamiento entre bloques. N = t*500; %Cada segundo equivale a 500 muestras. L = l*500; dim_datos = size(datos); %Metemos en una variable las dimensiones de la matriz a=1; %Contador de bloques for i=1:1:dim_datos(1) %filas de la matriz (numero de sensores) if a==1 %Solo se aplicará para el primer bloque de cada fila(sensor) for j=1:1:N+1 %El tamaño del bloque será igual a N Matriz_bloques(i,a,j)=datos(i,j); %Copiamos el valor en la nueva Matriz. end end a=a+1; %Generamos "(nº de muestras-L)/(N-L)" columnas(bloques). while a>1 && a<=(round((dim_datos(2)-L)/(N-L))) %Utilizamos la variable b para desplazarnos por ambas matrices. for b=((a-1)*(N-L))+1:1:(((a-1)*(N-L))+N)+1 %Cuando la variable b supere el numero de muestras de la matriz, dejará de copiar. if b <= dim_datos(2) %Formamos la matriz de bloques. Matriz_bloques(i,a,(b-(a-1)*(N-L)))=datos(i,b); end end a=a+1; end a=1; end end 77 IDENTIFICACIÓN BIOMÉTRICA BASADA EN EL ELECTROENCEFALOGRAMA 4. EXTRACCIÓN DE CARACTERÍSTICAS: Se determina la potencia de cada bloque, con lo que obtendremos el vector de características que necesitamos para introducirlo en la máquina de soporte vectorial. 5. CLASIFICACIÓN (SVM): Usaremos la interfaz creada para elegir los vectores que vamos a utilizar para la clasificación. En la ventana se representará la frontera generada por la SVM, asi como los puntos correspondientes a los vectores de entrenamiento y test. function [potencia] = parametros(matriz) dim_matriz = size(matriz); %POTENCIA for i=1:1:dim_matriz(1) for j=1:1:dim_matriz(2) potencia(i,j) = sum((matriz(i,j,:)).^2)/dim_matriz(3); end end end Anexos 78 El código para la utilización de la maquina de soporte vectorial es: %Cargamos los vectores de caracteristicas del primer sujeto nombre= load('nombre_svm.mat'); nombre=char(nombre.nombre); ruta=load('ruta_svm.mat'); ruta=char(ruta.ruta); ruta=strcat(ruta,'\'); fichero=strcat(ruta,nombre); fichero=load(fichero); vector1=fichero.potencia; N=load('vectores1_svm.mat'); N=str2double(N.vectores1); vector1=vector1'; vector1((N+1):end,:)=[]; vector1(:,3:end)=[]; training_label_vector=[vector1]; %Cargamos los vectores de caracteristicas del segundo sujeto nombre= load('nombre_svm_2.mat'); nombre=char(nombre.nombre); ruta=load('ruta_svm.mat'); ruta=char(ruta.ruta); ruta=strcat(ruta,'\'); fichero=strcat(ruta,nombre); fichero=load(fichero); vector2=fichero.potencia; vector2=vector2'; vector2((N+1):end,:)=[]; vector2(:,3:end)=[]; training_label_vector=[training_label_vector;vector2]; %Cargamos los vectores de caracteristicas del primer sujeto (EEG-2) nombre= load('nombre_svm_test.mat'); nombre=char(nombre.nombre); ruta=load('ruta_svm.mat'); ruta=char(ruta.ruta); ruta=strcat(ruta,'\'); fichero=strcat(ruta,nombre); fichero=load(fichero); vector3=fichero.potencia; 79 IDENTIFICACIÓN BIOMÉTRICA BASADA EN EL ELECTROENCEFALOGRAMA N2=load('vectores3_svm.mat'); N2=str2double(N2.vectores3); vector3=vector3'; vector3(1:300,:)=[]; a=size(vector3,1); vector3(1:(a-N2),:)=[]; vector3(:,3:end)=[]; test_vector=[vector3]; %Generamos el vector de clases. dim=size(training_label_vector); training_instance_matrix=cell(dim(1),1); training_instance_matrix(1:(N),1)={'1'}; training_instance_matrix((N+1):(2*N),1)={'2'}; %Generación del modelo y la clasificacion del vector de prueba model=svmtrain(training_label_vector, training_instance_matrix,'ShowPlot', true); resultado=svmclassify(model,test_vector,'ShowPlot', true); ident=load('ident_svm.mat'); ident=ident.ident; cont=0; for i=1:N2 if cell2mat(resultado(i,:)) == cell2mat(ident) cont=cont+1; end end cont=(cont/N2)*100; %Guardamos la tasa de acierto en un fichero. cont=int2str(cont); cont=strcat(cont,'%'); nombre='accuracy.mat'; ruta_programa = load('ruta_prog.mat'); ruta_programa = char(ruta_programa.ruta_programa); ruta_fichero = strcat(ruta_programa,'\PROGRAMA\herramientas\'); ruta = strcat(ruta_fichero,nombre); save(ruta,'cont')