3.酒精性脑电信号分类

论文名称 Classification of Alcoholic EEG Signals Using a Deep Learning Method
期刊 IEEE SENSORS JOURNAL 4.325/Q1
方法 本文提出了两种基于深度学习的酒精性脑电信号分类算法,以进行比较。在算法1中,基于主成分分析(PCA)的特征提取技术用于提取代表性成分,然后将提取的特征用作人工神经网络(ANN)的输入进行分类。在算法2中,原始EEG数据直接用作深度学习方法的输入:"长短时记忆(LSTM)",用于检测酒精中毒。
结论 实验结果表明,提出的算法2的平均分类准确率为93%,而提出的算法1的平均分类正确率为86%。与现有算法的比较评估表明,算法2也优于文献中的其他竞争算法。

主要工作

  • 设计并验证一种新的框架,用于尽可能准确地自动识别酒精和非酒精受试者;
  • 探索应用深度学习算法应用特征提取方法的意义;
  • 研究拟议特征的可持续分类模型,以区分主题组;
  • 与现有方法相比,提高分类精度,因为深度学习方法自动优化参数,并且有效执行特征提取过程需要较少的先验专家知识;
  • 建立一个低成本的时间模型。据我们所知,这是首次将深度学习技术应用于脑电数据中酒精和非酒精受试者的分类,并使用特征提取方法,而不使用特征提取法。

数据

对每个受试者进行了120次单独试验。如果受试者是酗酒者,所有试验都被标记为酒精中毒。所有试验均以256Hz采样,64个电极放置在受试者头皮上1秒。分类方法需要确定受试者是否被诊断为酒精中毒或是对照受试者。

分类算法

Img — ::: tip 算法1 基于ANN方法

  • 首先对原始EEG数据进行主成分分析(PCA),以提取重要成分,并降低信号中的数据维数。
  • 然后,将提取的成分用作ANN模型的输入,用于从控制信号中对酒精信号进行分类。 ::: 主成分分析(PCA)是一种信号分析方法,用于确定多维数据集的主要成分,该方法使用主成分来减少原始数据的特征.主成分分析的结果是,主成分的贡献从高到低排列,因此,例如,第一成分对数据中的方差具有最大信息。 ::: warning 为什么使用PCA? EEG数据总是复杂和高维的,不适合直接用作分类模型的输入。减少维数的目的是允许最小的信息损失。在应用主成分分析后,大多数数据进入低维空间,适合将其用作深度学习或机器学习分类器的输入源。换句话说,由于EEG数据包含来自人类头皮上多个位置的记录,并且记录的信号由混合的脑活动组成,因此该方法用于计算独立分量,以帮助观察神经元活动的原始特征。 ::: 人工神经网络(ANN)是一个受大脑启发的系统,由输入层中间层输出层组成。

本研究在两个单独的实验中使用了主成分分析方法结果中的30个主成分,然后使用原始脑电数据集中的64个通道。使用2层和4层拓扑结构的浅层和深层人工神经网络进行了实验

::: warning 为什么使用ANN? 具有两层或多层的多层神经网络(MLP)是前馈结构中最常用的技术,因为其训练过程快,易于实现. :::

PCA+ANN 模型A

模型A模型是PCA的结果加上一个简单的两层人工神经网络。第一层包含30个主成分作为输入神经元,还有一个中间层包含50个神经元从输入中学习,节点使用tanh激活函数。最后,有一个输出层,其中1个节点对应于1个可能的酒精类或非酒精类。sigmoid输出层用于执行该分类。

PCA+ANN 模型B

模型B模型是一个简单的两层人工神经网络,从原始EEG数据中进行反馈。第一层包含64个通道作为输入神经元,还有一个中间层包含100个神经元以从输入中学习,节点使用Relu激活函数。最后,有一个输出层,其中1个节点对应于1个可能的酒精类或非酒精类。sigmoid输出层用于执行该分类。

PCA+ANN 模型C

模型C模型是一个四层人工神经网络,从原始脑电数据中获取信息。第一层包含64个通道作为输入神经元,有三个中间层包含100、50或32个神经元从输入中学习,节点使用Relu激活函数。具有1个节点的输出层对应于1个可能的酒精类或非酒精类。sigmoid输出层用于执行该分类。 ::: warning 为什么使用sigmoid函数? 对于最后一层使用S形函数的主要原因是,该函数的结果存在于0和1之间,因此对于必须预测概率作为结果的模型非常有用。 ::: ::: warning 为什么使用Relu函数? 对于中间层,ReLU函数在我们的ANN模型中的总体性能优于tanh,因为它比tanh的计算成本更低,并且与此架构中的tanh函数相比,ReLU更好地加速了模型的收敛。 :::

数据划分

训练测试分割为20%的测试和80%的训练数据

正向传播

在该步骤中,通过计算下面所示的两个步骤来计算每个层的激活。这些激活沿正向从输入层流向输出层,以生成最终输出。

z = weight ∗ input + bias
a = Activation Function (z)
So, for the first layer we calculate activation of hidden layer:
z1 = X ∗ W1 + b1
a1 = Tangh(z1)
And for the second layer which is output layer
z2 = a1 ∗ W2 + b2
output = Sigmoid (z2)

反向传播

这一步骤的目的是通过对偏差和权重进行边际改变来减少最终或输出层中的误差。 使用误差项的导数计算这些变化。基于链式规则的微积分原理,增量变化被反向传递到隐藏层,在那里它们的权重和偏差发生相应的变化。这导致权重和偏差的调整,直到误差最小化。

更新参数

使用从上述反向传播步骤接收的增量变化来更新权重和偏差。当对具有大量训练示例的多个时间段执行这些步骤时,损失减小到最小值。获得最终权重和偏差值,然后可用于对未看到的数据进行预测。当达到最大epoch数(我们的实验为100个)时,训练ANN过程停止,模型收敛,达到目标。


::: tip 算法2 基于LSTM方法

  • 将原始EEG信号直接用于LSTM深度学习模型,该模型从数据的不同层提取特征
  • 然后将这些特征作为输入应用到模型中进行分类。 ::: Img

标签向量表示每个受试者的类别,除以1(酒精)或0(非酒精)。

该模型由两个完全连接的LSTM层、一个dropout层和一个dense层组成。

LSTM和dropout层用于从原始EEG信号中学习64个特征,dense层用于最终分类。

对80%的数据训练LSTM模型,并对20%的EEG数据进行测试。

模型结构

Img Img

结果

精度比较

Img 研究表明,LSTM方法(算法2)取得了显著的改进(93.00%的准确率),并表明LSTM是一种鲁棒可靠的EEG信号分类器。ANN方法(算法1)的结果明显比LSTM方法(算法2)的结果差(86.00%精度);然而,LSTM并不比ANN快,其运行时间在所有模型中最高。实验结果还表明,将深度学习技术与手工特征提取方法相结合是不值得的。

其他结论

隐藏神经元的数量=输出层的大小+2/3 × 输入层的大小

隐藏神经元的数量<输入层的大小×2