使用 Myo Armband 进行手势识别的机器学习

Machine Learning for gesture recognition with Myo Armband

我正在尝试开发一个模型来识别 Myo 臂带的新手势。 (这是一个臂环,拥有 8 个电子传感器,可以识别 5 个手势)。我想记录新手势的传感器原始数据,并将其提供给模型,以便它能够识别它。

我是 machine/deep 的新手,我正在使用 CNTK。我想知道最好的方法是什么。

我正在努力了解如何创建培训师。输入数据看起来像 that 我正在考虑使用这 8 个值中的 20 组(它们在 -127 和 127 之间)。所以一个标签就是20组值的输出。

我真的不知道该怎么做,我看过一些教程,其中图像与标签相关联,但这不是同一个想法。即使在训练完成后,无论我做什么,我如何才能避免模型识别这个手势,因为它是唯一接受过训练的手势。

一个简单的入门方法是创建 161 列(20 个时间步长中的每个时间步长 8 列 + 指定标签)。你会像

这样重新排列列
emg1_t01, emg2_t01, emg3_t01, ...,  emg8_t20, gesture_id

这将为您提供正确的 2D 格式,以便在 sklearn 中使用不同的算法以及在 CNTK 中使用前馈神经网络。您将使用前 160 列来预测第 161 列。

完成该工作后,您可以对数据建模以更好地表示它包含的自然时间序列顺序。您将远离 2D 形状,而是创建 3D 数组来表示您的数据。

  • 第一轴显示样本数
  • 第二个轴显示时间步数 (20)
  • 口渴轴显示传感器数量(8个)

有了这个形状,您就可以在 CNTK 中使用一维卷积模型 (CNN),该模型遍历时间轴,一步步学习局部模式。

您可能还想研究经常用于处理时间序列数据的 RNN。然而,RNN 有时难以训练,recent paper 建议 CNN 应该是处理序列数据的自然起点。