CN116898451A - 用具有多尺度注意力机制的神经网络实现房颤预测的方法 - Google Patents

用具有多尺度注意力机制的神经网络实现房颤预测的方法 Download PDF

Info

Publication number
CN116898451A
CN116898451A CN202310888666.4A CN202310888666A CN116898451A CN 116898451 A CN116898451 A CN 116898451A CN 202310888666 A CN202310888666 A CN 202310888666A CN 116898451 A CN116898451 A CN 116898451A
Authority
CN
China
Prior art keywords
data
attention
layer
dimension
convolution
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202310888666.4A
Other languages
English (en)
Inventor
王量弘
刘培栋
刘硕
蔡冰洁
王新康
杨涛
高洁
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fuzhou University
Original Assignee
Fuzhou University
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fuzhou University filed Critical Fuzhou University
Priority to CN202310888666.4A priority Critical patent/CN116898451A/zh
Publication of CN116898451A publication Critical patent/CN116898451A/zh
Pending legal-status Critical Current

Links

Landscapes

  • Measurement And Recording Of Electrical Phenomena And Electrical Characteristics Of The Living Body (AREA)

Abstract

本发明提出用具有多尺度注意力机制的神经网络实现房颤预测的方法,包括以下步骤:步骤S1:对房颤心电信号AFECG数据集和正常窦性心律心电信号NSR ECG数据集进行采集划分和数据预处理;步骤S2:设计神经网络架构对房颤数据进行初步预测,在此网络架构的基础上对预测网络结构优化;步骤S3:在房颤预测数据的不同导联之间进行导联注意力机制的构建;步骤S4:在神经网络中不同的特征图之间进行时间空间注意力机制的构建;步骤S5:在房颤预测数据不同时序片段上进行时序注意力机制的构建;步骤S6:在完成上述各注意力机制子类模块的构建后,将子类模块与基础神经网络融合,然后进行神经网络的整体优化,形成最终的房颤预测网络;本发明可提高预测房颤准确率。

Description

