【论文阅读】基于卷积神经网络和预提取特征的肌电信号分类

Myoelectric Signal Classification Using Convolutional Neural Networks with Pre-Extracted Features

原文:DOI: 10.1109/ICICS55353.2022.9811218

2022

翻译:靠岸学术

目录

摘要

1引言

2背景

[A. 卷积神经网络](#A. 卷积神经网络)

[B. 特征工程](#B. 特征工程)

3材料与方法

[A. CNN集成](#A. CNN集成)

4结果

5讨论

6结论


摘要

This paper presents a model in which time and frequency domain data are pre-extracted from electromyographic (EMG) signals and used as input to a Convolutional Neural Network (CNN) to classify a patient's limb movements. EMG is a source of information for the development of prostheses, but its classification still represents a challenge due to its inherent variability and non-stationary nature. The proposed approach provides representative information about the EMG signal to CNN, which then selects the relevant features and performs the classification more accurately. The investigation evaluated the work using six data sets, with upper and lower limb movements (p < 0.05). The comparison with other similar approaches demonstrates its potential, reaching 98.84% of accuracy, superior to the traditional algorithms. The study suggests the feasibility of employing CNN-type networks in the case of the EMG signal, combined with a pre-processing technique.

Index Terms---Signal Processing, Convolutional Neural Network, Pattern Recognition, Feature Selection, Rehabilitation, BioPatRec.

本文提出了一种模型,该模型从肌电图(EMG)信号中预先提取时域和频域数据,并将其用作卷积神经网络(CNN)的输入,以对患者的肢体运动进行分类。肌电图是假肢开发的信息来源,但由于其固有的变异性和非平稳性,其分类仍然是一个挑战。所提出的方法向CNN提供关于EMG信号的代表性信息,然后CNN选择相关特征并更准确地执行分类。该研究使用六个数据集评估了这项工作,包括上肢和下肢运动(p < 0.05)。与其他类似方法的比较表明了它的潜力,达到了98.84%的准确率,优于传统算法。该研究表明,结合预处理技术,在EMG信号的情况下采用CNN型网络是可行的。

索引词---信号处理、卷积神经网络、模式识别、特征选择、康复、生物模式识别。

1引言

肌电信号 (EMG) 被多个研究领域用作工具或信息来源。生物医学信号的正确处理和滤波必须特别注意。EMG 从大脑通过脊髓传递到肌肉,负责控制运动。该信号具有随机性,但在组织收缩的最初 200 毫秒内,可以识别个体希望执行的运动。它的一些应用包括运动员的身体评估、诊断肌肉问题和康复 [1]。

康复工程利用肌电图(EMG)来创建智能假肢,人工手臂的控制通过残肢信号进行[2]。然而,科学研究提出的解决方案与市售设备之间仍然存在差距。在临床环境中获得的结果与实际应用有很大差异。目前,商业产品不能被认为是稳健的,并且它们的控制并不完全自然[3],这导致了[4]用户的高拒绝率。

模式识别算法经常被用于根据人们希望执行的动作来分类EMG信号。根据文献,信号特征的提取和选择可以改善分类过程,并且专注于特征工程的研究很常见[5]。提取非冗余特征并为给定的分类器选择最合适的特征是费力的任务。因此,对具有自动特征提取和选择的机器学习算法(如卷积神经网络(CNN)[6])的研究已经变得流行,因为它们从过程中消除了这些步骤。然而,最近一项使用深度学习技术进行生物信号分类的研究[8]指出,由于此类信号的固有特性(尤其是噪声和干扰),直接在原始信号上使用CNN是值得怀疑的。通过这种方式,预处理步骤可以缓解这个问题,并为模型提供更全面的稳定性。

本文提出了一种分类方法,该方法不是将原始EMG信号输入CNN,而是输入一组先前从信号中提取的特征,从而为分类器提供格式化的低维信息。所提出的模型分为两个阶段。首先,从原始信号中提取数据,以减轻系统负载,并提供一组具有代表性的特征,这些特征不易受到变异性和噪声的影响。在第二阶段,CNN网络自动从先前的集合中提取最相关的特征,并利用其分类能力来区分运动类别。该方法测试了几种排列方式,以找到一个理想的工作范围,该范围表达了训练和准确性之间最佳的成本效益比。

研究人员已经在许多应用中使用 CNN,包括 EMG 信号分类并获得高质量的结果。然而,他们没有考虑到训练时间的重要性,并且该指标经常达到很高的值 [7, 20]。在这项研究中,我们提出了一个模型,该模型呈现高质量的结果并且可以减轻网络负载,从而实现效率和快速训练。所提出的方法降低了系统输入的维度,从而降低了其计算成本,从而实现了在线训练。某些条件,如疲劳、压力、温度、湿度,甚至电极的位置,都会改变信号的特性,这将不是同质的。此外,在初步测试中,用原始 EMG 信号馈送 CNN,我们没有获得好的结果。这项工作的主要贡献是:

  • 在输入 CNN 之前进行信号预处理:加速训练并提高网络准确性;
  • 与BioPatRec集成:使网络矩阵适应任何数据集。 这一步骤允许与该软件的统计模块集成,为我们提供了比较的基础;
  • 总体性能评估:此类网络计算成本高昂,嵌入式设备可以受益于更轻量级的版本;
  • 肌电信号模式识别的一般性讨论。

2背景

模式识别模型可以分为三个步骤,如图1所示:1) 信号采集、捕获、采样和处理;2) 特征提取和选择;3) 分类。以下小节描述了用于执行该操作的技术------用一组特征而不是原始信号来馈送分类模型。有必要结合 CNN 和 BioPatRec。

