Erfassen des Muskelaktivitätssignals im maschinellen Lernsystem

Vor ungefähr sechs Monaten kam mir die Idee, ein offenes Framework für neuronale Schnittstellen zu schaffen.


In diesem Video erfolgt die Erfassung eines EMG- Muskelsignals mithilfe eines achtkanaligen EMG-Sensors am Unterarm. So entfernen wir durch die Haut ein unverschlüsseltes, muskelverstärktes Aktivierungsmuster von Motoneuronen.

Das Rohsignal vom Sensor über Bluetooth geht an die Android / Android Things App .

Um das System zu trainieren, weisen wir einer bestimmten Handbewegung eine Bewegungsklasse zu. Wenn wir beispielsweise den Stopp-Zustand sowie die Drehung von zwei Motoren in zwei Richtungen benötigen, werden insgesamt fünf Gesten aufgezeichnet. Wir sammeln alles in Dateien und senden es an das neuronale Netzwerk . Am Eingang des Netzwerks haben wir nervöse Aktivität, am Ausgang eine anerkannte Bewegungsklasse.

Beispiel für eine Keras-Netzwerkarchitektur:

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

Ein Server wird verwendet, um die Anwendung und das neuronale Netzwerk zu kommunizieren. Die Client-Server-Lösung erleichtert das maschinelle Lernen mit TensorFlow, ohne den Anwendungscode zu ändern und ständige Neuinstallationen während des Debugging-Prozesses zu vermeiden.

Sie können die resultierenden Klassifizierer mit TFLite oder TF Serving verwenden

Der Systemcode ist hier

In den Zukunftsplänen:

  • Erstellung eines Open-Source-Mehrkanal-EMG-Sensors über USB
  • Experimente zum maschinellen Lernen zur Verbesserung der Zuverlässigkeit des Managements


Mein Freund Garastard spricht in diesem Artikel über unsere Android-Abenteuer mit neuronalen Schnittstellen.

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


All Articles