Introducción
La búsqueda continua de prótesis para mano más sofisticadas y de bajo costo, obedece a que una parte de la población se enfrenta con el problema de discapacidad, debido a la amputación de alguna extremidad. En Estados Unidos las estadísticas indican que existen alrededor de 500,000 amputaciones debajo del codo funcional [1] [2]. En México, de acuerdo con cifras del Instituto Nacional de Estadística y Geografía (INEGI) en 2010, existían 785,000 personas carentes de una o varias extremidades (amputadas) [3].
En 2013, la Academia Nacional de Cirugía reportó que el número de personas amputadas en México es de 75 personas diarias [4]. En 2014, de acuerdo con diversas fuentes, el número de amputados era alrededor de 935,000 personas [3]. Respecto a la causa de las amputaciones en México, la Secretaria de Salud [3] señala que son causadas por: amputaciones traumáticas (accidentes) 16%, amputaciones por enfermedades vasculares (diabetes, hipertensión, etc.) 81%, amputaciones por cáncer y congénitas 3%.
Por su parte, las amputaciones de extremidades superiores repercuten en un problema de salud pública, debido a que estas personas presentaran diversos grados de discapacidad, que por lo regular se presenta durante un periodo de su vida laboral activa [3]. Por esta razón, es de importancia social el estudio de las prótesis y algoritmos que ayuden a un mejor control de estas por parte del usuario. El proceso de rehabilitación de pacientes amputados es largo, tedioso y doloroso. En los pacientes amputados y rehabilitados se genera un impacto social importante relacionado con un cambio en el modo de vivir de las personas, en su comunidad, su ambiente físico, sus miedos y aspiraciones, su cultura, entre otros [4]. Por otro lado, la tecnología juega un papel importante en beneficio de los amputados, se busca prescindir de los sockets y hacer una osteointegración, además del uso de las prótesis mioeléctricas [5].
Actualmente, existe la tendencia de utilizar señales de electromiografía (EMG) como una forma de realizar el control de una prótesis, que tengan cierta funcionalidad extra, como movimiento, yendo más allá de una prótesis estética, y con ello ayudar a la población que sufre de discapacidad, a tener mejores oportunidades de integración en la sociedad [5].
La señal de EMG es utilizada en este tipo de prótesis ya que brinda una representación del potencial eléctrico generado por la despolarización de la membrana exterior de las fibras musculares, lo cual es utilizado para interpretar la intención de movimiento [6]. En las últimas décadas, ha habido un auge en la investigación de sistemas que clasifiquen las señales electromiográficas producidas por movimientos específicos de la mano, buscando que se tenga la capacidad de realizar múltiples funciones con un rendimiento confiable [5].
Existen diversos estudios orientados a obtener mejores clasificadores de señales de EMG para su uso en prótesis de mano. En [7], las señales de EMG se clasificaron, a partir de los coeficientes wavelet de la señal y seguida de una reducción de dimensión mediante un análisis de componentes principales (PCA); posteriormente, se utiliza una red neuronal artificial obteniendo con ello una clasificación con una precisión del 94%. En [8], se propone el uso de mínimos cuadrados regularizados con kernel (Kernel Regularized Least Squares) para la clasificación de señales EMG, se propone el uso de acelerómetros para una mejor clasificación. En [9], se realiza un preprocesamiento de datos mediante espectrograma y PCA en conjunto con máquinas de vectores de soporte (SVM), demostrando una precisión de clasificación mejorada.
En [10], se utilizaron redes neuronales artificiales (ANN, por sus siglas en inglés), los resultados del entrenamiento arrojaron que la precisión más baja es mano cerrada y la precisión general es del 85.7%. A partir del resultado general de la clasificación, la precisión más alta fue mano abierta, trípode y fuerza de mano. En [11], reportan el uso de redes neuronales artificiales en una prótesis robótica para pacientes amputados con desarticulado de muñeca. La eficiencia alcanzada es del 100% en la clasificación de movimientos de flexión, extensión y relajación de la mano. En [12], se describe un trabajo para controlar una mano usando EMG y una red convolucional con ocho capas, terminando en dos capas completamente conectadas, sin embargo, solo utilizan un individuo para la evaluación. Además, ellos determinaron que el índice de clasificación obtenido es insuficiente para el control de la mano mioeléctrica.
En [13], los autores clasificaron 50 movimientos de mano usando redes neuronales convolucionales, utilizaron una base de datos Ninapro [14] con señales EMG de movimientos de mano de 78 personas; utilizaron dos conjuntos de datos para la validación, el primero obtuvo una exactitud (accuracy) de 66.59% ± 6.40%, en el segundo, la exactitud fue de 60.27% ± 7.7%.
Por otro lado, el uso de sistemas de visión se aplica también a mejorar la funcionalidad de manos prostéticas [15], se aplican técnicas de redes neuronales convolucionales para clasificar los objetos almacenados en la base de datos COIL100 [15], se pretende detectar el objeto para elegir el agarre más apropiado.
A pesar de los avances realizados en la clasificación de señales EMG, aún existen problemas que es necesario superar tales como la falta de control intuitivo y confiable de la prótesis, la precisión del sistema de predicción y detección de señales EMG para convertir la intención en movimiento [2] [16] [17].
En este artículo, se realiza una comparación entre dos métodos para la clasificación de tres movimientos de mano, al realizar agarres: cilíndrico, esférico y de gancho, utilizando redes neuronales artificiales de aprendizaje profundo con Long Short-Term Memory (LSTM) y redes neuronales artificiales de capas completamente conectadas. Las señales de EMG utilizadas en este trabajo para realizar las clasificaciones de tres agarres de mano, se obtuvieron de la base de datos sEMG for Basic Hand Movements Data Set [18] [19], almacenadas en el repositorio de machine learning, la cual es pública y útil para este tipo de análisis; esta consta de seis agarres: cilíndrico, esférico, gancho, precisión, palmar y lateral, que son los de mayor uso en las actividades de la vida cotidiana.
Metodología
Señales EMG
Las señales EMG analizadas en este artículo se obtuvieron de la base de datos sEMG for Basic Hand Movements Data Set [18] [19]. Incluye señales electromiográficas relacionadas a seis movimientos de mano de seis personas sanas. Cinco sujetos (dos hombres y tres mujeres) con rango de edad entre 20 años y 22 años, realizaron 30 veces los seis agarres, cada agarre con duración de 6 s; además, un sujeto masculino de 20 años realizó 100 veces los seis agarres durante 3 días consecutivos, cada agarre con duración de 5 s.
Protocolo de registro de las señales EMG
En el protocolo de registro de la señal EMG [18] [19], la velocidad y la fuerza fueron dejadas intencionalmente a la voluntad de cada uno de los participantes. Se les pidió a los sujetos que llevaran a cabo de manera frecuente los seis movimientos que pueden ser considerados como agarres comunes que ejecutamos a diario con las manos.
La señal EMG fue registrada con dos sensores diferenciales EMG, colocados en la superficie del antebrazo, en el músculo flexor cubital del carpo y músculo flexor radial largo del carpo. Las señales fueron adquiridas con un sistema EMG Delsys Bagnoli de 2 canales [18] [19]. La señal fue registrada en la computadora a través de una tarjeta de adquisición de datos NI USB 6009.
Las señales de los agarres de la base de datos se adquirieron a una frecuencia de muestreo de 500 Hz, con una duración de 6 s para el primer grupo (5 sujetos) y 5 s en el segundo (1 sujeto). Las señales se filtraron utilizando un filtro Butterworth, pasa banda con frecuencias de corte de 15 Hz y 500 Hz, se utilizó un filtro de Notch a 50 Hz para eliminar los artefactos de interferencia de línea [18] [19].
Modelos de clasificación de agarres
Se probaron dos arquitecturas de redes neuronales. El primer modelo fue una arquitectura de red basada en capas convolucionales, redes LSTM y capa completamente conectada. Para este modelo se utilizaron como entrada los datos crudos de la señal EMG. El segundo modelo fue una red neuronal de capas completamente conectadas y como entrada, se utilizaron cinco características extraídas de la señal EMG.
Para valorar el desempeño de los dos modelos de clasificación implementados se determinaron los siguientes parámetros empleando datos de prueba: exactitud, sensibilidad (Se), especificidad (Es) y valor predictivo positivo (VPP). Debido a que se trata de un sistema de clasificación multiclase, los últimos tres parámetros se calcularon asumiendo un clasificador del tipo One-vs-All (uno contra todos).
Clasificación utilizando la red neuronal de aprendizaje profundo LSTM
Para construir el algoritmo de la red LSTM, se utilizó el programa Keras (librería de redes neuronales) [20]. La base de datos utilizada cuenta con 450 señales EMG con duración de 5 s y 6 s. Se utilizó el 90% de los datos crudos (405 señales EMG) para el entrenamiento y validación, considerando que el conjunto de datos, están balanceados. Se utilizó el 10% de los datos (45 señales EMG) para prueba.
Arquitectura de la red neuronal de aprendizaje profundo LSTM
La arquitectura de la red LSTM desarrollada, toma como entrada la señal de EMG cruda de los tres agarres (Figura 1). La arquitectura de red está compuesta por cuatro capas: dos capas convolucionales, una LSTM y una capa completamente conectada. La capa de entrada es convolucional de una dimensión, se aplicaron cuatro filtros de tamaño 200 y función de activación ReLU. Posterior a esto, se aplicó un maxpooling de una dimensión de tamaño 12 con un stride de ocho. Después, se agregó una capa convolucional de una dimensión, con las mismas características de la capa de entrada a excepción de la función de activación que fue una sigmoide, en la siguiente se utilizó un maxpooling de una dimensión de tamaño 12 y stride de ocho. Posteriormente, se utilizó una capa de tipo LSTM de cuatro celdas. Finalmente, la capa de salida es una capa completamente conectada de tres neuronas, una por cada clase a clasificar. Se espera que la red LSTM con capas convolucionales, modele las dependencias en el tiempo de la señal EMG y como consecuencia se tenga una mejor clasificación.
Entrenamiento de la red
Entrenar una red significa encontrar el mejor conjunto de pesos para hacer predicciones. El modelo se entrenó en 600 épocas con un tamaño de lote de 10. Para el entrenamiento de la red, se utilizó el 90% de los datos (405 señales EMG); el resto (45 señales EMG) se usó en la etapa de prueba para verificar el desempeño del modelo con datos no utilizados en el entrenamiento.
Compilación del modelo
Una vez que la red neuronal fue definida se seleccionó una función de pérdida, un algoritmo de optimización y las métricas de rendimiento. La función de pérdida empleada fue la entropía categórica, se utilizó el optimizador Adam [21], un optimizador efectivo completo con escalonamiento adaptativo. La métrica de rendimiento utilizada fue la eficiencia de la clasificación, evaluando la exactitud (accuracy) general del modelo.
Clasificación utilizando la red neuronal de capas completamente conectadas
Para construir la red neuronal se utilizó el modelo secuencial, el número de neuronas de la capa de entrada está definido por el número de entradas a la red neuronal, para lo cual se utilizaron cinco neuronas, una por cada característica utilizada. No existe ningún procedimiento específico que indique de una manera clara el número de neuronas de la capa intermedia. Se utilizó el método empírico, este método consiste en entrenar la red varías veces con un número de neuronas diferentes en la capa intermedia. Se seleccionó el número de neuronas con un menor error sobre los datos de validación.
Extracción de características
La eficiencia de un clasificador se beneficia de un método de extracción de características que cuantifique un conjunto de datos con características que distingan de manera óptima, un cierto conjunto de datos de otros. Las características de la señal que se utilizaron para la clasificación de movimientos fueron las mismas utilizadas en [22]: valor medio absoluto (MAV), número de cruces por cero, cambio de signo de pendiente, longitud de forma de la onda y media cuadrática [22].
La característica MAV es un promedio del valor absoluto de la amplitud de la señal EMG en un segmento, que se puede definir por la Ecuación 1.
El cruce por cero (ZC) es una medida de la información de frecuencia de la señal EMG que se define en el dominio del tiempo, el cálculo se obtuvo utilizado la Ecuación 2.
Cambio de signo de la pendiente (SSC) se define como el número de veces que la pendiente de la señal EMG cambia de signo. Hay un umbral para evitar el ruido de fondo. Este cálculo se realizó utilizando la Ecuación 3 y la Ecuación 4.
Longitud de onda (WL) se expresa como la longitud acumulada de la forma de onda EMG en el segmento de tiempo. La Ecuación 5 representa como se realizó el cálculo.
Media cuadrática (RMS) también es similar al método de desviación estándar. La definición matemática de la característica se puede expresar como en la Ecuación 6.
Arquitectura de la red neuronal de capas completamente conectadas
La arquitectura de la red desarrollada (Figura 2), está formada por tres capas completamente conectadas. La capa de entrada consta de cinco neuronas una para cada característica de la señal, una capa oculta de 10 neuronas, la capa de salida es una capa completamente conectada de tres neuronas, una por cada posible agarre a clasificar.
La función de activación que se utilizó para la capa de entrada fue la función ReLU. En la capa oculta y en la capa de salida se empleó la función sigmoide. Para entrenar el modelo de la red se utilizó la función fit.
Entrenamiento y compilación
El modelo de entrenamiento consistió en entrenar la red 3500 épocas con un lote (batch) de tamaño 10. Para el entrenamiento de la red se utilizó el 90 % de los datos (405 señales EMG) y el 10 % (45 señales EMG) restante se reservó para la etapa de prueba.
La entropía categórica fue utilizada para la función de pérdida. Al igual que en la red LSTM un modelo de compilación fue requerido. La métrica de rendimiento de interés es la eficiencia de la clasificación, por lo que se utilizó el comando accuracy y el optimizador Adam [20].
Resultados y discusión
Entrenamiento de la red neuronal LSTM
El modelo de la red LSTM entrenó 600 épocas tardando 4,200 segundos en el entrenamiento. Se obtuvo una exactitud (accuracy) de 1.00. La función de pérdida (loss) obtenida fue de 0.0107 con la cual se puede medir que tan bueno o malo fue el resultado de la predicción en relación con el resultado correcto. Idealmente, se espera que el coste sea cero, es decir, sin divergencia entre valor estimado y el esperado. A medida que se entrena el modelo se van ajustando los pesos de las interconexiones de las neuronas de manera automática hasta obtener buenas predicciones.
Para determinar la arquitectura más apta para la clasificación de los movimientos se realiza el cálculo de la matriz de confusión. La Tabla 1, muestra la matriz de confusión del entrenamiento de la red LSTM. Como se puede observar para el entrenamiento se utilizaron 405 datos, de los cuales 135 fueron clasificados como agarre cilíndrico, 140 se clasificaron como agarres de gancho y 130 como agarres esféricos.
Entrenamiento de la red neuronal de capas completamente conectadas
La red de capas completamente conectadas se entrenó 3,500 épocas; tardó 3,500 s en entrenamiento. A diferencia de la red LSTM, ésta presenta una precisión de 0.8998, por lo que su entrenamiento no es exacto. A pesar de que se entrenó por más épocas, no termina de aprender correctamente, viéndose reflejado en un alto valor de la función de pérdida obtenido de 0.3198.
Se realizó la matriz de confusión para el entrenamiento de la red de capas completamente conectada (ver Tabla 2), y el entrenamiento no fue satisfactorio. La red de capas completamente conectadas se entrenó con 405 datos, de los cuales, 114 agarres fueron clasificados como cilíndricos, 126 agarres como gancho y 114 como esféricos. El 12% de los datos usados en el entrenamiento no se clasificaron correctamente.
Desempeño de los clasificadores utilizando los datos de prueba
Las pruebas de los clasificadores se realizaron utilizando el 10% de los datos de la base de datos reservados para este propósito.
Desempeño de la red neuronal LSTM
La Tabla 3 muestra la matriz de confusión con los datos de prueba de la red LTSM. Los datos que se utilizaron para la prueba fueron 45, de los cuales solo 40 fueron clasificados correctamente (exactitud de 89%). En el caso del agarre cilíndrico 14 fueron clasificados acertados y uno de manera errónea, 9 agarres de gancho y solo uno no satisfactorio, por último 17 esféricos fueron correctos y tres incorrectos.
La Tabla 4 muestra los parámetros de evaluación del desempeño para la red LSTM, donde se puede apreciar que este modelo presenta altos valores de especificidad para identificar los agarres, mayor a 90% en cada caso.
Agarre Parámetro |
Sensibilidad (%) |
Especificidad (%) |
VPP (%) |
---|---|---|---|
Cilíndrico | 93 | 90 | 82 |
Gancho | 90 | 97 | 90 |
Esférico | 85 | 96 | 94 |
La sensibilidad (proporción de aciertos de una clase en particular, en porcentaje) con menor valor de este modelo se presentó al identificar el agarre esférico con un 85 % (aun así, es considerablemente alta).
Por otra parte, el VPP se presentó mayor al 90 % para los agarres esférico y de gancho, lo que indica una baja probabilidad de error cuando la red indica como salida a cualquiera de estos dos agarres.
Desempeño de la red neuronal de capas completamente conectadas
El desempeño del modelo de red de capas completamente conectadas empleando los datos de prueba (45 datos), se muestran en la matriz de confusión de la Tabla 5, en la que se observa la exactitud obtenida del 80 %, que corresponde a 11 de agarre cilíndrico, 9 de agarre de gancho y 16 de agarre esférico clasificados de manera correcta.
Los parámetros para evaluar el desempeño de la red de capas densas se muestran en la Tabla 6.
Agarre Parámetro |
Sensibilidad (%) |
Especificidad (%) |
VPP (%) |
---|---|---|---|
Cilíndrico | 74 | 90 | 78 |
Gancho | 90 | 89 | 69 |
Esférico | 80 | 92 | 88 |
Para este modelo, la sensibilidad alcanza un 90 % solo para el agarre cilíndrico, siendo menor o igual al 80 % para los otros dos agarres. El modelo presentó una especificidad por encima del 89% en todos los agarres, sin embargo, el valor predictivo de positivos solo alcanzó un 88 % para el agarre esférico, siendo de 78 % y 69 % para los agarres cilíndricos y de gancho respectivamente. Esto último implica una elevada probabilidad de error cuando el modelo indica a su salida a los agarres cilíndricos y de gancho.
Desempeño de la red LSTM comparada con la red de capas completamente conectadas
Se realizó una comparación en la clasificación de los movimientos cilíndrico, esférico y gancho entre la red LSTM y la red de capas completamente conectadas usando como métrica la sensibilidad. Como se observa en la Figura 3, la red LSTM clasifica de manera más acertada obteniendo mayores porcentajes de agarres identificados correctamente. Del mismo modo, los parámetros de especificidad y valor predictivo de positivos son superiores para la red LSTM. En base a estos resultados, se puede decir que en cuanto a porcentaje de efectividad la red neuronal de aprendizaje profundo LSTM presenta mejor desempeño.
La red neuronal LSTM obtuvo una exactitud general del 89%, valores más altos a los presentados en [13], donde se reportó una exactitud de 66.59% ± 6.40% en la clasificación de movimientos de mano utilizando redes convolucionales en la clasificación, los resultados no mejoraron al usar aumentación de datos.
Conclusiones
En este trabajo se presentó una nueva arquitectura de red neuronal basada en capas de redes convolucionales y LSTM aplicadas a identificar la intención de movimientos cilíndrico, esférico y gancho. Además, se diseñó un sistema con arquitectura de redes de capas completamente conectadas para evaluar el desempeño de las RNA contra el diseño propuesto con LSTM, en cuanto a tiempo y calidad de exactitud.
Para el caso de clasificar señales EMG, se concluye que la arquitectura LSTM es más apropiada. El análisis gráfico de la clasificación de movimientos mostró tener mayor exactitud en la red LSTM (89%) que en la red de capas completamente conectadas (80%). En el resultado de la matriz de confusión de entrenamiento se observa como la red LSTM clasifica correctamente los movimientos en comparación a la red de capas completamente conectadas que presenta errores en su entrenamiento. Los resultados muestran claramente que:
En cuanto a tiempo de ejecución la red neuronal de capas densas obtiene las mejores respuestas, siendo este un factor relevante al momento de ser implementado en hardware y su futura aplicación en prótesis.
En cuanto a exactitud para clasificar los movimientos, la red LSTM obtiene resultados muy acertados y las herramientas estadísticas utilizadas establecen con 89% de confianza que la red clasificará correctamente los movimientos de las señales EMG.
El uso de estas redes neuronales es de gran ayuda para predecir movimientos utilizando señales EMG. En base a los resultados de clasificación, se pueden aplicar comandos que sean capaces de realizar los movimientos en una prótesis para personas que sufren de alguna amputación del miembro superior distal.
Debido a que la red propuesta es relativamente simple, se propone como un trabajo a futuro, su implementación en un dispositivo embebido como un procesador digital de señales o un microcontrolador de altas prestaciones, esto con el fin de acercar la posibilidad de incorporarla a una prótesis real y facilitar la movilidad del usuario.
Se propone, además, la creación de un repositorio más grande de señales de EMG, con el fin de aumentar la generalización al entrenar la red e incrementar el número de agarres de mano.