用具有多尺度注意力机制的神经网络实现房颤预测的方法
技术领域
本发明涉及心电特征分类、深度学习技术领域,尤其是用具有多尺度注意力机制的神经网络实现房颤预测的方法。
背景技术
房颤作为一种常见心脏疾病且随着年龄增长其发病率不断提高,其中大部分的房颤患者没有明显的临床表现,这使得房颤的检查以及预测变得复杂困难,因此患者的重要治疗时机会被延误,造成不可挽回的健康损失。在基层农村中,医疗水平发展极度不平衡,使得心血管疾病的死亡率逐年扩大,重要医疗资源短缺问题不断暴露。面对这一疾病的重要挑战,需要寻求一种更为高效的方式解决房颤监测领域中的关键性问题。心电图检查是临床中一种常用的检查方式,它具有生成快速以及无创无痛的重要特征,这使得心电信号的获取尤为方便。心电图包含心脏病理性变化的重要信息,包括人体中电信号的变化情况,使用心电图进行疾病快速筛查是临床中的一种重要诊断方式。
然而心电图检查需要医生付出很多的劳动力,即使借助电脑进行数理统计分析也仍然需要医生进行大量的肉眼判断,使得传统方法在面对大规模的心电图检查时效率不高,且将耗费大量的人力物力。随着重要心电数据库的不断建立以及人工智能的快速发展,采用人工智能的方式针对心电信号进行疾病预测及分类成为了可能。人工智能中的深度学习方法可以依靠神经网络的自主学习对心电信号的重要特征进行提取,并避免了机器学习中人工提取特征的偏差,但神经网络的结构可以千变万化,所以如何选取适当的结构让网络关注重要信息提升预测准确率是深度学习提升性能的关键。
发明内容
本发明提出用具有多尺度注意力机制的神经网络实现房颤预测的方法,通过构建具有多尺度注意力机制的神经网络,来实现提高预测房颤准确率的目标。
本发明采用以下技术方案。
用具有多尺度注意力机制的神经网络实现房颤预测的方法,包括以下步骤:
步骤S1:对房颤心电信号(Atrial Fibrillation Electrocardiograph,AF ECG)和正常窦性心律(Normal Sinus Rhythm,NSR)心电信号数据集进行采集划分和数据预处理;
步骤S2:设计神经网络架构对房颤数据进行初步预测,在此网络架构的基础上对预测网络结构优化;
步骤S3:在房颤预测数据的不同导联之间进行导联注意力机制的构建;
步骤S4:在神经网络中不同的特征图之间进行时间空间注意力机制的构建;
步骤S5:在房颤预测数据不同时序片段上进行时序注意力机制的构建;
步骤S6:在完成上述各注意力机制子类模块的构建后,将子类模块与基础神经网络融合,然后进行神经网络的整体优化,形成最终的房颤预测网络。
步骤S1具体为:
步骤S11:筛选出心电数据库(ECG Database)中的房颤时期的心电数据(AFData)、房颤发生前三十分钟内的心电数据(Pre-AF Data)和未发生过房颤的人的完全正常的心电数据(Normal Data);
步骤S12:对ECG数据进行浮点数和采样率的统一,统一所有样本的长度为个数适宜的采样点,并确定所有样本的采样频率为定值,得到持续相同时间的每笔数据;
步骤S13:采用带通滤波器对基线漂移产生的低频噪声进行滤除;
步骤S14:从数据集中随机抽选出一定比例的样本作为测试集(test set),其余样本作为训练集,测试集和训练集的样本没有任何交集。
步骤S15:根据样本总数将训练集按预定比例进一步划分为训练集(train set)和验证集(validation set),用以训练并优化模型。
步骤S2具体为:
步骤S21:使用顺序式结构构建基预测网络,将一维卷积层、最大池化层和激活函数进行堆叠操作,采用N层一维神经网络结构初步对房颤数据进行预测;
步骤S22:将预处理后的心电数据输入卷积层,卷积层负责对输入向量的特征进行提取,卷积层输出的特征向量输入到最大池化层进行降采样的操作;
步骤S23:将步骤S22中池化层输出的特征向量输入到下一个卷积层,为了后续可以将数据输入到全连接层,对第N-1个卷积层的输出向量进行Reshape操作以实现数据维度变换;
步骤S24:将经过卷积层、池化层和Reshape后的数据输入全连接层,输出三分类的结果。
步骤S21中,采用3层一维神经网络结构初步对房颤数据进行预测,具体的网络结构及网络维度的变换如下:将预处理后的心电数据输入卷积层一,卷积层负责对输入向量的特征进行提取;输出的特征向量输入到最大池化层进行降采样的操作;池化层输出的特征向量输入到卷积层二进行卷积操作。
步骤S3具体为:
步骤S31:将心电数据中两个导联的数据按照行的位置排列起来输入神经网络,数据依次经过一维卷积层和池化层;
步骤S32:在网络中引入Shortcut结构,用于将未经过某一卷积层的数据与经过此卷积层的数据进行累加;
步骤S33:将步骤S32输出的数据输入行注意力模块,获取特征图在行的维度的注意力系数即导联注意力系数,将此注意力系数与原始输入进行对应位置的相乘获得结果;
步骤S34:将经过行注意力模块的数据先通过卷积层,然后经过全连接层,最后输出三分类结果。
步骤S31中,将心电数据中两个导联的数据按照行的位置排列起来输入神经网络,相当于一个二维的数据;该神经网络第一层为卷积层一,输出数据输入到池化层一;池化层一的输出数据输入卷积层二,卷积层二的加入用于支撑Shortcut方式;
步骤S32中,设置卷积层二使用的卷积核的参数为特定值,使卷积层二不会改变经过的数据的维度,从而将未经过卷积层二的数据与经过卷积层二的数据进行相加;以Shortcut方式在提取数据特征的同时避免遗失关键信息,以缓解梯度消失和爆炸的问题;
步骤S33中,卷积层二输出的数据输入行注意力模块,行注意力模块工作方法具体为,首先获取特征图在行这个维度的均值,再依次经过两个卷积层对特征图在通道维度进行缩放,此时数据的维度与输入到第一个卷积的数据的维度相同;同时,获取特征图在行的维度的最大值,而最大值也经过以上两个卷积相同的操作,再将经过两个卷积操作的数据进行相加,然后对这个数据使用Sigmoid函数进行非线性变换,最后将此注意力系数与原始的输入使用multiply函数进行对应位置的相乘获得最终的结果;
步骤S34中,卷积层二输出的数据经过行注意力模块后再通过卷积层三,经过此层后数据输入全连接层,最后输出层神经元数量为3,获得最终的三分类结果。
步骤S4具体为:
步骤S41:在卷积神经网络中加入通道以及像素点维度的注意力以构建时间空间注意力机制,为此引入卷积注意力模块(Convolutional BlockAttention Module,CBAM)以获得注意力系数;
步骤S42:输入到CBAM的数据在通道维度经过数值运算和维度变换,取得通道维度的注意力系数,将此系数与输入到CBAM的原始数据相乘获得新的输入;
步骤S43:原始数据在像素点维度上经过数值运算后在通道维度上进行拼接,然后经过卷积层得到像素点维度的注意力系数,此系数与上一步获得的新的输入相乘得到经过CBAM操作的最终结果。
步骤S41中,引入CBAM以获得注意力系数,其操作方法是在通道维度取最大值以及平均值并且利用卷积进行缩放,然后两个值进行相加并进行非线性变换;在像素点维度取平均值以及最大值,并将两个值在通道维度进行拼接,然后再进行卷积操作;
步骤S42中,时间空间注意力模块的具体结构以及输入数据维度变换方法为:输入到CBAM的数据首先在通道维度取得均值,再经过卷积层一将数据在通道维度缩小X倍,其他维度保持不变;此数据再次经过卷积层二对通道维度扩充,使数据的维度与未经过卷积层一时相同;同理获得通道维度的最大值,并作与通道维度平均值相同的操作。将两步操作后的数据相加并进行非线性变换,获得通道维度的注意力系数,将此系数与输入到CBAM的原始数据相乘获得新的输入;
步骤S43中,首先分别取得像素点维度的均值以及最大值,然后将最大值以及平均值在通道维度上进行拼接,再经过一个卷积层,通过填充的方式确保数据长度不变,经过卷积层后数据维度与拼接前相同,此时的数据即为像素点维度的注意力系数,再将此系数与上一步获得的新的输入进行相乘,继而得到经过CBAM的最终结果。
步骤S5具体为:
步骤S51:将网络的输入数据经过Reshape操作扩展一个维度后,依次经过一定层数的卷积层和池化层,然后对输出的数据进行Reshape操作;
步骤S52:Reshape后的数据作为Transformer模块中的q,k,v向量,分别将q,k,v输入到Dense层,对此三个Tensor进行非线性映射分别获得Q,K,V;
步骤S53:改进的Transformer模块包括一个多头自注意力模块和一个前向传播模块。多头注意力机制根据Q与K获取数据的自注意力系数,将注意力系数与分头后的V相乘得到每个头的value,此过程可归纳为self-attention公式:
然后将不同头的结果拼接后再进行Dropout操作,最后输出的数据为原始数据加上Dropout后的数据再经过层归一化的结果;
步骤S54:前向传播模块包括S个一维卷积层,经过与未经过前向传播模块的数据相加,相加以后的数据再经过层归一化得到最后的输出;
步骤S55:将经过改进的Transformer模块的数据输入时序模块,对输出数据进行Softmax操作得到最终的时序注意力系数;原始输入数据与注意力系数进行点乘,再经过Tanh、Dropout、Reshape操作,最后输入全连接层及输出层得到最终的预测结果。
步骤S6具体为:
步骤S61:导联注意力与时间空间注意力与时序注意力机制融合时,网络总体结构为直接在导联注意力中卷积层后添加一个CBAM,CBAM后插入一个时序注意力机制模块,然后直接连接全连接层以及输出层,得到最终的输出结果;
步骤S62:综合各注意力机制模块单独使用和融合使用得到的预测结果的准确率,对步骤S61中构建的模型进行优化,尽量减少卷积并保证数据卷积前后变化程度较小,使网络更多关注时序上的信息,因此将模型中的卷积删减至仅有少量一维卷积层;
步骤S63:对输入模型的数据进行更改,将使用的心电数据的导联数进行减少,减至只包含II导联数据,保证模型的结构以及参数完全不变换,若此时模型的准确率为100%,则判定II导联数据足以获得最终的预测结果,模型优化为仅使用II导联数据。
本发明提出一种利用具有多尺度注意力机制的神经网络实现房颤预测的方法。其中主要技术包括:(1)对房颤心电信号数据集和正常窦性心律心电信号数据集进行数据预处理;(2)设计神经网络架构对房颤数据进行初步预测,并在此基础上引入注意力机制;(3)在房颤预测数据的不同导联之间进行导联注意力机制的构建;(4)在神经网络中不同的特征图之间进行时间空间注意力机制的构建;(5)在房颤预测数据不同时序片段上进行时序注意力机制的构建;(6)将注意力机制与基础神经网络融合,进行神经网络的整体优化;(7)构建出具有多尺度注意力机制的神经网络,本发明能提高预测房颤的准确率。
本发明与现有技术相比具有以下有益效果:本发明构建了一种导联注意力机制,证明了导联注意力机制在CNN中有切实的效果,且此种导联注意力机制是一个可以插入到任意网络的可移动模块,增加了导联注意力模块的可扩展性。构建了一种改进的Transformer的时序注意力机制,证明了此种时序注意力的有效性,且也具有可扩展性。验证并分析了时序网络对于心电的分析强于卷积网络。且最终构建出的网络模型相比于现有技术,在临床测试集上对房颤预测的准确率、精确率与召回率都有了显著提高。
附图说明
下面结合附图和具体实施方式对本发明进一步详细的说明:
附图1是本发明的流程示意图;
附图2是本发明实施例最终构建的神经网络结构示意图。
具体实施方式
下面将参照附图更详细地描述本专利方法的具体实施细节。附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
如图所示,用具有多尺度注意力机制的神经网络实现房颤预测的方法,包括以下步骤:
步骤S1:对房颤心电信号(Atrial Fibrillation Electrocardiograph,AF ECG)和正常窦性心律(Normal Sinus Rhythm,NSR)心电信号数据集进行采集划分和数据预处理;
步骤S2:设计神经网络架构对房颤数据进行初步预测,在此网络架构的基础上对预测网络结构优化;
步骤S3:在房颤预测数据的不同导联之间进行导联注意力机制的构建;
步骤S4:在神经网络中不同的特征图之间进行时间空间注意力机制的构建;
步骤S5:在房颤预测数据不同时序片段上进行时序注意力机制的构建;
步骤S6:在完成上述各注意力机制子类模块的构建后,将子类模块与基础神经网络融合,然后进行神经网络的整体优化,形成最终的房颤预测网络。
步骤S1具体为:
步骤S11:筛选出心电数据库(ECG Database)中的房颤时期的心电数据(AFData)、房颤发生前三十分钟内的心电数据(Pre-AF Data)和未发生过房颤的人的完全正常的心电数据(Normal Data);
步骤S12:对ECG数据进行浮点数和采样率的统一,统一所有样本的长度为个数适宜的采样点,并确定所有样本的采样频率为定值,得到持续相同时间的每笔数据;
步骤S13:采用带通滤波器对基线漂移产生的低频噪声进行滤除;
步骤S14:从数据集中随机抽选出一定比例的样本作为测试集(test set),其余样本作为训练集,测试集和训练集的样本没有任何交集。
步骤S15:根据样本总数将训练集按预定比例进一步划分为训练集(train set)和验证集(validation set),用以训练并优化模型。
步骤S2具体为:
步骤S21:使用顺序式结构构建基预测网络,将一维卷积层、最大池化层和激活函数进行堆叠操作,采用N层一维神经网络结构初步对房颤数据进行预测;
步骤S22:将预处理后的心电数据输入卷积层,卷积层负责对输入向量的特征进行提取,卷积层输出的特征向量输入到最大池化层进行降采样的操作;
步骤S23:将步骤S22中池化层输出的特征向量输入到下一个卷积层,为了后续可以将数据输入到全连接层,对第N-1个卷积层的输出向量进行Reshape操作以实现数据维度变换;
步骤S24:将经过卷积层、池化层和Reshape后的数据输入全连接层,输出三分类的结果。
步骤S21中,采用3层一维神经网络结构初步对房颤数据进行预测,具体的网络结构及网络维度的变换如下:将预处理后的心电数据输入卷积层一,卷积层负责对输入向量的特征进行提取;输出的特征向量输入到最大池化层进行降采样的操作;池化层输出的特征向量输入到卷积层二进行卷积操作。
步骤S3具体为:
步骤S31:将心电数据中两个导联的数据按照行的位置排列起来输入神经网络,数据依次经过一维卷积层和池化层;
步骤S32:在网络中引入Shortcut结构,用于将未经过某一卷积层的数据与经过此卷积层的数据进行累加;
步骤S33:将步骤S32输出的数据输入行注意力模块,获取特征图在行的维度的注意力系数即导联注意力系数,将此注意力系数与原始输入进行对应位置的相乘获得结果;
步骤S34:将经过行注意力模块的数据先通过卷积层,然后经过全连接层,最后输出三分类结果。
步骤S31中,将心电数据中两个导联的数据按照行的位置排列起来输入神经网络,相当于一个二维的数据;该神经网络第一层为卷积层一,输出数据输入到池化层一;池化层一的输出数据输入卷积层二,卷积层二的加入用于支撑Shortcut方式;
步骤S32中,设置卷积层二使用的卷积核的参数为特定值,使卷积层二不会改变经过的数据的维度,从而将未经过卷积层二的数据与经过卷积层二的数据进行相加;以Shortcut方式在提取数据特征的同时避免遗失关键信息,以缓解梯度消失和爆炸的问题;
步骤S33中,卷积层二输出的数据输入行注意力模块,行注意力模块工作方法具体为,首先获取特征图在行这个维度的均值,再依次经过两个卷积层对特征图在通道维度进行缩放,此时数据的维度与输入到第一个卷积的数据的维度相同;同时,获取特征图在行的维度的最大值,而最大值也经过以上两个卷积相同的操作,再将经过两个卷积操作的数据进行相加,然后对这个数据使用Sigmoid函数进行非线性变换,最后将此注意力系数与原始的输入使用multiply函数进行对应位置的相乘获得最终的结果;
步骤S34中,卷积层二输出的数据经过行注意力模块后再通过卷积层三,经过此层后数据输入全连接层,最后输出层神经元数量为3,获得最终的三分类结果。
步骤S4具体为:
步骤S41:在卷积神经网络中加入通道以及像素点维度的注意力以构建时间空间注意力机制,为此引入卷积注意力模块(Convolutional BlockAttention Module,CBAM)以获得注意力系数;
步骤S42:输入到CBAM的数据在通道维度经过数值运算和维度变换,取得通道维度的注意力系数,将此系数与输入到CBAM的原始数据相乘获得新的输入;
步骤S43:原始数据在像素点维度上经过数值运算后在通道维度上进行拼接,然后经过卷积层得到像素点维度的注意力系数,此系数与上一步获得的新的输入相乘得到经过CBAM操作的最终结果。
步骤S41中,引入CBAM以获得注意力系数,其操作方法是在通道维度取最大值以及平均值并且利用卷积进行缩放,然后两个值进行相加并进行非线性变换;在像素点维度取平均值以及最大值,并将两个值在通道维度进行拼接,然后再进行卷积操作;
步骤S42中,时间空间注意力模块的具体结构以及输入数据维度变换方法为:输入到CBAM的数据首先在通道维度取得均值,再经过卷积层一将数据在通道维度缩小X倍,其他维度保持不变;此数据再次经过卷积层二对通道维度扩充,使数据的维度与未经过卷积层一时相同;同理获得通道维度的最大值,并作与通道维度平均值相同的操作。将两步操作后的数据相加并进行非线性变换,获得通道维度的注意力系数,将此系数与输入到CBAM的原始数据相乘获得新的输入;
步骤S43中,首先分别取得像素点维度的均值以及最大值,然后将最大值以及平均值在通道维度上进行拼接,再经过一个卷积层,通过填充的方式确保数据长度不变,经过卷积层后数据维度与拼接前相同,此时的数据即为像素点维度的注意力系数,再将此系数与上一步获得的新的输入进行相乘,继而得到经过CBAM的最终结果。
步骤S5具体为:
步骤S51:将网络的输入数据经过Reshape操作扩展一个维度后,依次经过一定层数的卷积层和池化层,然后对输出的数据进行Reshape操作;
步骤S52:Reshape后的数据作为Transformer模块中的q,k,v向量,分别将q,k,v输入到Dense层,对此三个Tensor进行非线性映射分别获得Q,K,V;
步骤S53:改进的Transformer模块包括一个多头自注意力模块和一个前向传播模块。多头注意力机制根据Q与K获取数据的自注意力系数,将注意力系数与分头后的V相乘得到每个头的value,此过程可归纳为self-attention公式:
然后将不同头的结果拼接后再进行Dropout操作,最后输出的数据为原始数据加上Dropout后的数据再经过层归一化的结果;
步骤S54:前向传播模块包括S个一维卷积层,经过与未经过前向传播模块的数据相加,相加以后的数据再经过层归一化得到最后的输出;
步骤S55:将经过改进的Transformer模块的数据输入时序模块,对输出数据进行Softmax操作得到最终的时序注意力系数;原始输入数据与注意力系数进行点乘,再经过Tanh、Dropout、Reshape操作,最后输入全连接层及输出层得到最终的预测结果。
步骤S6具体为:
步骤S61:导联注意力与时间空间注意力与时序注意力机制融合时,网络总体结构为直接在导联注意力中卷积层后添加一个CBAM,CBAM后插入一个时序注意力机制模块,然后直接连接全连接层以及输出层,得到最终的输出结果;
步骤S62:综合各注意力机制模块单独使用和融合使用得到的预测结果的准确率,对步骤S61中构建的模型进行优化,尽量减少卷积并保证数据卷积前后变化程度较小,使网络更多关注时序上的信息,因此将模型中的卷积删减至仅有少量一维卷积层;
步骤S63:对输入模型的数据进行更改,将使用的心电数据的导联数进行减少,减至只包含II导联数据,保证模型的结构以及参数完全不变换,若此时模型的准确率为100%,则判定II导联数据足以获得最终的预测结果,模型优化为仅使用II导联数据。
实施例:
参照图1所示,本例提供一种利用具有多尺度注意力机制的神经网络实现房颤预测的方法,包括:数据预处理、构建基预测网络、构建导联注意力机制、构建时间空间注意力机制、构建时序注意力机制、注意力机制与基预测网络融合及神经网络的整体优化,构成最终的房颤预测网络以提高对房颤的预测效果;
所述数据预处理具体为:
从长时房颤数据库(Long Term Atrial Fibrillation Database)、MIT-BIH房颤数据库(MIT-BIH Atrial Fibrillation Database)、MIT-BIH正常窦性心律数据库(M IT-BIH Normal Sinus Rhythm Database)获取心电数据。长时房颤数据库包括84例患者的心电记录,每位患者的心电记录长达二十四到二十五个小时之间,采样率为128Hz,每条记录包含两个心电导联。MIT-BIH房颤数据库记录了来源于不同患者的23条心电数据,每位患者的心电记录长达十个小时左右,采样频率为250Hz,每条记录包含两个心电导联。MIT-BIH正常窦性心律数据库共有18个记录,每条记录也包含2个导联,采样率为128Hz,记录的持续时间都在24小时左右。
筛选出心电数据库中的房颤时期的、房颤发生前三十分钟内的和未发生过房颤的人的完全正常的心电数据,对心电数据进行浮点数和采样率的统一,统一所有样本的长度为固定数量的采样点,确定采样频率为一定值,即可得到持续相同时间的每笔数据。采用带通滤波器对基线漂移产生的噪声进行滤除,从数据集中随机抽选出一定比例的样本作为测试集,其余样本根据样本总数按8:2划分为训练集和验证集。
所述构建基预测网络具体为:
首先将双导联ECG数据输入神经网络,使用顺序式结构构建基预测网络,将一维卷积层、最大池化层和激活函数进行堆叠操作,采用3层一维神经网络结构初步对房颤数据进行预测,具体的网络结构及网络维度的变换如下:将预处理后的心电数据输入卷积层一,卷积层负责对输入向量的特征进行提取;输出的特征向量输入到最大池化层进行降采样的操作;池化层输出的特征向量输入到卷积层二进行卷积操作。为了后续可以将数据输入到全连接层,此时网络进行一次Reshape操作以实现维度变换;数据输入全连接层及输出层,最后输出三分类结果。实验表明基预测网络的整体准确率为87%,准确率比较低的原因主要是网络结构比较简单,但简单网络具有更灵活的扩展性能,便于后续其他多种注意力机制的添加。
所述构建导联注意力机制的具体步骤为:
注意力机制主要的作用是对重要的部分进行加权处理,使得网络可以对重点部分进行着重的关注,简单来说就是一个查询到一系列键值对的非线性映射,运用此种映射关系对网络的训练进行加强处理,进而使网络的准确性得到提升。
导联注意力机制可获得目标任务中不同导联的重要性程度,并对不同重要程度的导联赋予不同的权重即导联注意力系数,而导联注意力系数获得的越早越有助于后续网络的训练,原始的心电数据应该在没有经过太多变化的情况下就经过导联注意力机制的计算。
加入导联注意力机制后网络的整体结构以及网络维度的变换如下:将心电数据中两个导联的数据按照行的位置排列起来输入神经网络,相当于一个二维的数据。网络第一层为卷积层一,输出数据输入到池化层一。池化层一的输出数据输入卷积层二,卷积层二的加入是为了支撑Shortcut方式,此时设置卷积层二使用的卷积核的参数为特定值,使卷积层二不会改变经过的数据的维度,从而可将未经过卷积层二的数据与经过卷积层二的数据进行相加。Shortcut方式可以在提取数据特征的同时避免遗失某些关键信息,有效地缓解梯度消失和爆炸的问题。
卷积层二输出的数据输入行注意力模块,行注意力模块介绍如下,首先获取特征图在行这个维度的均值,再依次经过两个卷积层对特征图在通道维度进行缩放,此时数据的维度与输入到第一个卷积的数据的维度相同。与此同时,获取特征图在行的维度的最大值,而最大值也经过以上两个卷积相同的操作,再将经过两个卷积操作的数据进行相加,然后对这个数据使用Sigmoid函数进行非线性变换,最后将此注意力系数与原始的输入使用multiply函数进行对应位置的相乘获得最终的结果。
卷积层二输出的数据经过行注意力模块后再通过卷积层三,经过此层后数据输入全连接层,最后输出层神经元数量为3,获得最终的三分类结果,此时网络的整体准确率为89%,网络的性能得到了提升,说明了导联注意力机制具有一定的有效性。
所述构建时间空间注意力机制具体为:
时间空间注意力机制的构建的主要思想是在卷积神经网络中加入通道以及像素点维度的注意力,为此引入CBAM以获得注意力系数,其操作方法是在通道维度取最大值以及平均值并且利用卷积进行缩放,然后两个值进行相加并进行非线性变换;在像素点维度取平均值以及最大值,并将两个值在通道维度进行拼接,然后再进行卷积操作。
时间空间注意力模块的具体结构以及输入数据维度变换如下。输入到CBAM的数据首先在通道维度取得均值,再经过卷积层一将数据在通道维度缩小X倍,其他维度保持不变。此数据再次经过卷积层二对通道维度扩充,使数据的维度与未经过卷积层一时相同。同理获得通道维度的最大值,并作与通道维度平均值相同的操作。将两步操作后的数据相加并进行非线性变换,获得通道维度的注意力系数,将此系数与输入到CBAM的原始数据相乘获得新的输入。
而在像素点维度上的操作与通道维度上的操作有所不同,首先分别取得像素点维度的均值以及最大值,然后将最大值以及平均值在通道维度上进行拼接,再经过一个卷积层,通过填充的方式确保数据长度不变,经过卷积层后数据维度与拼接前相同,此时的数据即为像素点维度的注意力系数,再将此系数与上一步获得的新的输入进行相乘,继而得到经过CBAM的最终结果。构建好时间空间注意力模块后将模块插入到基预测网络中的第二层卷积后面,此时网络的整体准确率为93%,网络的准确率有了很大的提升,证明了时间空间注意力模块的有效性。
所述构建时序注意力机制具体为:
时序注意力机制的构建中主要加入了改进的Transformer模块和一种时序模块。改进的Transformer模块的组成是先经过一个多头自注意力模块,再经过一个前向传播模块,前向传播模块中包括的主要部分是层归一化模块。
输入神经网络的双导联数据依次经过卷积层一、池化层一、卷积层二。
为了将数据输入到改进的Transformer模块中,对数据进行Reshape操作以实现维度变换。Reshape后的数据作为Transformer模块中的q,k,v向量,分别将q,k,v输入到Dense层,对此三个Tensor进行非线性映射分别获得Q,K,V向量,最终Q,K,V的维度与Reshape后的数据的维度保持一致。
接下来对Q,K,V进行分割处理。多头注意力机制就是对数据在通道维度进行切割,将切割后的数据在数据量的维度上进行拼接,切割并拼接的份数M即为多头的数量。将分割后的Q与K进行点积操作,点积之后的结果进行缩放处理,主要操作为除以整个向量长度的平方根,再将计算之后的结果进行Softmax操作得到注意力系数。将注意力系数与分头之后的V相乘得到每个头的value。此过程可归结为如下的self-attention公式:
然后将不同头的结果拼接。第一个维度上分成M份,在第三个维度进行拼接,此时数据的维度与经过多头注意力机制前相同。对输出数据进行Dropout操作,最后输出的数据为原始数据加上Dropout后的数据再经过层归一化的结果。
前向传播模块相当于一个小Resnet模块,主要包括两个一维卷积层,保证数据维度经过两个卷积层后不变换,且卷积核数目与输入到前向传播模块的数据的最后一维的大小相同,同样是为了保证数据经过两个卷积层以后可以将数据与未经过前向传播模块的数据进行相加,相加以后的数据再经过层归一化得到最后的输出。经过前向传播模块后数据的维度不变。
数据经过前向传播模块后输入时序模块。时序模块首先获得输入数据最后一维的大小,并据此初始化一个可训练参数。将输入数据使用Tanh函数进行非线性变换,对变换后的数据进行Reshape操作,将此数据与待训练参数相乘得到原始的时序注意力系数。再将此系数进行Softmax操作会得到最终的注意力系数。将注意力系数与原始的输入数据进行点乘操作,而后进行Tanh操作与Dropout操作得到最终的结果。将时序模块输出的数据进行Reshape操作后,再经过一个全连接层以及输出层即可得到最终的预测结果。此时网络的整体准确率为98.43%,证明了时序注意力模块的有效性。
所述注意力机制与基预测网络融合及神经网络的整体优化具体为:
先将导联注意力、时间空间注意力机制与基预测网络进行融合。网络总体结构为在上述导联注意力机制与基预测网络融合后的网络的卷积层三后添加一个CBAM,CBAM后直接连接全连接层以及输出层,得到最终的输出结果。经过此融合方案,网络准确率为93.7%,相较没有添加CBAM时准确率提升了4.7%,同时也证明了导联注意力机制以及时间空间注意力机制模块的有效性。
将导联注意力、时间空间注意力、时序注意力机制与基预测网络进行融合。网络总体结构为在上述融合方案的基础上,在CBAM后插入一个改进的Transformer模块和时序模块即时序注意力机制模块。经过此种模块融合,网络准确率可以达到98.43%,但此全融合方案的准确率相较于单独使用时序注意力模块时并没有显著的提高,因此接下来对神经网络进行最终的整体优化。
综合以上实验得到的预测结果的准确率,发现时序注意力效果大于时间空间注意力大于导联注意力,导联注意力在卷积网络中可以提升指标,但CBAM的效果强于导联注意力机制,原因在于CBAM中具有时序注意力的关注。因此对全融合方案中的模型进行改进,主要的思想为尽量减少卷积,保持卷积后信号不要变化太大,让网络更多的关注时序上的信息,因此将模型中卷积删减至仅有一维卷积层一,此时准确率提升至99.2%。由于模型使用双导联的数据,在基于对模型做删减的思想上,对模型使用数据进行更改,将使用的心电数据的导联数进行减少,减至只包含II导联数据,保证模型的结构以及参数完全不变换,此时模型的准确率可以提升至100%,由此可知II导联数据足以获得最终的预测结果,模型优化为仅使用II导联数据。
所述构成最终的房颤预测网络提高房颤预测效果具体为:
本实施例采用以下四个指标来评估房颤预测网络模型性能:
准确率(Accuracy,Acc):表示预测对的样本的数量占据全部预测样本的比例,体现了模型整体预测能力,定义式为:
精确率(Precision):表示被预测为正例的样本中真实的正例所占据的比例,体现了模型对正类样本的识别能力,定义式为:
召回率(Recall):表示被模型预测正确的正类样本数量占所有正类样本数量的比值,体现了模型对正类样本的识别能力,定义式为:
F1分数(F1-Score,F1):表示召回率以及精确率的一种状态,实际为以上两种指标的综合的运算,可以展示整体的预测水平,定义式为:
其中真阳性(True Positive,TP)表示模型预测正确的正类样本数量,真阴性(True Negative,TN)表示预测正确的负类样本数量,假阳性(False Positive,FP)表示负类被预测成正类的样本数量,假阴性(False Negative,FN)表示正类被预测成负类的样本数量。数据集的房颤、房颤发生前三十分钟和正常窦性心律样本数量均衡,所以准确度是最直观反映模型整体预测性能的评估指标。精确率和召回率也是评估分类器性能的常用指标。模型的验证效果将直接反应构成的房颤预测网络对房颤的预测能力,它将直接作为反馈作用于模型参数寻优阶段,能提高最终模型对房颤的预测能力。
本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。

