Optimización multi-objetivo de arquitecturas de aprendizaje profundo para el procesamiento de señales EEG en plataformas de cómputo heterogéneas
Metadata
Show full item recordAuthor
Aquino Brítez, Diego ArielEditorial
Universidad de Granada
Departamento
Universidad de Granada. Programa de Doctorado en Tecnologías de la Información y la ComunicaciónMateria
Arquitecturas de aprendizaje profundo Señales EEG Plataformas de cómputo heterogéneas
Date
2022Fecha lectura
2022-05-27Referencia bibliográfica
Aquino Brítez, Diego Ariel. Optimización multi-objetivo de arquitecturas de aprendizaje profundo para el procesamiento de señales EEG en plataformas de cómputo heterogéneas. Granada: Universidad de Granada, 2022. [http://hdl.handle.net/10481/75440]
Sponsorship
Tesis Univ. Granada.; Ministerio de Ciencia, Innovación y Universidades (PGC2018-098813-B-C31 y PGC2018-098813-B-C32); UMA20-FEDERJA-086 de la Consejería de Economía y Conocimiento de la Junta de Andalucía; Fondos Europeos de Desarrollo Regional (FEDER)Abstract
In recent years, models based on deep learning have revolutionized several areas
of science allowing the resolution of a wide variety of complex problems, many
of which were considered unsolvable. Compared to alternatives for the classification
of samples that require a priori knowledge of the descriptors with greater
representation or discriminant power, deep neural networks have the advantage of
extracting descriptors tailored to a specific problem through a learning process. In
this way, feature extraction and classification processes are integrated in the same
architecture. Although some of these architectures (such as convolutional networks)
were presented in the 70s and 80s, their training applied to real problems involved
a computational load that could not be assumed using computers of that time. Nowadays,
with the development of heterogeneous computing devices, these networks
have gained popularity, making it possible to efficiently perform the computations
required by deep neural networks (in some cases even inference is performed at
real-time) and to develop effective, specific optimization algorithms.
However, the design of deep network architectures is a complex task that usually
depends on the final application and there are no general design rules beyond the
experience of the designer. Therefore, although the designer plays an important role,
having an architecture that provides the required accuracy usually involves a trialand-
error process based on partial results or through the analysis of the evolution
of the network parameters during training. On the other hand, the efficiency and
performance of a given architecture depends to a great extent on the selection of
hyperparameters, and in this case, it is again necessary to resort to a trial-and-error
process. Therefore, the design and tuning of deep architectures is a complex and
computationally time-consuming task even for experienced designers. Moreover, the
development of specific tools to optimize the models is essential to take advantage
of the capabilities of deep learning models.
With this in mind, this thesis proposes the development of a fully configurable
optimization framework for deep learning architectures based on evolutionary
computation. The framework not only performs the optimization of hyperparameters
but also the network architecture, including regularization parameters to reduce
the generalization error. In addition, it is possible to perform the optimization
of an architecture based on multiple objectives that may be in conflict during the optimization process. The results (solutions) provided by the framework will
correspond to a set of non-dominated solutions that provide a trade-off between the
proposed objectives, being possible to select the most appropriate solution within
the Pareto front. On the other hand, it is worth to note that both CPUs and GPUs are
used to speed-up the execution of the optimization procedure by taking advantage
of the parallelism and heterogeneity present in the current computing nodes.
The developed tool has been applied to the optimization of deep learning architectures
for electroencephalography (EEG) signal processing. The classification of
EEG signals is a complex task that usually uses a priori known statistical descriptors.
However, there is no guarantee that the chosen descriptors provide the best
classification rate. On the other hand, previously proposed deep learning networks
for EEG classification using the signal in the time domain contain a large number
of hyperparameters. In the experiments performed, it is shown how to use the
framework to optimize architectures based on one-dimensional convolutional networks
for extracting descriptors and classification. These experiments are not only
performed to optimize hyperparameters, but the framework is configured so that
the optimization process can perform structural changes in the network or introduce
regularization layers to improve the generalization capability.
The experimental results corroborate that the deep architectures optimized by
the method proposed in this thesis improve the baseline networks and produce
computationally efficient models, not only from the point of view of classification rate
but also in terms of computational efficiency and, therefore, in energy efficiency. En los últimos años, los modelos basados en aprendizaje profundo han revolucionado
diversas áreas de la ciencia permitiendo la resolución de una gran variedad de
problemas complejos, muchos de los cuales se consideraban sin solución. Frente a
las alternativas para la clasificación de muestras que requieren conocer a priori los
descriptores con mayor poder de representación o discriminante, las redes neuronales
profundas tienen la ventaja de extraer descriptores a medida para un problema
concreto mediante un proceso de aprendizaje. De esta forma, se integran en una misma
arquitectura los procesos de extracción de características y clasificación. Algunas
de estas arquitecturas (como las redes convolucionales), aunque fueron presentadas
en los años 70-80, su entrenamiento aplicado a problemas reales suponía una carga
computacional no asumible para los computadores de la época. Actualmente, con el
desarrollo de dispositivos de cómputo heterogéneo, estas redes han ganado popularidad,
permitido realizar de manera eficiente los cálculos requeridos por la redes
neuronales profundas (en mucho casos la inferencia se realiza incluso en tiempo
real) y desarrollar algoritmos efectivos de optimización para las mismas.
No obstante, el diseño de arquitecturas de redes profundas es una tarea compleja que
normalmente depende de la aplicación final y para la que no existen reglas de diseño.
Por tanto, aunque la experiencia del diseñador juega un papel importante, disponer
de una arquitectura que proporcione la precisión requerida conlleva normalmente
un proceso de ensayo y error basado en resultados parciales o a través del análisis
de la evolución de los parámetros de la red durante el entrenamiento. Por otro
lado, la eficiencia y prestaciones de una determinada arquitectura depende en gran
medida de la selección que se haga de los hiperparámetros, y en este caso, de
nuevo es necesario recurrir a un proceso de ensayo y error. Por tanto, el diseño
y ajuste de arquitecturas profundas es una tarea compleja que requiere mucho
tiempo de cómputo incluso para diseñadores experimentados. Además, desarrollar
herramientas específicas para optimizar los modelos resulta esencial de cara a
aprovechar las capacidades de los modelos basados en aprendizaje profundo.
Con todo esto en mente, en esta tesis se propone el desarrollo de un framework de
optimización para arquitecturas de aprendizaje profundo totalmente configurable
basado en computación evolutiva. El framework no sólo contempla la optimización
de hiperparámetros sino también la propia arquitectura, incluyendo parámetros de regularización para reducir el error de generalización. Además, es posible realizar
la optimización de una arquitectura en base a múltiples objetivos que pueden
estar en conflicto durante el proceso de optimización. Los resultados (soluciones)
proporcionados por el framework corresponderán a un conjunto de soluciones no
dominadas que permiten el balance entre los objetivos propuestos, siendo posible
seleccionar la solución más adecuada dentro del frente de Pareto. Por otra parte,
conviene destacar que se utilizan tanto CPUs como GPUs para acelerar la ejecución
del procedimiento de optimización, aprovechando el paralelismo y la heterogeneidad
presente en los nodos de cómputo actuales.
La herramienta desarrollada se ha aplicado a la optimización de arquitecturas de
aprendizaje profundo para el procesamiento de señales de electroencefalografía
(EEG). La clasificación de señales EEG es una tarea compleja que suele utilizar
descriptores de las señales conocidos a priori. Sin embargo, no se tiene garantía
de que los descriptores elegidos proporcionen la mejor tasa de clasificación. Por
otro lado, las propuestas de redes de aprendizaje profundo para la clasificación
de EEG utilizando la señal en el tiempo contienen un gran número de hiperparámetros.
En los experimentos realizados se muestra cómo usar el framework para
optimizar arquitecturas basadas en redes convolucionales unidimensionales para
extraer descriptores y clasificación. Dichos experimentos no sólo se realizan para
optimizar hiperparámetros, sino que se configura el framework para que el proceso
de optimización pueda realizar cambios estructurales en la red o introducir capas de
regularización que mejoren la capacidad de generalización.
Los resultados experimentales obtenidos corroboran que las arquitecturas profundas
optimizadas por el método propuesto en esta tesis mejoran las redes de partida y
dan lugar a modelos computacionalmente eficientes, no sólo desde el punto de vista
de la tasa de clasificación sino también en cuanto a eficiencia computacional y, por
tanto, en eficiencia energética.