A. 卷积神经网络

CNN旨在学习输入和输出之间的关系,并将其知识存储在其滤波器权重中[24]。第一层是卷积层,负责通过卷积的数学运算执行滤波。此操作的结果称为"特征映射"。下一层负责归一化,计算每个输入通道的均值和方差。此步骤减少了训练时间。ReLU(Rectified Linear Unit,修正线性单元)层执行阈值操作,其中小于零的值被赋值为零。全连接层结合了前一步骤学习到的特征,以识别正确的模式。最后,这个分类层根据互斥类别创建输出标签[26]。

Ortiz等人开发了一个用于创建康复策略的开源研究平台,名为BioPatRec [9, 10]。它允许世界各地的研究人员拥有一个集中的研究环境。该软件是模块化的,包含许多分类算法和用于EMG处理的不同资源。这项工作将使用CNN网络增加BioPatRec的功能,以自动调整算法输入到所选数据集。

B. 特征工程

在人工智能领域,最能描述类之间边界的特征集合始终是一个非常重要的议题[11, 12]。随着机器学习技术的进步,为了消除特征提取步骤,涌现出能够自动完成此任务的网络。其他工作以通常的方式实现了用于EMG分类的此类网络,即直接将原始信号输入算法[7, 13, 20]。在本文中,我们提出了一种不同的方法。我们没有提供原始信号(其是非平稳或非同质的),而是首先在时域和频域中提取一组特征,然后将其输入到CNN中。因此,作为分类器输入的信息在数学上更有意义,并且更不易受到噪声的影响。

肌电信号分类通常采用 LDA(线性判别分析)[1],这是一种简单的数学方法,能够提取最具区分性的特征。另一种经过充分研究的算法是 MLP(多层感知器)[14]。作者在 [7] 中进行了一项有趣的研究,使用 Python 和 TensorFlow 评估肌电信号(测试 CNN 网络)。另一项研究 [13] 也实施了一种使用 CNN 的方法,并显示出有希望的结果。最近的一项研究 [20] 采用原始信号来馈送 CNN,并在两个数据集(Ninapro,[15])中获得了 98.31% 和 68.98% 的准确率。

3材料与方法

该研究在一台12核AMD Ryzen 5微处理器上进行了测试,该处理器配备16GB内存和250GB固态硬盘。BioPatRec在Manjaro Linux操作系统上运行。

在本文中,我们将提出的模型与 6 种通用分类器进行了比较。对于这些测试,使用了 6 个数据集 [9]。这些数据代表两种类型的包容性数据:个体(10mov4ch 和 10mov4ch-2)和下肢运动(TMC、TBC 和 UMC),以及一种类型的排他性数据(同步)。它们之间的变化是设置,例如电极放置和其他 [9]。表 I 显示了每组信号的记录协议。图 2 显示了运动的组成及其各自的自由度。