Claims (10)

1.用具有多尺度注意力机制的神经网络实现房颤预测的方法,其特征在于:包括以下步骤:
步骤S1:对房颤心电信号AFECG数据集和正常窦性心律心电信号NSRECG数据集进行采集划分和数据预处理;
步骤S2:设计神经网络架构对房颤数据进行初步预测,在此网络架构的基础上对预测网络结构优化;
步骤S3:在房颤预测数据的不同导联之间进行导联注意力机制的构建;
步骤S4:在神经网络中不同的特征图之间进行时间空间注意力机制的构建;
步骤S5:在房颤预测数据不同时序片段上进行时序注意力机制的构建;
步骤S6:在完成上述各注意力机制子类模块的构建后,将子类模块与基础神经网络融合,然后进行神经网络的整体优化,形成最终的房颤预测网络。
2.根据权利要求1所述的用具有多尺度注意力机制的神经网络实现房颤预测的方法,其特征在于:步骤S1具体为:
步骤S11:筛选出心电数据库中的房颤时期的心电数据、房颤发生前三十分钟内的心电数据和未发生过房颤的人的完全正常的心电数据;
步骤S12:对ECG数据进行浮点数和采样率的统一,统一所有样本的长度为个数适宜的采样点,并确定所有样本的采样频率为定值,得到持续相同时间的每笔数据;
步骤S13:采用带通滤波器对基线漂移产生的低频噪声进行滤除;
步骤S14:从数据集中随机抽选出一定比例的样本作为测试集,其余样本作为训练集,测试集和训练集的样本没有任何交集。
步骤S15:根据样本总数将训练集按预定比例进一步划分为训练集和验证集,用以训练并优化模型。
3.根据权利要求1所述的用具有多尺度注意力机制的神经网络实现房颤预测的方法,其特征在于:步骤S2具体为:
步骤S21:使用顺序式结构构建基预测网络,将一维卷积层、最大池化层和激活函数进行堆叠操作,采用N层一维神经网络结构初步对房颤数据进行预测;
步骤S22:将预处理后的心电数据输入卷积层,卷积层负责对输入向量的特征进行提取,卷积层输出的特征向量输入到最大池化层进行降采样的操作;
步骤S23:将步骤S22中池化层输出的特征向量输入到下一个卷积层,为了后续可以将数据输入到全连接层,对第N-1个卷积层的输出向量进行Reshape操作以实现数据维度变换;
步骤S24:将经过卷积层、池化层和Reshape后的数据输入全连接层,输出三分类的结果。
4.根据权利要求3所述的用具有多尺度注意力机制的神经网络实现房颤预测的方法,其特征在于:步骤S21中,采用3层一维神经网络结构初步对房颤数据进行预测,具体的网络结构及网络维度的变换如下:将预处理后的心电数据输入卷积层一,卷积层负责对输入向量的特征进行提取;输出的特征向量输入到最大池化层进行降采样的操作;池化层输出的特征向量输入到卷积层二进行卷积操作。
5.根据权利要求1所述的用具有多尺度注意力机制的神经网络实现房颤预测的方法,其特征在于:步骤S3具体为:
步骤S31:将心电数据中两个导联的数据按照行的位置排列起来输入神经网络,数据依次经过一维卷积层和池化层;
步骤S32:在网络中引入Shortcut结构,用于将未经过某一卷积层的数据与经过此卷积层的数据进行累加;
步骤S33:将步骤S32输出的数据输入行注意力模块,获取特征图在行的维度的注意力系数即导联注意力系数,将此注意力系数与原始输入进行对应位置的相乘获得结果;
步骤S34:将经过行注意力模块的数据先通过卷积层,然后经过全连接层,最后输出三分类结果。
6.根据权利要求5所述的用具有多尺度注意力机制的神经网络实现房颤预测的方法,其特征在于:步骤S31中,将心电数据中两个导联的数据按照行的位置排列起来输入神经网络,相当于一个二维的数据;该神经网络第一层为卷积层一,输出数据输入到池化层一;池化层一的输出数据输入卷积层二,卷积层二的加入用于支撑Shortcut方式;
步骤S32中,设置卷积层二使用的卷积核的参数为特定值,使卷积层二不会改变经过的数据的维度,从而将未经过卷积层二的数据与经过卷积层二的数据进行相加;以Shortcut方式在提取数据特征的同时避免遗失关键信息,以缓解梯度消失和爆炸的问题;
步骤S33中,卷积层二输出的数据输入行注意力模块,行注意力模块工作方法具体为,首先获取特征图在行这个维度的均值,再依次经过两个卷积层对特征图在通道维度进行缩放,此时数据的维度与输入到第一个卷积的数据的维度相同;同时,获取特征图在行的维度的最大值,而最大值也经过以上两个卷积相同的操作,再将经过两个卷积操作的数据进行相加,然后对这个数据使用Sigmoid函数进行非线性变换,最后将此注意力系数与原始的输入使用multiply函数进行对应位置的相乘获得最终的结果;
步骤S34中,卷积层二输出的数据经过行注意力模块后再通过卷积层三,经过此层后数据输入全连接层,最后输出层神经元数量为3,获得最终的三分类结果。
7.根据权利要求1所述的用具有多尺度注意力机制的神经网络实现房颤预测的方法,其特征在于:步骤S4具体为:
步骤S41:在卷积神经网络中加入通道以及像素点维度的注意力以构建时间空间注意力机制,为此引入卷积注意力模块CBAM以获得注意力系数;
步骤S42:输入到CBAM的数据在通道维度经过数值运算和维度变换,取得通道维度的注意力系数,将此系数与输入到CBAM的原始数据相乘获得新的输入;
步骤S43:原始数据在像素点维度上经过数值运算后在通道维度上进行拼接,然后经过卷积层得到像素点维度的注意力系数,此系数与上一步获得的新的输入相乘得到经过CBAM操作的最终结果。
8.根据权利要求7所述的用具有多尺度注意力机制的神经网络实现房颤预测的方法,其特征在于:步骤S41中,引入CBAM以获得注意力系数,其操作方法是在通道维度取最大值以及平均值并且利用卷积进行缩放,然后两个值进行相加并进行非线性变换;在像素点维度取平均值以及最大值,并将两个值在通道维度进行拼接,然后再进行卷积操作;
步骤S42中,时间空间注意力模块的具体结构以及输入数据维度变换方法为:输入到CBAM的数据首先在通道维度取得均值,再经过卷积层一将数据在通道维度缩小X倍,其他维度保持不变;此数据再次经过卷积层二对通道维度扩充,使数据的维度与未经过卷积层一时相同;同理获得通道维度的最大值,并作与通道维度平均值相同的操作。将两步操作后的数据相加并进行非线性变换,获得通道维度的注意力系数,将此系数与输入到CBAM的原始数据相乘获得新的输入;
步骤S43中,首先分别取得像素点维度的均值以及最大值,然后将最大值以及平均值在通道维度上进行拼接,再经过一个卷积层,通过填充的方式确保数据长度不变,经过卷积层后数据维度与拼接前相同,此时的数据即为像素点维度的注意力系数,再将此系数与上一步获得的新的输入进行相乘,继而得到经过CBAM的最终结果。
9.根据权利要求1所述的用具有多尺度注意力机制的神经网络实现房颤预测的方法,其特征在于:步骤S5具体为:
步骤S51:将网络的输入数据经过Reshape操作扩展一个维度后,依次经过一定层数的卷积层和池化层,然后对输出的数据进行Reshape操作;
步骤S52:Reshape后的数据作为Transformer模块中的q,k,v向量,分别将q,k,v输入到Dense层,对此三个Tensor进行非线性映射分别获得Q,K,V;
步骤S53:改进的Transformer模块包括一个多头自注意力模块和一个前向传播模块。多头注意力机制根据Q与K获取数据的自注意力系数,将注意力系数与分头后的V相乘得到每个头的value,此过程归纳为self-attention公式:
然后将不同头的结果拼接后再进行Dropout操作,最后输出的数据为原始数据加上Dropout后的数据再经过层归一化的结果;
步骤S54:前向传播模块包括S个一维卷积层,经过与未经过前向传播模块的数据相加,相加以后的数据再经过层归一化得到最后的输出;
步骤S55:将经过改进的Transformer模块的数据输入时序模块,对输出数据进行Softmax操作得到最终的时序注意力系数;原始输入数据与注意力系数进行点乘,再经过Tanh、Dropout、Reshape操作,最后输入全连接层及输出层得到最终的预测结果。
10.根据权利要求1所述的用具有多尺度注意力机制的神经网络实现房颤预测的方法,其特征在于:步骤S6具体为:
步骤S61:导联注意力与时间空间注意力与时序注意力机制融合时,网络总体结构为直接在导联注意力中卷积层后添加一个CBAM,CBAM后插入一个时序注意力机制模块,然后直接连接全连接层以及输出层,得到最终的输出结果;
步骤S62:综合各注意力机制模块单独使用和融合使用得到的预测结果的准确率,对步骤S61中构建的模型进行优化,尽量减少卷积并保证数据卷积前后变化程度较小,使网络更多关注时序上的信息,因此将模型中的卷积删减至仅有少量一维卷积层;
步骤S63:对输入模型的数据进行更改,将使用的心电数据的导联数进行减少,减至只包含II导联数据,保证模型的结构以及参数完全不变换,若此时模型的准确率为100%,则判定II导联数据足以获得最终的预测结果,模型优化为仅使用II导联数据。
CN202310888666.4A 2023-07-19 2023-07-19 用具有多尺度注意力机制的神经网络实现房颤预测的方法 Pending CN116898451A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310888666.4A CN116898451A (zh) 2023-07-19 2023-07-19 用具有多尺度注意力机制的神经网络实现房颤预测的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310888666.4A CN116898451A (zh) 2023-07-19 2023-07-19 用具有多尺度注意力机制的神经网络实现房颤预测的方法

