Año 12, Número 2. Enero - Abril, 2025
Por: Gabriel Ramos-Zacarías, Miguel Ángel Gil-Ríos, Alan López Martínez y María Dolores Juárez Ramírez / Ver en pantalla completa
Este artículo describe el uso de una arquitectura de red neuronal convolucional para clasificar emociones a partir de imágenes faciales, la cual se entrenó con una base de datos pública, utilizando 24,176 y 6,053 instancias para entrenamiento y prueba, respectivamente. La arquitectura utilizada involucra el uso de una capa de entrada seguida de doce capas de procesamiento conectadas de manera secuencial y, una capa final de salida para realizar la clasificación de las emociones. Se consideraron emociones de enojo, felicidad, neutralidad, tristeza y sorpresa. La precisión de clasificación fue de 0.97 y 0.96 en términos de las métricas accuracy y coeficiente de Jaccard, respectivamente. Adicionalmente, al utilizar un banco privado de 100 imágenes, se obtuvo un desempeño de 0.93 en términos de las métricas accuracy y coeficiente de Jaccard. Los resultados obtenidos probaron la efectividad de la arquitectura elegida para ser implementada en un entorno productivo.
Palabras clave: aprendizaje profundo, reconocimiento facial, clasificación de emociones.
This paper describes the use of a Convolutional Neural Network architecture to classify emotions from facial images. The network was trained and tested with a public database using 24,176 and 6,053 instances, respectively. The Convolutional Neural Network was designed using an architecture involving an input layer followed by 12 processing layers sequentially connected and a final output layer to classify the emotions. For the study, five distinct emotions were considered such as anger, happiness, neutrality, sadness and surprise. The classification performance was 0.97 and 0.96 in terms of the accuracy and Jaccard coefficient metrics. Additionally, a private bank of 100 images was used to test and probe the network reliability. It was achieved a performance of 0.93 in terms of the accuracy and Jaccard coefficient metrics. The obtained results probed the effectiveness of the chosen architecture to be used in a production environment.
Keywords: deep learning, facial recognition, classification of emotions.
El reconocimiento facial ha experimentado grandes avances en las últimas décadas, gracias al continuo desarrollo en el campo del aprendizaje profundo (deep learning)1. Estas técnicas han cambiado la forma en que se identifican y comprenden las emociones humanas a través del reconocimiento facial, proporcionando una nueva dimensión de análisis y aplicaciones en diversas áreas, como la psicología, el marketing, la seguridad y la interacción humano-computadora.
En el contexto del reconocimiento facial, el deep learning puede descubrir patrones sutiles, identificar rasgos únicos y capturar matices emocionales en las expresiones faciales2. Esto ha llevado a avances significativos en la precisión, la velocidad y la confiabilidad del reconocimiento facial. Se puede observar en el día a día, desde el desbloqueo de dispositivos móviles hasta la identificación de sospechosos en sistemas de seguridad3. Mediante la identificación y análisis de elementos clave, como los ojos, la nariz y la boca, los sistemas de reconocimiento facial pueden discernir entre individuos y categorizar emociones4, 5.
Alternativamente, los enfoques de coincidencia holística han sido ampliamente utilizados en el reconocimiento facial6. Estos métodos abordan la tarea de reconocimiento comparando directamente las características faciales completas, sin dividirlas en partes específicas. Mediante el uso de técnicas de análisis de patrones y aprendizaje automático, estos métodos pueden identificar patrones únicos en rostros y realizar la correspondencia con imágenes almacenadas en la base de datos7.
Los métodos basados en características o estructuras han sido valiosos en el reconocimiento facial. Estos enfoques se centran en la extracción y comparación de características específicas del rostro, como los ojos, la nariz y la boca. Utilizando técnicas de geometría y morfología, los puntos de referencia en la cara pueden ser identificados y se miden distancias y ángulos entre ellos, estas características se utilizan luego para identificar y comparar rostros8.
Los métodos híbridos han ganado popularidad debido a su capacidad para mejorar la precisión del reconocimiento facial. Estos métodos combinan enfoques holísticos y basados en características para aprovechar las ventajas de ambos enfoques. Al utilizar técnicas de extracción de características locales junto con el análisis completo de la cara, los métodos híbridos logran resultados más precisos y robustos en la identificación de rostros9.
Los rostros laplacianos o laplacian faces, se basan en el análisis de componentes principales (PCA)10, 11. A su vez, el reconocimiento facial basado en métodos bayesianos ha demostrado ser efectivo en situaciones con datos incompletos o desbalanceados. Estos enfoques utilizan la teoría estadística de Bayes para modelar las relaciones probabilísticas entre las características faciales e identidades. La capacidad de adaptarse a datos con niveles de ruido considerable y con pocos ejemplos de entrenamiento hace que los métodos bayesianos sean una opción valiosa en diversas aplicaciones de reconocimiento facial12.
En este artículo, se presentan los resultados obtenidos al realizar la clasificación de emociones a partir de una imagen digital del rostro de las personas. El método utilizado hace uso de una red neuronal convolucional (CNN) secuencial simple con trece capas. Para el entrenamiento y prueba se utilizó la base de datos FER-2013, la cual contiene 30,226 imágenes de rostros de personas13 catalogadas en cinco emociones: enojo, felicidad, neutra, tristeza y sorpresa. Además, se utilizó una base de datos independiente con veinte imágenes que corresponden a empleados y empleadas de la empresa Forte Innovation14. Los resultados obtenidos demostraron que la elección de la red neuronal utilizada fue adecuada, pues se realizó un rastreo del proceso de entrenamiento de la arquitectura utilizada. Adicionalmente, los resultados obtenidos en las pruebas fueron satisfactorios logrando un 0.93 de exactitud (accuracy), demostrando la factibilidad de que el método pueda ser implementado en un entorno productivo.
El artículo está dividido en cinco secciones. En la primera sección se hace una descripción del estado del arte relacionado con la identificación y clasificación de rostros. En la segunda se describen los conceptos y fundamentos aplicados en este artículo. En la tercera sección se describe a detalle el método propuesto. En la cuarta se presentan los resultados obtenidos y, finalmente, se presentan las conclusiones y hallazgos relevantes encontrados.
Aplicar una arquitectura de red neuronal convolucional que permita la clasificación de emociones, a partir de imágenes de rostros de personas con una eficiencia de clasificación superior a 0.85 en términos de métrica de exactitud (accuracy).
El problema que se requiere resolver es la identificación de la emoción que tiene una persona, a partir de una fotografía del rostro, mediante un modelo computacional que automatice el proceso de clasificación.
De igual manera, se necesita que la eficiencia de clasificación realizada a partir del modelo clasificador sea superior al 0.85 en términos de exactitud con la finalidad de asegurar su efectividad.
Adicionalmente, se requiere validar el modelo, que previamente fue entrenado, con imágenes de personal de la empresa Forte Innovation, con la finalidad de validar su factibilidad y ser implementado en un ambiente productivo dentro de la organización.
La arquitectura de la red neuronal convolucional (CNN) está diseñada específicamente para extraer características relevantes de las imágenes y aprender representaciones significativas de los rostros. Empleando filtros convolucionales, estas redes son capaces de identificar bordes, texturas y características distintivas que resultan esenciales para la identificación de rostros y, más específicamente, para la clasificación de emociones15. Las CNN no solo han demostrado ser capaces de reconocer las expresiones faciales más comunes, como felicidad, tristeza y enojo, sino que también han incursionado en detectar emociones más sutiles en los rostros16.
Las redes neuronales convolucionales (CNN) han sido un pilar fundamental en el desarrollo de la inteligencia artificial y el aprendizaje profundo. Inspiradas en la forma en que el cerebro humano procesa y comprende la información visual, estas arquitecturas han revolucionado la visión por computadora y han logrado resultados sorprendentes en tareas como el reconocimiento de objetos, la clasificación de imágenes, la detección de rostros y mucho más17. Las redes neuronales convolucionales son un tipo de red neuronal artificial diseñada especialmente para procesar y analizar imágenes18.
Una CNN está compuesta por distintas capas las cuales, juegan roles específicos en el procesamiento y extracción de características significativas de las imágenes de entrada, permitiendo a la red aprender a interpretar y comprender la información de manera más eficiente y precisa19.
La combinación y el orden de estas capas pueden variar según la arquitectura específica de la red y la tarea a resolver20. A su vez, cada tipo de capa juega un papel crucial en la arquitectura, como se describe a continuación:
Las arquitecturas convolucionales típicas constan de capas de convolución seguidas de capas ReLU (unidad lineal rectificada) y capas de pooling. A medida que la imagen se procesa a través de la red, se vuelve más pequeña pero más profunda debido a las capas de convolución. En la parte superior, se agrega una red neuronal feedforward con conexiones completamente integradas y una capa de predicción final, como una softmax, para estimar las probabilidades de clases. Este diseño permite la extracción gradual de características y la toma de decisiones finales para la clasificación21.
La evaluación desempeña un papel central en la validación y la mejora continua de los sistemas. De igual manera, brinda las herramientas para medir, cuantificar y comprender cómo un sistema interpreta y responde a las sutilezas de las expresiones faciales.
Existen varias formas de medir el desempeño con el que un clasificador es capaz de realizar su tarea al utilizar un banco de datos de pruebas. Una de las métricas más utilizadas para este caso es la exactitud, comúnmente descrita en la literatura como accuracy, la cual se puede calcular de la siguiente manera:
Donde Acc es la exactitud (accuracy), CP representa la cantidad de casos que la CNN clasificó correctamente (correct predictions) y FP representa la cantidad de casos que la CNN clasificó de manera incorrecta (failed predictions).
Adicionalmente, se utilizó la métrica del índice de Jaccard o coeficiente de similitud de Jaccard. Esta métrica se utiliza para evaluar la similitud entre dos conjuntos. El índice de Jaccard se calcula dividiendo el tamaño de la intersección de los dos conjuntos (es decir, los casos clasificados y los datos reales) dividido entre el tamaño de la unión de los conjuntos (que incluye todos los casos, tanto los clasificados de forma correcta como incorrecta). A continuación, se describe la fórmula para su cálculo.
donde J(A,B) es el índice de Jaccard entre los conjuntos A y B, A∩B es el tamaño de la intersección de los conjuntos y A∪B es el tamaño de la unión de los conjuntos. Un valor del índice de Jaccard cercano a uno indica una alta similitud entre los conjuntos, lo que significa que se están clasificando correctamente las instancias. Por el contrario, un índice cercano a cero indica una baja similitud, lo que sugiere discrepancias significativas entre las predicciones del sistema y las emociones reales expresadas en las imágenes.
La matriz de confusión multiclase es una herramienta que permite analizar cómo el clasificador de emociones interpreta y clasifica las diferentes expresiones faciales. A su vez, esta matriz sirve de base para calcular la exactitud de la clasificación. La Figura 1, ilustra el esquema de una matriz de confusión multiclase.
Clase obtenida | |||||
Clase esperada | Clase 1 | Clase 2 | ··· | Clase N | |
Clase 1 | CP | FN | FN | FN | |
Clase 2 | FP | CP | FN | FN | |
··· | FP | FP | CP | FN | |
Clase N | FP | FP | FP | CP |
Figura 1. Esquema de una matriz de confusión multiclase. Fuente: elaboración propia
Tomando como base la Figura 1, el número de clasificaciones correctas (correct predictions) o CP, para cada clase, se encuentran dentro de la diagonal de la matriz. Por otro lado, los valores en las celdas fuera de la diagonal cuantifican los errores de clasificación. A los errores de clasificación por encima de la diagonal se les conoce como fasos-negativos (false-negative) o FN. De manera consecuente, a los errores de clasificación debajo de la diagonal se les denomina falsos positivos (false-positive) o FP.
Con la finalidad de lograr el objetivo general descrito previamente, se eligió utilizar una CNN secuencial simple de trece capas22, más una capa de entrada. La elección de la arquitectura se realizó con base en el estudio del estado del arte relacionado exclusivamente con el problema tratado. El diseño elegido presentó un mejor desempeño en la clasificación de emociones con respecto a otras arquitecturas23, 24.
Posterior a la de entrada, la CNN contiene dos capas de convolución y enseguida se aplicó una reducción de tamaño de imagen (max pooling). A continuación, se agregó una capa de poda (dropout) con la finalidad de discriminar aquellas neuronas que la CNN considera como no relevantes para realizar la clasificación. Luego se aplicó una capa de convolución para continuar extrayendo las características más complejas y después de reducir el tamaño se repitieron estos dos pasos, antes de regularizar la red con una capa de poda para evitar el sobreajuste. Consecuentemente, las personas autoras transformaron los datos en un vector unidimensional en la capa flatten a fin de prepararlo para la capa densa (fully connected) donde se procesa la información y enseguida se agregó una capa de poda, finalmente la capa densa se encargó de realizar la clasificación de emociones. La Figura 2 ilustra la arquitectura de la red neuronal convolucional utilizada.
Figura 2. Arquitectura de la red neuronal convolucional con trece capas secuenciales, utilizada para la clasificación de emociones. Fuente: elaboración propia
Como se puede apreciar en la Figura 2, la red convolucional utilizada es de tipo secuencial y cuenta con trece capas de procesamiento posteriores a la primera capa, que es la de entrada. Es importante mencionar que las imágenes de entrada deben tener un tamaño de 48 x 48 pixeles, y estar representadas en escala de grises de un solo canal de color. Conforme la imagen de entrada se procesa en cada una de las capas internas de la CNN, se generan diferentes mapas de características que le permiten a la red conocer las regiones más relevantes para realizar la clasificación. Finalmente, la capa de salida que realiza la clasificación final consta de 5 neuronas, las cuales representan cada una de las emociones consideradas en la clasificación. La Figura 3 ilustra el flujo del proceso de clasificación.
Figura 3. Diagrama de flujo del algoritmo propuesto. Fuente: elaboración propia
Para la experimentación se utilizaron dos bases de datos distintas con imágenes de rostros de personas con un tamaño de 48 x 48 pixeles en escala de gris. La primera base de datos se denomina FER-2013 y se obtuvo de Kaggle, la cual es de dominio público13. Cuenta con 30,229 instancias (imágenes) considerando cinco emociones, como se describe en la Tabla 1.
Tabla 1. Número de instancias para cada emoción tomadas de la base de datos FER-2013. Fuente: elaboración propia
Enojo | Felicidad | Neutro | Tristeza | Sorpresa | |
Entrenamiento | 3995 | 7215 | 4965 | 4830 | 3171 |
Prueba | 958 | 1774 | 1233 | 1257 | 831 |
Total | 4953 | 8989 | 6198 | 6087 | 4002 |
Del número total de instancias, se utilizaron 24,176 (80 %) para entrenamiento y 6,053 (20%) para pruebas. La distribución previamente descrita se realizó para asegurar una alta eficiencia de aprendizaje durante la etapa de entrenamiento de la CNN. La Figura 4 ilustra una muestra de rostros con diferentes emociones, tomada de la base de datos FER-2013.
Figura 4. Muestra de rostros con diferentes emociones, tomadas de la base de datos FER-2013. Cada fila, de arriba hacia abajo, representa una emoción como se describe a continuación: enojo, felicidad, neutral, tristeza y sorpresa.
Posteriormente, para comprobar los resultados obtenidos en la prueba anterior, se utilizó una base de datos independiente con cien imágenes correspondientes a empleados de la empresa Forte Innovation. El banco de imágenes contempla las diferentes emociones de manera equilibrada, es decir, veinte imágenes para cada una de las emociones previamente descritas. Dichas imágenes fueron adquiridas en un entorno controlado. Se capturó un video del rostro de los participantes mientras expresaban diferentes emociones, como enojo, felicidad, tristeza, sorpresa, entre otras. Posteriormente, se utilizaron las librerías OpenCV y Haar Cascades, para extraer fotogramas representativos de estas emociones. Derivado de este proceso, las imágenes obtenidas tuvieron una resolución de 48 x 48 pixeles y estuvieron representadas en un modelo de color en escala de gris. El formato de los archivos resultantes fue jpg. Es importante mencionar que, durante la toma del video, las personas fueron grabadas delante de un fondo blanco con la finalidad de aumentar el contraste. De manera consecuente, la empresa Forte designó a un grupo de personas ajenas a esta investigación a extraer las imágenes de los rostros y solo se proporcionó la base de datos final. De forma adicional, es importante mencionar que el rango de edades de las y los participantes oscila entre los 17 y los 35 años, lo que proporciona una amplia representación de grupos de edad. Aproximadamente el 70 % de las imágenes corresponden a participantes masculinos y el 30 % a participantes femeninas. Todas las imágenes para las diferentes emociones fueron capturadas para todos los usuarios participantes. No se realizaron procesos de selección previa ni exclusión de imágenes, lo que garantiza una representación completa de las expresiones emocionales de las y los participantes en la base de datos.
Es importante destacar que la base de datos de Forte no se utilizó para entrenar el modelo de reconocimiento de emociones. Solo se utilizó para realizar pruebas del modelo previamente entrenado, el cual se había desarrollado utilizando el conjunto de datos FER -2013.
Para el entrenamiento se configuró la CNN con 100 épocas, una tasa de aprendizaje de 0.0001, así como la estrategia de aprendizaje tipo Adam25. De igual forma, para validar la eficiencia del entrenamiento y el número de instancias utilizadas, se hicieron cinco particiones diferentes, como se describe en la Tabla 2.
Tabla 2. Descripción de cinco particiones de datos con diferente número de instancias utilizadas para medir la eficiencia del entrenamiento de la CNN. Fuente: elaboración propia
Dataset | Número de instancias |
1 | 4800 |
2 | 9600 |
3 | 14400 |
4 | 19200 |
5 | 24176 |
El número de particiones se estableció de forma empírica considerando el tiempo de respuesta del entrenamiento de la CNN, así como el resultado obtenido. De igual manera, la cantidad de instancias para cada emoción se mantuvo proporcional a la cantidad correspondiente en toda la base de datos. Todos los experimentos fueron programados en el lenguaje Python, utilizando la librería TensorFlow 2.14. Para su ejecución se utilizó una computadora con un procesador Intel Core i7 de 8va. generación y 8 GB en RAM.
Una vez realizados los experimentos descritos previamente, se obtuvieron resultados relevantes que demostraron que tanto la arquitectura utilizada en la CNN como el conjunto de datos de entrenamiento, fueron adecuados.
La Figura 5 ilustra el desempeño del entrenamiento de la CNN en términos de la métrica de exactitud utilizando las diferentes particiones de datos descritas previamente en la Tabla 2.
Figura 5. Comportamiento de la eficiencia del entrenamiento de la CNN utilizando diferentes particiones de datos. El eje x representa el número de instancias utilizadas para entrenar la CNN, el eje y representa la exactitud. Fuente: elaboración propia
Como se ilustra en la Figura 5, el desempeño de entrenamiento de la CNN, en términos de exactitud, aumentó conforme se incrementó el número de instancias utilizadas. En la Tabla 3 se describe la matriz de confusión correspondiente al conjunto de datos de prueba de la base de datos FER-2013 utilizando todo el conjunto de datos de entrenamiento.
Tabla 3. Matriz de confusión correspondiente a la clasificación de emociones utilizando la base de datos de prueba FER-2013, la cual contiene 6053 instancias. Fuente: elaboración propia
Clase obtenida | ||||||
Enojo | Felicidad | Neutro | Tristeza | Sorpresa | ||
Clase esperada |
Enojo | 929 | 0 | 10 | 0 | 19 |
Felicidad | 0 | 1721 | 0 | 0 | 53 | |
Neutro | 0 | 0 | 1196 | 37 | 0 | |
Tristeza | 0 | 0 | 38 | 1219 | 0 | |
Sorpresa | 8 | 8 | 0 | 9 | 806 |
Con base a los datos descritos en la Tabla 3, la mayor exactitud obtenida fue de 0.97. Este resultado se logró entrenando previamente la CNN utilizando el conjunto de datos de entrenamiento completo; el cual consta de 24,176 instancias.
De manera consecuente, en la Figura 6 se ilustra el desempeño de entrenamiento de la CNN a lo largo de 100 épocas, utilizando la base de datos de entrenamiento con 24,176 instancias, con la cual se logró el desempeño más alto (0.97).
Figura 6. Gráfica del desempeño del entrenamiento de la CNN con base en la métrica de exactitud a lo largo de 100 épocas. El eje x representa el número de época, el eje y representa el desempeño de clasificación de la CNN en términos de exactitud (accuracy). Fuente: elaboración propia.
Considerando la gráfica ilustrada en la Figura 6 y contrastada con la matriz de confusión descrita en la Tabla 3, se puede comprobar que el número de épocas establecidas fue adecuado, debido a que, a partir de la época 90, la eficiencia de la clasificación, con base en la métrica de exactitud (accuracy) se mantuvo estable.
En la siguiente etapa de la experimentación, se puso a prueba la CNN utilizando el conjunto de imágenes de prueba de la base de datos FER-2013. Al igual que en la etapa de entrenamiento, se realizó una prueba por cada base de datos de entrenamiento utilizada en la etapa previa. Este procedimiento permitió contrastar el efecto del entrenamiento de la CNN con el banco de imágenes de prueba y de esta forma demostrar que, utilizando el conjunto de datos de entrenamiento con el mayor número de instancias, se logró una mayor eficiencia en términos de exactitud de clasificación. La Tabla 4, describe la matriz de confusión del desempeño en términos de exactitud al entrenar la CNN con el conjunto de entrenamiento de 4,800 instancias y probarla con la base de datos de la empresa Forte Innovation.
Tabla 4. Matriz de confusión correspondiente a la clasificación de emociones utilizando la base de datos de la empresa Forte Innovation, utilizando una base de datos con 4,800 instancias para el entrenamiento de la CNN. Fuente: elaboración propia
Clase obtenida | |||||||
Enojo | Felicidad | Neutro | Tristeza | Sorpresa | |||
Clase esperada | Enojo | 12 | 1 | 1 | 1 | 1 | |
Felicidad | 2 | 11 | 3 | 1 | 4 | ||
Neutro | 4 | 3 | 11 | 1 | 4 | ||
Tristeza | 2 | 2 | 4 | 17 | 1 | ||
Sorpresa | 0 | 3 | 1 | 0 | 10 |
Con base en la matriz de confusión descrita en la Tabla 4, el desempeño de clasificación obtenido por la CNN, en términos de exactitud, fue de 0.61.
La Tabla 5 describe la matriz de confusión obtenida al entrenar la CNN con 9,600 instancias y probarla con la base de datos de la empresa Forte Innovation.
Tabla 5. Matriz de confusión correspondiente a la clasificación de emociones usando a base de datos de la empresa Forte Innovation, utilizando una base de datos con 9,600 instancias para el entrenamiento de la CNN. Fuente: elaboración propia
Clase obtenida | ||||||
Enojo | Felicidad | Neutro | Tristeza | Sorpresa | ||
Clase esperada | Enojo | 16 | 1 | 2 | 0 | 1 |
Felicidad | 1 | 13 | 1 | 1 | 1 | |
Neutro | 2 | 4 | 13 | 1 | 1 | |
Tristeza | 0 | 1 | 2 | 17 | 1 | |
Sorpresa | 1 | 1 | 2 | 1 | 16 |
Con base en la matriz de confusión descrita en la Tabla 5, el desempeño de clasificación obtenido por la CNN, en términos de exactitud fue de 0.75 el cual, aumentó con respecto al obtenido con los datos de la Tabla 4.
La Tabla 6 describe la matriz de confusión obtenida al entrenar la CNN con 14,400 instancias y probarla con la base de datos de la empresa Forte Innovation.
Tabla 6. Matriz de confusión correspondiente a la clasificación de emociones utilizando la base de datos de la empresa Forte Innovation, utilizando una base de datos con 14,400 instancias para el entrenamiento de la CNN.
Clase obtenida | ||||||
Enojo | Felicidad | Neutro | Tristeza | Sorpresa | ||
Clase esperada | Enojo | 16 | 1 | 1 | 0 | 1 |
Felicidad | 1 | 13 | 2 | 1 | 0 | |
Neutro | 2 | 3 | 14 | 1 | 2 | |
Tristeza | 1 | 1 | 2 | 18 | 1 | |
Sorpresa | 0 | 2 | 1 | 0 | 16 |
Con base en la matriz de confusión descrita en la Tabla 6, el desempeño de clasificación obtenido por la CNN, en términos de exactitud fue de 0.77, el cual aumentó sensiblemente con respecto a los resultados obtenidos previamente.
La Tabla 7 describe la matriz de confusión obtenida al entrenar la CNN con 19,200 instancias y probarla con la base de datos de la empresa Forte Innovation.
Tabla 7. Matriz de confusión correspondiente a la clasificación de emociones utilizando la base de datos de la empresa Forte Innovation, utilizando una base de datos con 19,200 instancias para el entrenamiento de la CNN. Fuente: elaboración propia
Clase obtenida | ||||||
Enojo | Felicidad | Neutro | Tristeza | Sorpresa | ||
Clase esperada | Enojo | 16 | 1 | 2 | 0 | 1 |
Felicidad | 1 | 13 | 1 | 1 | 1 | |
Neutro | 2 | 4 | 13 | 1 | 1 | |
Tristeza | 0 | 1 | 2 | 17 | 1 | |
Sorpresa | 1 | 1 | 2 | 1 | 16 |
Con base en la matriz de confusión descrita en la Tabla 7, el desempeño de clasificación obtenido por la CNN, en términos de exactitud fue de 0.89, el cual, comenzó a ser satisfactorio.
Finalmente, se realizó la clasificación utilizando la CNN con todo el conjunto de datos de entrenamiento, el cual, constó de 24,176 instancias. La Tabla 8, describe la matriz de confusión obtenida al entrenar la CNN con todo el conjunto de datos de entrenamiento y probarla con la base de datos de la empresa Forte Innovation.
Tabla 8. Matriz de confusión correspondiente a la clasificación de emociones utilizando la base de datos de la empresa Forte Innovation, utilizando una base de datos con 19,200 instancias para el entrenamiento de la CNN. Fuente: elaboración propia
Clase obtenida | ||||||
Enojo | Felicidad | Neutro | Tristeza | Sorpresa | ||
Clase esperada | Enojo | 18 | 0 | 0 | 0 | 0 |
Felicidad | 0 | 19 | 0 | 1 | 0 | |
Neutro | 1 | 1 | 20 | 1 | 1 | |
Tristeza | 0 | 0 | 0 | 18 | 1 | |
Sorpresa | 1 | 0 | 0 | 0 | 18 |
Con base en los datos descritos en la Tabla 8, el mayor desempeño de clasificación obtenido por la CNN, en términos de la métrica de exactitud, fue 0.97.
En la Figura 7 se ilustra el desempeño de la CNN en términos de exactitud, al entrenarse con los diferentes conjuntos de datos y probarse con la base de datos de Forte.
Figura 7. Comparación del desempeño de la exactitud en la clasificación entre el número de instancias utilizadas para entrenar la CNN y probarla con las instancias de prueba de la base de datos FER-2013 (línea azul) y el resultado de clasificación al probarla con la base de datos de Forte (línea naranja). El eje x representa el número de instancias utilizadas para entrenar la CNN. El eje y representa la exactitud. Las sombras en cada gráfica representan el error de variación en la clasificación. Fuente: elaboración propia
Con la finalidad de asegurar la confiabilidad de los resultados presentados previamente, se realizó el cálculo del índice de Jaccard, obteniéndose un valor de 0.96, el cual permitió corroborar la fiabilidad de la CNN para clasificar las emociones.
Es importante mencionar que los resultados obtenidos superaron sensiblemente a los reportados por Yahia Said y Mohammad Barr26, donde el desempeño en términos de exactitud fue de 0.95.
De igual forma, la diferencia del 4 % en el rendimiento entre la base de datos FER-2013 y la base de datos de Forte Innovation, puede atribuirse a factores como la diferencia en el tamaño de los conjuntos de datos, la distribución de clases y posibles sesgos en la evaluación del modelo. Aunque estas diferencias tuvieron influencia en los resultados obtenidos, su impacto en el rendimiento general del clasificador no fue relevante. Ambos conjuntos de datos proporcionaron resultados similares, lo que sugiere que el modelo es robusto y efectivo en la clasificación de emociones independientemente de la base de datos utilizada.
La clasificación automática de emociones a partir de imágenes faciales es desafiante debido a la necesidad de identificar un conjunto adecuado de características. Las redes neuronales convolucionales (CNN) son una opción eficaz en este escenario. Sin embargo, aún persiste el desafío de diseñar una arquitectura adecuada que garantice alta precisión. Se optó por utilizar una CNN previamente probada y reportada en el estado del arte para realizar la tarea de clasificación de emociones de empleados de la empresa Forte. Los resultados obtenidos respaldaron la eficiencia de la arquitectura de la red neuronal utilizada para clasificar las emociones. De manera inicial, se utilizó una base de datos de imágenes de dominio público para el entrenamiento y prueba de la CNN. Posteriormente, se midió el desempeño de la CNN previamente entrenada, utilizando una segunda base de datos independiente para validar la arquitectura y el aprendizaje de la CNN en términos de las métricas accuracy e índice Jaccard. Como trabajo futuro, es posible explorar otras arquitecturas y técnicas de aprendizaje, como la transferencia de conocimiento y las redes neuronales adversariales.
En este artículo se describió la arquitectura de una red neuronal convolucional utilizada para realizar la clasificación de emociones, a partir de imágenes de rostros de personas. Los resultados obtenidos demostraron la eficiencia de la red neuronal convolucional para realizar la clasificación, lográndose una eficiencia de clasificación, en términos de las métricas accuracy e índice Jaccard, de 0.97 y 0.96, respectivamente. Estos resultados se obtuvieron al utilizar un conjunto de datos de prueba de la base de datos FER-2013, de la cual se tomó de forma independiente el conjunto de datos de entrenamiento de la CNN. Posteriormente, con la finalidad de asegurar los resultados obtenidos, se midió el desempeño de clasificación de la CNN previamente entrenada, utilizando una base de datos de imágenes adicional. De manera similar, se obtuvo un desempeño en la clasificación de emociones en términos de las métricas accuracy e índice de Jaccard igual a 0.93. Con base en lo anterior, es posible utilizar la arquitectura elegida para la red neuronal convolucional, en un entorno productivo dentro de la empresa Forte Innovation.
Los autores agradecen a la Universidad Tecnológica de León, así como a la empresa Forte Innovation, por la oportunidad que brindaron para la realización de este trabajo, incluida la estadía profesional de Técnico Superior Universitario del alumno Gabriel Ramos Zacarías.
En esta investigación se utilizó un banco de imágenes de dominio público denominado Facial Emotion Recognition (FER-2013), alojado en un repositorio llamado Kaggle, disponible en https://www.kaggle.com/datasets/msambare/fer2013
1. COE, James and Atay, Mustafa. Evaluating Impact of Race in Facial Recognition across Machine Learning and Deep Learning Algorithms. Computers. [En línea]. Vol. 10 (9), p. 113. Septiembre 2021. [Fecha de consulta: 17 de abril de 2024]. https://doi.org/10.3390/computers10090113 ISSN: 2073-431X.
2. FUAD, Tahmid Hasan; Fime, Awal Ahmed; Sikder, Delowar; Iftee, Akil Raihan; Rabbi, Jakaria; Al-Rakhami, Mabrook S., et al. Recent Advances in Deep Learning Techniques for Face Recognition. IEEE Access. [En línea]. Vol. 9, pp. 99112-99142. 09 July 2021. [Fecha de consulta: 17 de abril de 2024]. https://doi.org/10.1109/ACCESS.2021.3096136 ISSN: 2169-3536.
3. SMYS, Smys; Chen, Joy Iong Zong and Shakya, Subarna. Survey on Neural Network Architectures with Deep Learning. Journal of Soft Computing Paradigm. Vol. 2, pp. 186-194. 30 de julio de 2020. ISSN: 2582-2640.
4. O'TOOLE, Alice and Castillo, Carlos. Face Recognition by Humans and Machines: Three Fundamental Advances from Deep Learning. Annual Review of Vision Science. [En línea]. Vol. 7, pp. 543-570. September 2021. [Fecha de consulta: 17 de abril de 2024]. https://www.annualreviews.org/content/journals/10.1146/annurev-vision-093019-111701 ISSN: 2374-4650.
5. ZULFIQAR, Maheen; Syed, Fatima; Khan, Jaleed y Khurshid, Khurram. Deep Face Recognition for Biometric Authentication. International Conference on Electrical, Communication, and Computer Engineering. 24-25 July 2019. Swat, Pakistan. ISBN: 978-1-7281-3825-1.
6. ZOU, Jie; Ji, Qiang and Nagy, George. A Comparative Study of Local Matching Approach for Face Recognition. Transactions on Image Processing. [En línea]. Vol. 16, núm. 10, pp. 2617 - 2628. October 2007. [Fecha de consulta: 17 de abril de 2024]. https://sites.ecse.rpi.edu/~qji/Papers/TIM_FR.pdf ISSN: 1057-7149.
7. PARMAR, Divyarajsinh N. and Mehta, Brijesh B. Face Recognition Methods & Applications. International Journal of Computer Technology and Applications. [En línea]. Vol. 4 (1), pp. 84-86. January 2014. [Fecha de consulta: 17 de abril de 2024]. https://www.researchgate.net/publication/260483303_Face_Recognition_Methods_Applications ISSN: 2229-6093.
8. SHNAIN, Noor Abdalrazak; Hussain, Zahir M. and Lu, Song Feng. A Feature-Based Structural Measure: An Image Similarity Measure for Face Recognition, Applied Sciences. [En línea]. Vol. 7 (8), p. 17. 03 August, 2017. [Fecha de consulta: 17 de abril de 2024]. https://www.mdpi.com/2076-3417/7/8/786 ISSN: 2076-3417.
9. THAKKAR, Ankit; Jivani, Nimeshkumar; Padasumbiya, Jigneshkumar and Patel, Chirag I. A new hybrid method for face recognition. 2013 Nirma University International Conference on Engineering (NUiCONE). India. 2013.
10. ZHAO, Deli; Lin, Zhouchen and Tang, Xiaoou. Laplacian PCA and Its Applications. IEEE International Conference on Computer Vision. 26 December 2007. pp. 1-8. ISBN: 978-1-4244-1631-8.
11. HE, Xiaofei; Yan, Shuicheng; Hu, Yuxiao y Niyogi, Partha. Face Recognition Using Laplacian faces. Transactions on Pattern Analysis and Machine Intelligence. Vol. 27 (3), pp. 328-340. March 2005. ISSN: 0162-8828.
12. MOGHADDAM, Baback; Jebara, Tony and Pentland, Alex. Bayesian face recognition. Pattern Recognition. [En línea]. Vol. 33, pp. 1771-1782. 2000. [Fecha de consulta: 17 de abril de 2024]. Disponible en https://www.cse.unr.edu/~bebis/CS479/PaperPresentations/BayesianFaceRecognition2.pdf ISSN: 0031-3203.
13. GOODFELLOW, Ian J., Erhan, Dumitru; Carrier, Pierre Luc; Courville, Aaron; Mirza, Mehdi; Hamner, Ben; et al. Challenges in representation learning: A report on three machine learning contests. International Conference on Neural Information Processing (ICONIP 2013), pp. 117-124. Daegu, Korea.
14. Forte Innovation. Forte Innovation. [En línea]. 2023. [Fecha de consulta: 30 de octubre de 2023]. https://forteinnovation.mx/
15. RAVANELLI, Mirco and Bengio, Yoshua. Interpretable Convolutional Filters with SincNet. Electrical Engineering and Systems Science. Agosto 2019. ISSN: 0885-8993.
16. KARNATI, Mohan; Seal, Ayan; Bhattacharjee, Debotosh; Yazidi, Anis y Krejcar Ondrej. Understanding Deep Learning Techniques for Recognition of Human Emotions Using Facial Expressions: A Comprehensive Survey. IEEE Transactions on Instrumentation and Measurement. January 2023. ISSN: 1557-9962.
17. ALZUBAIDI, Laith: Zhang, Jinglan; Humaidi, Amjad J., Al-Dujaili, Ayad; Duan, Ye: Al-Shamma, Omran, et al. Review of deep learning: concepts, CNN architectures, challenges, applications, future directions. Journal of Big Data. [En línea]. 2021, Vol. 8 (53). 2021. [Fecha de consulta: 17 de abril de 2024]. Disponible en https://pmc.ncbi.nlm.nih.gov/articles/PMC8010506/ ISSN: 2196-1115.
18. ZHANG, Jinghua; Li, Chen; Yin, Yimin; Zhang, Jiawei y Grzegorzek, Marcin. Applications of artificial neural networks in microorganism image analysis: a comprehensive review from conventional multilayer perceptron to popular convolutional neural network and potential visual transformer. Artificial Intelligence Review. Vol. 56 (6), pp. 1013–1070. May 2022. ISSN: 1573-7462.
19. LIU, Tianyi; Fang, Shuangsang; Zhao, Yuehui; Wang, Peng y Zhang, Jun. Implementation of Training Convolutional Neural Networks. Computer Science. Junio 2015, p. 10. ISSN: 1508-2806.
20. BHATT, Dulari; Patel, Chirag; Modi, Kirit; Pandya, Sharnil and Ghayvat, Hemant. CNN Variants for Computer Vision: History, Architecture, Application, Challenges and Future Scope. Computer Science and Engineering. Vol. 10. October 2021. ISSN: ISSN 2231-329X.
21. WU, Jianxin. Introduction to Convolutional Neural Networks. National Key Lab for Novel Software Technology, Nanjing University, China. 2017.
22. KHAIREDDIN, Yousif and Chen, Zhuofa. Facial Emotion Recognition: State of the Art Performance on FER2013. Dept. of Electrical and Computer Engineering, Boston University, Boston, MA, USA. May 2021.
23. KUSAWA, Sunny. Machine Learning: Quick & easy guide for every beginner. July 4, 2022. Kindle Edition.
24. BADRULHISHAM, Nur and Mangshor, Nur. Emotion Recognition Using Convolutional Neural Network (CNN). Journal of Physics: Conference Series. [En línea]. 1962 (2021). [Fecha de consulta: 17 de abril de 2024]. Disponible en https://www.researchgate.net/publication/353469445_Emotion_Recognition_Using_Convolutional_Neural_Network_CNN ISSN: 1742-6596.
25. OGUNDOKUN, Roseline; Maskeliunas, Rytis; Misra, Sanjay and Damaševičius, Robertas. Improved CNN Based on Batch Normalization and Adam Optimizer. En: Computational Science and Its Applications – ICCSA 2022 Workshops Malaga, Spain, July 4–7, 2022, pp. 593-604. Proceedings, Part V. LNCS: 13380.
26. YAHIA Said, and Mohammad Barr. Human emotion recognition based on facial expressions via deep learning on high-resolution images. Multimedia Tools and Applications. Vol. 80 (16), pp. 25241-25253. 2021. ISSN: 1573-7721.
Buscador interno de artículos: |
|
---|