每个数据集都有一个输入和输出大小,因此有必要对 CNN 进行矩阵调整。该工作以自动化的方式将 Matlab 的 CNN 网络集成到 BioPatRec 中,而无需考虑数据集(具有特定格式)。滤波器的调整取决于输入大小、特征数量和要预测的类别。开发者不需要为每种类型的输入创建网络,因为有一个调整矩阵可以适应所有配置。图 III 显示了与数据集相关的运动。

表 I 数据存储库

BioPatRec平台对来自每组信号的数据执行了过滤和分割。每个窗口为200毫秒,重叠50毫秒。对于本研究,该方法采用了标准的BioPatRec过滤程序。特征提取的目的是突出重要信息,拒绝不相关的数据和噪声。本研究中使用的时间-频率特征总结在表II [16, 17, 18, 21]中。

图1. 对信号进行采样后,需要进行滤波并将其分割成窗口。从窗口中提取特征,并以向量形式组织。CNN网络的一般化,展示了卷积、归一化、ReLu和池化层。直接使用原始信号而不进行特征预选择的方法会受到噪声和干扰的影响,这是由于波的性质和可变性造成的。

图 2. 第一个框展示了具有 1 个自由度的运动。第二个框展示了具有 2 个自由度的组合。第三个四边形展示了具有 3 个自由度的可能性。下面的矩形展示了下肢的运动。

A. CNN集成

该研究将 CNN 算法与 BioPatRec 平台相结合。有必要创建一个架构,使输入向量的大小与第一个卷积层相匹配。由于每个数据集都有其采集协议,因此网络输入在信号之间不会是统一的。集合 SimultaneousForearm 是使用八个双极氯化银电极采集的,因此拟合矩阵会将十七个特征组织成一个长度为 136 (8x17) 的一维向量。该调查使用三种不同的架构进行了实验:第一种只有一层卷积层 (CNN-A),第二种有两层 (CNN-B),第三种有三层 (CNN-C)。可以直接在代码中进行更改,用户可以自由地提出不同的网络。例如,表 III 总结了 CNN-C 网络在由 Lower Limb UMC 集合馈送时的状态。

调整超参数:为了找到网络的最佳工作范围,有必要调整一些参数。此步骤没有通用规则,因此需要对多个值进行穷举搜索。该研究使用了 Adam 训练方法(自适应矩估计)。该技术允许自适应学习率,并使用一阶和二阶梯度矩估计来调整学习率。该研究使用的学习率为 0.003,最大 epoch 数为 20,衰减因子等于 0.9。对于批次,它代表在每次迭代中呈现给网络的信息块 [25],我们选择了默认大小 128。正如 [13] 指出的那样,此属性的小值通常会导致较长的训练时间。使用的损失函数是交叉熵。对于参数的选择,使用了网格搜索扫描协议。

统计分析:该研究考虑了两个用于统计分析的指标。第一个是准确率,它衡量算法区分不同运动类别的能力。评估的第二个标准是在训练网络上花费的时间。测试时间在分类器之间无关紧要,因为在所有情况下,它们都很廉价,并且不限制假肢的任何要求。训练时间在计算上是昂贵的,并且在实践中,会使校准和重新校准假肢变得困难。因此,训练时间是比预测时间更相关的指标。

所有测试在数据采集和算法上都遵循相同的协议。所有分析的患者都重复实验10次,获得的值用于计算一组测试的平均值。使用配对t检验来比较两个接近的结果,以验证获得的值是否可以被认为在统计学上相等(p < 0.05)。为了进行比较,还测试了其他四个分类器:多层感知器(MLP)、线性判别分析(LDA)、自组织映射(SOM)和调节反馈网络(RFN)。

表二 特征

表三 网络架构 C

4结果

个体动作:定量结果见表四。在代表个体动作的两个数据集中,CNN-C均取得了较高的准确率(95.73%和98.84%),超过了所有其他评估方法。该方法使用了CNN-C网络和SOM算法之间的配对t检验,以验证所提出的概念与最佳评估算法之间是否存在统计差异。t检验结果保证了两个分类器之间存在统计差异:CNNC优于其他通用算法。关于训练时间,CNN-C在第一组中平均花费1.14秒,在第二组样本中平均花费1.29秒。虽然没有呈现最佳结果(LDA - 0.11秒),但CNN算法的性能具有竞争力。

