本发明属于生理信号处理及模式识别领域,具体涉及一种基于卷积神经网络的睡眠呼吸暂停自动检测方法。
背景技术:
在众多睡眠疾病中,睡眠呼吸暂停综合症(sleepapneasyndrome,sas)对人类的健康威胁最大。睡眠呼吸暂停可直接导致人体长期缺氧、胸腔负压增加以及睡眠结构紊乱等问题,并因此造成多个系统功能损害,包括心脑血管系统、呼吸系统、中枢神经系统等,是并发高血压、糖尿病、脑血管意外及心肌梗死等疾病的高危因素。据卫生部门发布的健康播报,阻塞性睡眠呼吸暂停综合征的人群发病率高达4%,65岁以上老年人患病率达20%~40%。随着我国步入老龄化阶段,sas的监测、诊断愈加重要。
目前,临床上对睡眠呼吸障碍的诊断方法主要是采用多导睡眠监测系统(polysomnographysystem,psg)对病人进行整晚监护,但其具有预约周期长、检查环境要求高、患者监测心理压力大易造成所获数据失真、费时费力、费用高等不利因素,在我国很难大规模普及和开展。而单导联的sas检测设备克服了psg的这些劣势,导联少,不影响患者睡眠质量,能够反映出日常真实的睡眠状况。
呼吸和血氧信号是检测sas最直接的参数,然而这两周信号经常由于导联脱离,导致信号丢失,数据不完整,无法准确分析患者的真实病情。大量文献研究结果表明,心电信号中的相关特征可以表征sas事件,这对于检测sas事件具有十分重要的指导意义。更为重要的是,单导联(electrocardiogram)ecg信号的获取方式简单,信号质量高,可以为分析sas提供有效的信息源。
而目前基于ecg信号的sas分析方法中,以特征工程为主,需要设计参数,然后利用特征选择算法和分类器进行sas的识别。如周洪建利用hht分析ecg信号,然后提前能量、幅度等特征。范文兵和余传奇通过分析ecg,利用多尺度熵指数很好的区分了呼吸暂停患者的严重程度。王新康等人通过设计15组特征,最后利用svm实现呼吸暂停的分类。
然而这些研究都是基于特征工程的方法,设计这些特征需要专家领域知识,且不能表示隐藏在信号中的重要信息,鲁棒性和通用性差。由于睡眠过程中的生理信号不仅受许多外界因素,诸如情绪、性格、疾病、饮食等的影响,而且还会在基本节律下不时的发生一些瞬态变化,同时,基于特征工程的方法对高维、复杂函数的表示能力有限,因而需要新的方法来解决这些高维、非线性、非平稳信号。
技术实现要素:
综上所述,针对现有技术的不足,本发明提出一种基于卷积神经网络的睡眠呼吸暂停自动检测方法。与特征工程相比,深度学习模型通过自动组合低层特征从而得到更抽象的高层表示,以发现数据的分布式特征表示,为刻画数据的丰富内在信息提供了可能性,提出的方法将特征提取和分类融合一体,可以从大量复杂的单通道信号ecg数据中自动学习到鲁棒的分层表示,并基于学习到的特征进行分类,模型进行端到端的训练,无需先验知识。本发明可以代替psg进行sas的大规模检测,不仅方便快捷,准确度高,而且模型鲁棒性好,同时可以实时分析,防止因sas导致的猝死事故。
一种基于卷积神经网络的睡眠呼吸暂停自动检测方法,利用深度卷积网络对心电信号进行分析,利用adam优化算法训练网络权值,最后输出睡眠呼吸暂停综合症识别结果。具体包括以下步骤:
s1:选择暂停分析信号,从睡眠数据集中选择单通道心电信号;
s2:将心电信号数据分成训练集、验证集和测试集;
s3:使用训练集训练深度卷积网络,使用验证集评估选择模型参数,使用测试集测试模型性能;
s4:利用最终的模型对呼吸暂停进行检测。
进一步,所述的步骤s2具体包括:
s21:从physionet网站下载公共呼吸暂停数据集apnea-ecgdatabase,总共70个记录,35个为训练试集,35个为测试集,将训练集中的20%划分为验证集;
s22:根据暂停标签文件,所有数据以10s为单位进行不重复分割,ecg的采样率为100hz,所以深度神经卷积网络的输入维度为1000×1。
进一步,所述的步骤s3具体包括:
s31:首先利用批归一化对输入进行批标准化,然后对第一个卷积层设置3种尺度的卷积核,分别为:125×1,15×1,5×1,3种尺度的卷积核数据量都为24;对每个卷积核的输入进行批归一化变换后,选用relu作为激活函数;然后选择最大池化进行降采样,池化卷积核大小为2,步长为1;
s32:将3种尺度的卷积核拼接起来,使用最大池化进行降采样,池化卷积核大小为3,步长为1;按列重复这个2维张量,然后对张量填零,填零的维度为24×24,之后进行dropout,参数为0.2;最后将第一次批归一化后的数据和填零后的数据加起来;
s33:对s32输出的数据进行全连接操作,神经元数目为48,使用leakyrelu激活函数,之后进行dropout,为0.2,最后对每个输出进行全局降采样。
s34:对s33输出的数据进行全连接操作,输出层神经元数目为2,激活函数为softmax。
进一步,所述的构建深度卷积网络的分类模型中,使用categorical_crossentropy多分类交叉熵函数计算损失。
进一步,所述的构建深度卷积网络的分类模型中,使用adam优化模型参数,学习率为0.01。
进一步,所述的构建深度卷积网络的分类模型中,每批训练的样本数为30,迭代次数为40。
有益效果:
(1)无需先验知识,无需设计特征,从而避免了特征提取、特征选择和分类器设计的复杂过程;
(2)使用原始心电信号,不用识别心率,也无需分析心率变异性,模型全自动分析,鲁棒性好,提高了分类准确率和效率。
(3)本发明可以代替采用多导睡眠监测系统进行睡眠呼吸暂停综合症的大规模检测,同时可以实时分析,防止因睡眠呼吸暂停综合症导致的猝死事故。
附图说明
图1是本发明睡眠呼吸暂停检测方法的流程图;
图2是深度卷积网络的结构图;
图3a是单个sas事件识别图;
图3b是单个sas事件识别图;
图3c是连续sas事件识别图。
具体实施方式
下面将参照附图,以具体的例子描述本发明的实施过程,工程技术人员或者科研人员可以根据本说明书所描述的内容了解本发明的优点。本发明不仅仅可用于呼吸暂停识别,也可以用于其他信号分析。提供实施案例是为了技术人员更透彻理解本发明。其主要流程如下图1所示,具体包括以下步骤:
1、选择数据
选择physionet网站提供的apnea-ecg数据库中的数据。数据由70条记录组成,35条训练学习集(a01到a20、b01到b05、c01到c10)和35条测试集(x01到x35)。每个记录包括一导ecg信号、呼吸暂停注释标签(由医生根据同时记录的呼吸和相关信号分析出)和一组有程序识别的qrs注释标签,ecg采样率为100hz。
2.数据处理
x01到x35为测试集,将训练集中的20%划分为验证集,根据暂停标签文件,所有数据以10s为单位进行不重复分割,ecg的采样率为100hz,所以深度神经卷积网络的输入维度为1000×1,在进行训练前,利用批归一化对输入进行批标准化处理。
3.搭建深度卷积网络
(1)为了更好的学习ecg信号与sas之间的关系,对第一个卷积层设置3种尺度的卷积核,分别为:125×1,15×1,5×1,3种尺度的卷积核数据量都为24,卷积运算定义为:
式中
(2)选择最大池化进行降采样,卷积核大小为2,步长为1,根据图3可以看出,降采样后的每个特征图维度分别为:438×24,493×24和498×24,然后对所有特征图进行拼接,拼接后的特征图维度为1492x24。
(3)选择最大池化进行降采样,卷积核大小为3,步长为1,根据图3可以看出,降采样后的特征图维度别为:476×24,为了使梯度稳定,采用跨链接方式,由于经过卷积和降采样后,输入的维度发生了变换,为了能够连接特征图,对维度为476×24的特征图进行延拓,使其维度变为952×24,然后进行填零操作,填零后的维度为1000×24,再使用dropout,dropout为0.2,最后使用把特征图连接起来,如图3所示。
(4)将(3)的输出通过全连接层,如图3所示,全连接层的神经元为数为48,如图3所示,选用leakyrelu作为激活函数,然后经过dropout,dropout为0.2,最后进行全局降采样运算,如图3所示。
(5)将(4)的输出通过全连接层输出,全连接层的单元数为2,激活函数为softmax。其中,使用categorical_crossentropy多分类交叉熵函数计算损失;模型的优化函数使用adam优化模型参数。
4、分类评估
使用测试集对已经训练完成的网络模型进行测试,准确度为94%,kp系数为0.87,说明本发明效果具有很高的一致性。图3是利用训练好的模型对一个测试用例的可视化测试结果,(a)和(b)是细节显示,(c)是连续识别结果。从可视化结果也可以看出,本发明可以准确识别sas。
综上所述,本发明所阐述方法可以实现准确的sas识别,为sas的家庭监测提供了可靠的实施方法。除此之外,本发明也可用于其他生理信号的研究中,如eeg,ecg等等,应用前景广泛,也为机器学习在信号中的分析应用奠定了一定的基础。
1.一种基于卷积神经网络的睡眠呼吸暂停自动检测方法,其特征在于,包括以下具体步骤:
s1:选择暂停分析信号,从睡眠数据集中选择单通道心电信号;
s2:将心电信号数据分成训练集、验证集和测试集;
s3:使用训练集训练深度卷积网络,使用验证集评估选择模型参数,使用测试集测试模型性能;
s4:利用最终的模型对呼吸暂停进行检测。
2.根据权利要求1所述的一种基于卷积神经网络的睡眠呼吸暂停自动检测方法,其特征在于,所述步骤s2具体包括:
s21:从physionet网站下载公共呼吸暂停数据集apnea-ecgdatabase,总共70个记录,35个为训练试集,35个为测试集,将训练集中的20%划分为验证集;
s22:根据暂停标签文件,所有数据以10s为单位进行不重复分割,ecg的采样率为100hz,所以深度神经卷积网络的输入维度为1000×1。
3.根据权利要求1所述的一种基于卷积神经网络的睡眠呼吸暂停自动检测方法,其特征在于,所述步骤s3中,构建深度卷积网络模型具体包括以下步骤:
s31:首先利用批归一化对输入进行批标准化,然后对第一个卷积层设置3种尺度的卷积核,分别为:125×1,15×1,5×1,3种尺度的卷积核数据量都为24;对每个卷积核的输入进行批归一化变换后,选用relu作为激活函数;然后选择最大池化进行降采样,池化卷积核大小为2,步长为1;
s32:将3种尺度的卷积核拼接起来,使用最大池化进行降采样,池化卷积核大小为3,步长为1;按列重复这个2维张量,然后对张量填零,填零的维度为24×24,之后进行dropout,参数为0.2;最后将第一次批归一化后的数据和填零后的数据加起来;
s33:对s32输出的数据进行全连接操作,神经元数目为48,使用leakyrelu激活函数,之后进行dropout,为0.2,最后对每个输出进行全局pooling;
s34:对s33输出的数据进行全连接操作,输出层神经元数目为2,激活函数为softmax。
4.根据权利要求1所述的一种基于卷积神经网络的睡眠呼吸暂停自动检测方法,其特征在于,构建深度学卷积网络的分类模型中,使用categorical_crossentropy多分类交叉熵函数计算损失。
5.根据权利要求1所述的一种基于卷积神经网络的睡眠呼吸暂停自动检测方法,其特征在于,构建深度卷积网络的分类模型中,模型的优化函数使用adam优化模型参数,学习率为0.01。
6.根据权利要求1所述的一种基于卷积神经网络的睡眠呼吸暂停自动检测方法,其特征在于,构建深度卷积网络的分类模型中,每批训练的样本数为30,迭代次数为40,根据验证集找出最优的模型。
技术总结