1.基于时序特征和堆叠Bi‑LSTM网络的棘波检测方法,其特征在于,包括如下步骤:步骤1、对输入的已经过预标记的原始单通道脑电信号进行预处理操作,所述的预标记为对原始单通道脑电信号标记棘波和非棘波时间点;所述的预处理操作包括级联滤波和标准化处理;最后,依据检测目标波形时长特征,在时域对预处理完的脑电信号进行分割,得到脑电信号片段,并对训练集棘波数据进行数据增强;
步骤2、在分割后得到脑电信号片段上通过两种时序特征提取算法得到对突变峰信号敏感的平滑非线性能量特征和能够保持棘波完整性的同时抑制其他波形幅值的形态学特征,对得到的两种时序特征进行裁剪以保证长度与脑电信号片段一致后,与脑电信号片段拼接得到特征矩阵;
步骤3、利用得到的特征矩阵和标注信息,训练堆叠Bi‑LSTM网络模型;
步骤4、采用测试数据对训练好的堆叠Bi‑LSTM网络模型进行测试,并统计四个基本参数,用于衡量模型的识别性能,根据测试结果对堆叠Bi‑LSTM网络模型进行性能优化。
2.根据权利要求1所述的基于时序特征和堆叠Bi‑LSTM网络的棘波检测方法,其特征在于,所述步骤1的具体实现如下:
1‑1.将原始输入的单通道脑电信号利用1‑70HZ带通滤波器取得脑电能量信号最集中的频段,再利用50HZ陷波滤波器进行滤波去除工频噪声;
1‑2.通过Savitzky‑Golay滤波算法,利用三阶多项式依据最小二乘准则拟合滤波窗口内的信号数据,再通过已求得的多项式参数计算窗口中心点的函数值以代替原有数值;
1‑3.将预先标记的脑电数据划分为训练数据和测试数据,并依据其目的不同,通过不同的方法进行脑电信号分割:训练数据以预标记点为中心对脑电信号进行分割,每个脑电信号片段时长为0.2秒;测试数据将整段脑电信号有重叠地进行连续分割,重叠时长为0.1秒,每个脑电信号片段时长为0.2秒;
1‑4.由于棘波放电时长远小于正常状态时长,因此对训练集棘波数据通过SMOTE算法进行数据增强,步骤如下:
(1)对于棘波数据样本中的每一个样本s,计算它到剩余全部棘波数据样本的欧式距离;
(2)根据样本不平衡比例设定采样倍率K,对于棘波数据样本,从其k近邻中随机选择K个样本;
(3)假设选择的近邻为s′,对于每一个随机选出的近邻s′,分别与原样本按照以下公式构建新的样本snew:
snew=s+rand(0,1)×(s′‑s)。
3.根据权利要求2所述的基于时序特征和堆叠Bi‑LSTM网络的棘波检测方法,其特征在于,所述的步骤2具体操作如下:
2‑1.通过以下非线性能量算子计算脑电信号片段非线性能量特征:2
ψ[x(n)]=x(n)+x(n‑1)x(n+1)其中x(n)为步骤1得到的脑电信号片段,n=1,2,...,N,N为信号片段长度,在此基础上叠加一个窗函数对得到的非线性能量进行卷积,计算得信号片段的平滑非线性能量特征:ψs[x(n)]=w(n)*ψ[x(n)]其中w(n)为三角窗函数;
2‑2.通过形态学组合滤波对信号片段进行特征提取,四种形态学基本运算:腐蚀膨胀 开运算(○)和闭运算(·)分被定义为:其中,g为高斯函数结构因子,m为结构因子长度;在此基础上,开闭运算(OC)和闭开运算(CO)定义为:
OC[x(n)]=[(x○g)·g](n)CO[x(n)]=[(x·g)○g](n)级联开闭‑闭开平均组合滤波运算(OCCO)定义为:所需提取的形态学特征定义为:
M(x(n))=x(n)‑OCCO(x(n))
2‑3.取得两个特征后,在保证中心点位置不变的情况下,将两个特征裁剪为与原信号长度保持一致;将步骤1得到的脑电信号片段、平滑非线性能量特征和形态学特征按时间轴方向并联拼接,得到三维的特征矩阵。
4.根据权利要求3所述的基于时序特征和堆叠Bi‑LSTM网络的棘波检测方法,其特征在于,所述步骤3具体操作如下:
3‑1.将步骤2所得的特征矩阵根据标记信息划分成两类,即棘波和非棘波;
3‑2.使用两类特征矩阵,训练堆叠Bi‑LSTM网络模型,所述的堆叠Bi‑LSTM网络模型包括堆叠Bi‑LSTM网络层和全连接分类层,所述的堆叠Bi‑LSTM网络层由两层Bi‑LSTM网络组成,Bi‑LSTM网络包括前向LSTM和后向LSTM;作为堆叠Bi‑LSTM网络层的基础,LSTM网络的训练流程如下:
(1)令l(i)为LSTM网络中每一个模块的损失函数,I为模块个数,首先定义全局化损失函数L:
(2)令hj(i)为隐藏层第j个记忆单元的输出,J为记忆单元的长度,由链式法则得到全局化损失函数L对权重参数w的偏微分:引入变量L(t),用于表示第i步开始到结束的损失:相应偏微分公式变为:
联立得最优化结果为:
(3)利用权重参数w对全局损失函数的梯度迭代更新参数值,训练网络使得全局损失函数最小化;
全连接层训练流程如下:
(1)前向传播,即由输入层开始,逐层计算每一个神经元的输出,最终得到输出层神经元的输出;
令a为神经元的输入,W为权重矩阵,b为偏置,f为激活函数,则输出h有公式如下:T
h=f(Wa+b)
(2)反向传播,采用梯度下降法更新参数,定义好损失函数后,通过链式求导法则计算损失函数对权重参数的偏微分,利用各权重参数对全局损失函数的梯度迭代更新参数值,训练网络使得全局损失函数最小化。
5.根据权利要求4所述的基于时序特征和堆叠Bi‑LSTM网络的棘波检测方法,其特征在于,所述步骤4具体操作如下:
4‑1.将测试数据输入训练好的堆叠Bi‑LSTM网络模型中,得到测试数据脑电信号片段的识别结果,所述的测试数据脑电信号片段的识别结果包括包含棘波点的信号片段识别结果和未包含棘波点的信号片段识别结果;
4‑2.首先,对包含棘波点的信号片段识别结果进行进一步判定,由于测试脑电信号裁剪时有50%的重叠时长,因此一个棘波点必定包含在两个相邻的脑电信号片段内,当两个脑电信号片段至少有一个被识别为棘波时,判定这两个脑电信号片段的识别结果正确,否则判定识别结果错误;然后,对未包含棘波点的信号片段识别结果进行判定;当片段识别结果为棘波时,判定识别结果错误,否则判定识别结果正确;最终得到识别结果正确的样本集和识别结果错误的样本集;
4‑4.统计四个基本参数,所述的四个基本参数包括真阳(true positive)、真阴(true negative)、假阳(false positive)和假阴(false negative),真阳为识别结果正确样本中含棘波的样本数量,真阴为识别结果正确样本中不含棘波的样本数量,假阳为识别结果错误样本中不含棘波的样本数量,假阴为识别结果错误样本中含棘波的样本数量;
4‑5.根据获得的四个基本参数调整模型特征输入组合、堆叠Bi‑LSTM网络隐藏层单元数以及神经网络训练算法学习率,对堆叠Bi‑LSTM网络模型进行优化。