Publications (1)

Publication Number Publication Date
CN116898451A true CN116898451A (zh) 2023-10-20

Family

ID=88352663

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310888666.4A Pending CN116898451A (zh) 2023-07-19 2023-07-19 用具有多尺度注意力机制的神经网络实现房颤预测的方法

Country Status (1)

Country Link
CN (1) CN116898451A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117257324A (zh) * 2023-11-22 2023-12-22 齐鲁工业大学(山东省科学院) 基于卷积神经网络和ecg信号的房颤检测方法

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117257324A (zh) * 2023-11-22 2023-12-22 齐鲁工业大学(山东省科学院) 基于卷积神经网络和ecg信号的房颤检测方法
CN117257324B (zh) * 2023-11-22 2024-01-30 齐鲁工业大学(山东省科学院) 基于卷积神经网络和ecg信号的房颤检测方法

Similar Documents

Publication Publication Date Title
US20220093215A1 (en) Discovering genomes to use in machine learning techniques
CN113421652A (zh) 对医疗数据进行分析的方法、训练模型的方法及分析仪
CN113274031B (zh) 一种基于深度卷积残差网络的心律失常分类方法
CN113855038B (zh) 基于多模型集成的心电信号危急值的预测方法及装置
CN111956212A (zh) 基于频域滤波-多模态深度神经网络的组间房颤识别方法
Samir et al. Evolutionary algorithm-based convolutional neural network for predicting heart diseases
Rai et al. The prediction of cardiac abnormality and enhancement in minority class accuracy from imbalanced ECG signals using modified deep neural network models
CN115804602A (zh) 基于注意力机制的多通道特征融合的脑电情绪信号检测方法、设备和介质
Li et al. Patient-specific seizure prediction from electroencephalogram signal via multichannel feedback capsule network
Malik et al. Multi-classification neural network model for detection of abnormal heartbeat audio signals
Ari et al. In search of an optimization technique for artificial neural network to classify abnormal heart sounds
CN116898451A (zh) 用具有多尺度注意力机制的神经网络实现房颤预测的方法
Barhate et al. Analysis of classifiers for prediction of type ii diabetes mellitus
CN113768514A (zh) 基于卷积神经网络与门控循环单元的心律失常分类方法
Xu et al. Pay more attention with fewer parameters: A novel 1-D convolutional neural network for heart sounds classification
Vavekanand et al. Cardiacnet: A neural networks based heartbeat classifications using ecg signals
Zhou et al. A novel 1-D densely connected feature selection convolutional neural network for heart sounds classification
Liu et al. A learnable front-end based efficient channel attention network for heart sound classification
Jasim ECG signal classification based on deep learning by using convolutional neural network (CNN)
Nehary et al. A deep convolutional neural network classification of heart sounds using fractional fourier transform
CN114224354B (zh) 心律失常分类方法、装置及可读存储介质
CN116350234A (zh) 基于gcnn-lstm模型的ecg心律失常分类方法及系统
CN115886833A (zh) 心电信号分类方法及装置、计算机可读介质、电子设备
CN115316955A (zh) 一种轻量快速的运动想象脑电信号解码方法
Balcı A hybrid attention-based LSTM-XGBoost model for detection of ECG-based atrial fibrillation

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination