Capturando la señal de actividad muscular en el sistema de aprendizaje automático

Hace unos seis meses, se me ocurrió la idea de crear un marco abierto para interfaces neuronales.


En este video, la captura de una señal muscular EMG ocurre usando un sensor EMG de ocho canales en el antebrazo. Por lo tanto, eliminamos a través de la piel un patrón de activación de las neuronas motoras no encriptado y mejorado por los músculos.

La señal sin procesar del sensor a través de Bluetooth va a la aplicación Android / Android Things .

Para entrenar el sistema, asignaremos una clase de movimiento a un gesto específico de la mano. Por ejemplo, si necesitamos el estado de "parada", así como la rotación de dos motores en dos direcciones, registraremos cinco gestos en total. Recopilamos todo en archivos y lo enviamos a estudiar en la red neuronal . A la entrada de la red, tenemos actividad nerviosa, a la salida, una clase reconocida de movimiento.

Ejemplo de arquitectura de red Keras:

model = Sequential() # 8     8   model.add(Dense(36, activation='relu', input_dim=64)) model.add(Dense(20, activation='relu')) model.add(Dropout(0.2)) model.add(Dense(16, activation='relu')) # 5   model.add(Dense(5, activation='softmax')) sgd = SGD(lr=0.01, decay=1e-6, momentum=0.9, nesterov=True) model.compile(loss='categorical_crossentropy', optimizer=sgd, metrics=['accuracy']) 

https://www.kaggle.com/kyr7plus/naive-classifier

Se utiliza un servidor para comunicar la aplicación y la red neuronal. La solución cliente-servidor facilita el script de aprendizaje automático utilizando TensorFlow, sin cambiar el código de la aplicación y evitando reinstalaciones constantes durante el proceso de depuración.

Puede usar los clasificadores resultantes usando TFLite o TF Serving

El código del sistema está aquí.

En los planes futuros:

  • Creación de un sensor EMG multicanal de código abierto que funciona a través de USB
  • Experimentos de aprendizaje automático para mejorar la confiabilidad de la administración


Mi amigo garastard habla sobre nuestras aventuras de Android con interfaces neuronales en este artículo .

Source: https://habr.com/ru/post/437888/


All Articles