同步运动:两种CNN模型在此测试中均获得了高准确率:是本研究中的最佳结果。CNNC获得了97.49%的平均准确率,而LDA方法获得的平均准确率为95.22%。在这两种情况下,都存在统计学差异(p < 0.05)。CNN-C获得的训练时间为5.20秒,并非本研究的最佳时间:LDA分类器仅用0.12秒即可完成训练。

下肢:在第一组(TMC)中,CNN-C获得了研究的最佳结果,达到了96.90%的准确率,其次是CNN-B分类器,准确率为96.65%。在分析时间时,CNN-C获得了良好的数值,分别花费了1.42秒。最佳结果再次来自LDA网络,仅用时0.11秒。

分析第二组信号(TBC),CNN混合模型表现出最佳数值,配置C、B和A的平均精度分别为97.58%、97.22%和96.97%。本研究中测试的算法的平均训练时间分别为2.34、1.88和1.10秒。LDA获得了最佳时间,平均时间为0.11。

CNN-C 在 UMC 配置中呈现最佳结果 (97.23%)。第二好的值是 LDA (97.01%),考虑到统计差异 (p < 0.05)。时间分析没有呈现关于其他实验的显著变化:LDA 算法是最好的(训练耗时 0.11 秒),CNN 网络耗时不到 7 秒。

5讨论

表V显示了所提出的模型与其他研究的比较。最近的工作[22]使用了一个轻量级卷积神经网络,并达到了90±5的准确率。作者没有考虑训练时间,而是考虑了系统的总延迟。我们的工作不关注测试时间的测量,因为在所有情况下,测试时间都很短(在CNN情况下为0.0012秒)。另一项最近的工作[23]使用了一个CNN-RNN用于EMG信号的情况,并获得了96.60%的准确率。这些工作表明,在EMG信号的情况下,存在使用深度学习技术的趋势,因为这种网络可以提供更强大的解决方案。我们的方法提供了具有竞争力的结果,且计算成本可接受,这支持了在嵌入式设备中使用此类算法。

表四 实验的总体结果

表五 对比表

在最初的实验中,我们使用了一种直接将原始信号馈送到网络的方法。与其他模型相比,结果并不令人满意。对此的一种假设是,这些类别有很多相似之处,这使得分类过程变得困难。一个动作和另一个动作之间的差异是细微的,这可能增加了分类过程的复杂性。这就是特征提取过程有意义的原因:除了减少可变性之外,它还向网络传递信息,从而增加了类之间的分离边界。图3显示了4个不同信号样本之间的相似性。与例如代表行人或汽车的图像具有明显的差异不同,肌肉信号可能具有非常相似的特征。

图3. 4种不同运动重复两次之间的相似性。

最后,我们可以说深度架构具有更大的潜力。我们的13层CNN-C网络在所有测试中都提供了最佳的准确性,并且训练时间具有竞争力。此外,在我们其他的作品[21]中,我们使用了这里介绍的思想来为整个人群训练一个通用的神经网络,这加强了该方法的潜力。

6结论

本文提出了一种模型,该模型从肌电信号中提取时域和频域的数据特征,并将其用作卷积神经网络的输入。卷积神经网络具有很高的分类能力,并且能够执行自动特征提取。因此,这种类型的网络被用于原始信号。然而,由于肌电信号固有的变异性和非平稳性,我们已经证明,对波形进行预处理并向网络提供代表性的数据特征可以提高分类性能并节省处理时间。此外,由于不同的运动会产生非常相似的信号,因此使用原始肌电信号进行分类的过程变得更加困难。

所提出的模型使用六个不同的数据集进行评估,并与其他流行的分类器进行比较,在所有测试组中均超过了它们。此外,它还与其他最先进的模型进行了比较,并获得了比所有模型更好的性能指标,同时保持了更低的训练时间。目前的方法适用于未来在具有硬件限制的系统上进行部署,并允许对设备进行重新校准。结果令人鼓舞,并可能提高对智能假肢使用的依从性。该分类器已包含在 BioPatRec 分类模块中,并且可以在互联网上免费获得 [19]。