本研究使用了来自BNCI Horizon 2020
的公共脑电图数据集。 该数据集来自15名年龄在22岁至40岁之间的健康受试者,平均年龄为27岁。 在范例中,实验中的六种功能运动类型包括:
本研究仅使用每个受试者数据集的前两次连续训练,他们分别完成了6类不同的上肢功能动作,共72次。这种模式是基于试验的,线索显示在受试者面前的电脑屏幕上。该范例如图所示。 ||| | – | – | |第0秒|一个十字出现在电脑屏幕上并发出哔哔声。| |第2秒|电脑屏幕上出现一个提示,指示所需的移动。| |第5秒|在试验结束时,受试者回到开始的位置。|
||| |-|-| |数据集采样频率|512 Hz| |滤波频率|0.01 Hz~200 Hz| |通道数量|61个通道信号| |基电极|AFz|
因此,将滤波后的信号分割为0.5s的连续成像周期段,对相应的运动进行编码,使用MNE实现。 分割后,将数据集随机分为训练集和测试集。训练集用于选择最佳特征并训练分类器模型,而测试集用于评估分类。
本文提出了一种用于单上肢六类功能运动解码的小波神经网络模型。
:::: col ::: tip 输入 EEG epoch。 ::: ::: tip 输出 特征向量。 ::: ::: tip 流程
输入脑电图的epoch、母小波名称、max-level分解。
计算WPD的平均值、标准差、范围、中位数、均方根、偏度、峰度和子带比。
将特征进行标准化。
计算特征的协方差矩阵。
返回特征向量。 ::: ::::
:::: col ::: tip 原因
本研究采用的小波分解(WPD)对信号进行了多层次的时频分解,具有良好的时频局部化特性。它克服了傅里叶变换在时域内没有局部化的缺点,在生物医学信号分析中得到了广泛的应用。 ::: ::: tip 特征选取
从WPD的每个频段提取统计特征是最常用和最简单的计算特征向量的方法。本文选取了均值、标准差、极差、中位数、均方根、偏度、峰度和子带比。 ::: 对信号进行n层分解将产生2n个小波系数,小波分解的算法原理表达式为 \(S_{\xi, \eta, 2 f}=\frac{1}{\sqrt{2}} \sum_k h_{k-2 \eta} S_{\xi+1, k, f}\) \(S_{\xi, \eta, 2 f+1}=\frac{1}{\sqrt{2}} \sum_k g_{k-2 \eta} S_{\xi+1, k, f}\)
||| |-|-| |$S_{\xi, \eta, 2 f}$和$S_{\xi, \eta, 2 f+1}$|下一层小波分解的结果| |$S_{\xi+1, k, f}$|是上层分解的结果| |$\xi$|比例系数| |$\eta$|位置系数| |$f$|采样频率| |$g$|低通滤波器| |$h$|高通滤波器| ::::
数据集标准化和使用主成分分析(PCA)来降维是各种机器学习算法的一个众所周知的要求。PCA将样本数据映射到特征矩阵的主成分空间,以保留大部分数据差异,并且具有较低的维数。主成分向量彼此正交,所以它们的方差最大。主成分Pk由n维原始数据X组合而成,其表达式如下: \(P_k=a_{k 1} x_1+a_{k 2} x_2+\cdots+a_n x_{k n}, \sum_i a_{k i}^2=1\)
::: tip 基本思想 将小波基适应训练数据,在输入层将变量引入神经网络,在隐层将输入变量转换为母小波的展开和平移,最后在输出层估计出目标值的近似值。 :::
在本研究中,我们将多维小波函数$\phi_j(x)$作为隐层的超参数,然后将激活函数用于输出层。隐藏层只是在输入层和输出层之间添加更多的神经元,输出层中的神经元依赖于分类的数量。
输出值Y的计算定义为 \(Y_{[i=1,2,3 \ldots]}=g_\lambda(x, w)=w_{N+1}+\sum_{j=1}^\lambda w_j \cdot \varphi_j(x)+\sum_{k=1}^m w_k \cdot x_k\)
$X_m$ | 输入层中的数据 |
$N = 2m +α, α\in(0,9)$ | 隐层神经元数量,由经验公式确定 |
$\phi_j(x)$ | 多维小波函数 |
$w_k$ | 直接连接 |
$w_j$ | 网络权值 |
$w_{\zeta(ij)}$ | 平移因子 |
$w_{\xi(ij)}$ | 扩张因子 |
小波神经网络不适合像sigmoid神经网络那样将初始值初始化为随机值,因为平移因子和扩张因子的初始化对神经网络的性能有重要影响。目前已经提出了各种初始化方法: \(w_{(\xi) i j}=0.5\left(N_i+M_i\right)\) \(w_{(\zeta) i j}=0.2\left(M_i-N_i\right)\) 其中$M_i$和$N_i$定义为输入$X_m$的最大值和最小值。
小波神经网络算法起源于前馈神经网络,使用了反向传播的基本思想,即找出每个权重对误差的贡献百分比。$E$的定义和更新执行如下 \(E=\sum \frac{\left(y_t-y_p\right)^2}{2}\) \(w_k=w_k-l \frac{\partial E}{\partial w_k}\) \(w_j=w_j-l \frac{\partial E}{\partial w_j}\) \(w_{(\xi) i j}=w_{(\xi) i j}-l \frac{\partial E}{\partial w_{(\xi) i j}}\) \(w_{(\xi) i j}=w_{(\xi) i j}-l \frac{\partial E}{\partial w_{(\xi) i j}}\)
$y_t$ | 最终输出 |
$y_p$ | 是期望输出 |
$l$ | 是学习率 |
$dropout$参数 | 设置为$10^{−8}$ |
:::: col ::: tip 输入 一组脑电图训练数据Xm,隐藏节点数和分类数。 ::: ::: tip 输出 预测标签。 ::: ::: tip 流程
::: ::::
结果记录和评估使用10倍交叉验证。 使用精度
、kappa值
来评估所提方法在六分类任务的运动分类中的分类性能。
采用配对t检验对不同方法的性能参数进行统计学比较,显著性水平设置为P = 0.05
在特征提取阶段,利用WPD对MI脑电图信号进行分解,从每个频段提取统计特征。然而,不同的母小波函数具有不同的时频特性。为了探究不同母小波的时频特性对结果的影响,我们分别实验了8个不同的母小波函数
实验结果表明,coif1母小波用于六级分解提取特征的WPD分类效果优于其他母小波。coif1母小波的平均分类准确率最高
激活函数对神经网络有重要影响,WPD中使用的不同母小波对分类性能也有重要影响。小波神经网络的母小波激活函数可以是任意多维小波函数。但在文献中,常用的有三种,
超参数函数及其导数如图所示 与其他激活函数相比,Mexican Hat在分类性能上与sigmoid、Morlet、POLYWOG3有显著差异(p值< 0.05),因此,我们选择Mexican Hat小波函数
作为小波神经网络分类器的最佳超参数函数。
当成像段时间设置为0.1 s时,信号数量明显减少,这可能是信号质量较差的原因。
当成像段时间设置为1.0 s时,平均准确率也会显著降低(p值< 0.05)。因此,我们选择0.7s作为MI脑电图解码的成像段时间,获得了较好的解码精度。
在这项研究中,受试者执行了单个上肢的6个功能性动作。在以往的实验中,采用coif1母小波
进行六级分解,以Mexican Hat小波函数
为超参数,将成像段的时间设置为0.7s
,选取61个通道数据,取得了最佳的准确率86.27±6.98%。当仅使用FCz、C3、Cz、C4和CPz 5个通道时,其准确度为36.95±11.31%。当使用41个通道的脑电图数据时,准确率达到84.98±7.69%。实验结果表明,33%的信道(61减少到41)减少只导致约2%的精度下降,但计算时间减少了20 s。
适当的通道数量可以提高分类效率。
与LDA、SVM、ANN和KNN相比,小波神经网络的准确率提高了15 ~ 40%,证明了该方法的有效性。