一种基于卷积循环神经网络的心音分类方法



1.本发明涉及心音分类技术领域,具体为一种基于卷积循环神经网络的心音分类方法及装置。


背景技术:



2.近年来,随着物质生活水平的不断提高,心血管疾病(cvd)已成为全球范围内最普遍、最危险、最难克服的疾病系统之一。发表在《美国心脏病学院学报》上的《1990-2019年全球心血管疾病及其危险因素的负担》一文准确描述了心血管疾病对人类社会造成的危害,呼吁当前社会更加关注心血管疾病的早期发现和。世界卫生组织报告称,心血管疾病每年夺去约1790万人的生命。心血管疾病给国家医疗系统带来了沉重的负担,严重危及患者的生命和健康,高昂的费用给患者的家庭带来了压力。早期发现和是降低死亡率和减轻各方负担的关键。
3.心血管疾病是指包括冠心病、脑血管病、风湿性心脏病等在内的一组疾病。油炸食品、快餐、酒精和烟草是主要的致病因素,它们会提高病人的血压、血糖和血脂,以及超重和肥胖,这可能导致过早死亡。到有心血管疾病风险的体,然后确保他们接受适当的,可以防止因他们因心血管疾病而过早死亡。可以通过减少饮酒、减少盐的摄入、吃更多的水果和蔬菜以及从事更多的体育活动来实现减少因心血管疾病猝死的风险。通过听诊心音听证筛查心血管疾病是一种简单、必要和有效的方法,至今已有180多年的历史。心音的基本类型可分为四种,即第一心音s1、第二心音s2、第三心音s3和第四心音s4,其中s1是心脏瓣膜关闭时的振动发出的声音,s2是心室收缩时二尖瓣关闭发出的声音,s3是由三尖瓣关闭产生的,s4是在第一种心音之前出现的低频振动,持续时间约0.04秒。这是一种由心房收缩和心室快速充满血流而引起的振动,也被称为心房音。医生通过记录四种基本的心音,分析它们与标准情况的差异,并根据病人的临床情况对异常心音进行分类。在临床实践中,通过心音听诊确定病人的病情对医生的要求很高,要获得正确的结果通常很有难。由于工业化的发展,精密的机器已经成为标准的医疗工具,为了诊断和病人,人们使用声学仪器记录心电图(pcg)来推断他们的病情。随着pcg的不断应用。利用信号处理和人工智能技术从pcg数据中提取生理和病理信息已逐渐成为一种流行趋势。
4.最初,研究人员使用传统的机器学习方法来分割pcg,以获得s1和s2等特征。经常使用的模型有以下几种:隐马尔可夫模型(hmm)、adaboost、支持向量机(svm)等。机器学习模型需要基于pcg的特征,这些特征已经过编码和转换。经常用于分类的心音特征有以下几点:频率、能量、小波、时间以及分割的心音信号。然而,从不同角度可以获得不同的特征,这些过程太复杂了。一般来说,这种复杂的计算过程会给医生和病人在医疗实践中带来很大困难。这些因素使得心音的准确分割变得更加复杂。通过pcg研究cvd的另一种方式是特征提取。工人们通常会提取不同种类的特征。根据心音信号的生理特征,如每分钟的心跳、每期的收缩期和舒张期的长度,出并计算出基于时间或频率的特征是相当容易的。然而,他们可能会失去一些关键的病理信息,而这些信息是无法通过时间或频率自行量化的,如s2
的形状。研究越来越多地集中在从时间-频率域提取更多的鉴别性特征,以提高特征提取的性能。也有必要在转换后的时频域中表示pcg信号,以便从中提取特征。由于很难通过简单的pcg分割和特征提取来研究出cvd,研究人员将注意力转向了建立一个智能系统的端到端方法。虽然反向传播(bp)和人工神经网络(ann)在识别率方面有一些优势,但仍离高准确率有一些距离要走。首先,这些算法都需要人工选择实用的特征,而特征的选择直接影响分类器的性能。考虑到心音信号的复杂性,以及缺乏检测心音特征的标准,仍有必要研究是否能从复杂的信号中有效提取心音特征。由于这些方法是在小样本中进行训练和分类的,其普遍性和稳健性无法用任何方法来验证。此外,它费时费力,使未来仍面临时间敏感和决策困难的难题。
5.为此,我们急需设计一种基于卷积循环神经网络的心音分类方法解决上述问题。


技术实现要素:



6.为解决数据加密的操作较为繁琐,工作量大和加密效果不佳的问题,本发明提供如下技术方案:
7.一种基于卷积循环神经网络的心音分类方法,包括以下步骤:
8.s1:分别对三个不同平台的心音数据集进行采集并预处理,并将其融合为一个数据集;
9.s2:对经过s1心音信号进行预处理后,通过特征工程提取心音的mfcc,并计算mfcc的一阶差分系数d(n)和二阶差分系数d2(n);
10.s3:将s2中获取到的梅尔倒谱系数和其差分系数被输入到基于cnn和rnn的混合神经网络模型进行学习及分析;
11.s4:经过s3处理后,最终将心音进行分类,分别为正常、异常和噪音。
12.需进一步说明的,所述s1中三个不同平台的心音数据分别是phys ionetcha l lenge2016心音数据库、kaggl e心音数据集和kahn心音数据集。
13.需进一步说明的,所述s1中对心音数据集预处理具体为:
14.①
、在采集心音音频时,对心音音频进行过滤,为了完整保留心音信号的病理特征,将心音音频送入二阶25-400hz巴特沃斯中值滤波器,滤除心音信号中的高低频杂音;
15.②
、将采集到的心音音频信号下采样到2000hz;
16.③
、以2s为单位对采集到心音音频信号进行切割,并丢弃了小于2s的心音音频。
17.需进一步说明的,所述s2中特征工程具体为:
18.一种基于mfcc的改进特征提取算法,人耳对频率的感知是对数的,即对低频段的变化敏感,对高频段的变化不敏感,在特征工程中使用线性分布的频谱图会影响模型的性能,mfcc反映了人耳与声音频率之间的非线性关系,可以有效提取心音音频中的病理特征,mfcc的计算公式如公式1所示:
19.mel(f)=2595lg(1+f/700)
ꢀꢀ
(1)
20.④
、对信号预加重;
21.在处理心音信号时,心血管运动时产生的高频信号不足,低频信号充足,造成这种现象的原因可以从物理层面来解释的,声能在介质中传播的过程中,频率越高越容易丢失,预加重弥补了高频的损失,保护了原始心音信号,心音信号通过高通滤波器以缩小信号的
高低频分量之间的强度差距,信号x[n]的具体操作如公式2所示:
[0022]
y[n]=x[n]-αx[n-1]
ꢀꢀ
(2)
[0023]
其中α通常取接近1的值;
[0024]

、对经过a加重的心音音频信号进行分帧加窗;
[0025]
要得到心音音频中各个频率元素的分布,需要对音频信号进行傅里叶变换,而傅里叶变换要求输入信号必须是稳定的,所以需要对音频信号进行分帧和加窗处理第一的,成帧就是将原始信号按时间分成若干个小块,一个块称为一帧,在成帧过程中,原始信号会出现频谱泄漏现象,原始信号和成帧后信号对应的频谱差别很大,汉明窗函数可以有效地克服泄漏现象,汉明窗函数w(n)如下:
[0026]
w(n)=(1-α)-αcos(2πn/(n-1)),0≤n≤n-1
ꢀꢀ
(3)
[0027]
其中α值为0.46;
[0028]

、对经过e分帧加窗后的心音频信号进行获取功率谱;
[0029]
本文在分帧和加窗后,对数据使用离散傅里叶变换(dft),将时域信号变换为频域信号,得到频谱x(k),如公式4所示:
[0030][0031]
功率谱p(k)等于信号谱x(k)为其模的平方,如式5所示,功率谱更准确地表达了心音信号的能量特性,保留了部分幅度元素心音谱,并舍弃心音谱的相位特征,其中:
[0032][0033]

、将经过f得到的功率谱使用mel滤波器组进行滤波,得到mel滤波组;
[0034]
根据人耳对声音的感知尺度,将上面得到的功率谱使用mel滤波器组进行滤波,得到mel谱,mel滤波器组在图像上表示为一组三角滤波器,通常一组包含20到40个上升三角滤波器,每个三角滤波器的起始位置在前一个三角滤波器的中点,并且因为它有一个mel标度中的线性频率,称为mel滤波器组,在每个频率,计算p(k)和滤波器hm(k)的乘积,定义具有m个滤波器的三角滤波器组,三角滤波器的频率响应hm(k)计算如下:
[0035][0036]
其中,m代表滤波器的序号,f(m-1)、f(m)、f(m+1)分别对应滤波器的起点、中点和终点;
[0037]

、对数谱计算;
[0038]
通过对数运算得到每帧的对数能谱s(m),如公式7所示:
[0039]
[0040]

、对经过

得到的对数进行离散余弦变换;
[0041]
对上述对数进行离散余弦变换(dct),得到梅尔倒谱系数c(n),即mfcc特征,如公式8所示:
[0042][0043]

、动态特征提取:
[0044]
mfcc反映了心音信号的静态信息,心音信号的动态信息也包含丰富的病理特征,可用于进一步提高分类精度,为反映心音信号的动态信息,本文基于mfcc提取一阶差分系数d(n)和二阶差分系数d2(n),计算公式如公式9和公式10所示:
[0045][0046][0047]
进一步需要说明的,所述s3中混合神经网络模型由四种结构组成:输入输出、cnn、gru和dense,该混合神经网络模型将cnn提取的编码局部特征与gru记录的长期相关性进行融合,最后使用全连接层学习全局特征,在时间和空间上尽可能完整地提取音频信号的特征信息,混合神经网络模型是使用tensorflow框架实现的,混合神经网络模型的输入张量为199x39x1,混合神经网络模型使用了三个二维卷积层,卷积层有两个参数需要调整,第一个参数是从输入中提取的块的大小,与卷积核的大小相同,设置为3x3,另一个参数是输出特征图的深度,在具体实现中,前两个卷积层的深度为32,最后一层的深度为64,与主流的relu激活函数相比,本文使用prelu作为激活函数,prelu可以在不增加计算量的情况下有效改善模型的过拟合问题,同时收敛速度更快,误差更低,bn层针对每个批次进行处理,当神经网络层数过多时,每经过一个隐藏层,数据的分布就会发生变化,简单地根据梯度下降修改参数会导致训练收敛非常缓慢,使用bn层不仅减少了训练时间,而且使模型收敛更快,同时更好地控制了梯度消失和梯度爆炸的问题。
[0048]
进一步需要说明的,所述cnn模型结构它有四种隐藏层,分别是:卷积层(con2d)、参数校正线性单元层(prelu)、池化层(maxpooling2d)和归一化层(batchnormalization)。
[0049]
进一步需要说明的,所述rnn是一种专门处理序列数据的神经网络,rnn可以直接接受一维心音信号并对其进行训练。
[0050]
进一步需要说明的,所述gru有两个重要的结构:重置门和更新门,重置门控制应该忘记多少过去的信息,更新门决定在当前记忆时刻之前可以保留多少信息。
[0051]
有益效果
[0052]
与现有技术相比,本发明提供了一种基于卷积循环神经网络的心音分类方法,具备以下有益效果:
[0053]
针对心音的三分类问题构建了一个混合神经网络模型,与传统的声学特征提取方法相比,本文采用基于mfcc的增强特征提取算法,保留了原始心音数据中的静态和动态特
征,在实验中表现出优越的性能。虽然本文使用混合了cnn和gru的神经网络来获得较高的准确率,但该模型并没有表现出临床医学所需的性能,这意味着工作者需要与具有丰富临床经验的专家合作,收集更多权威和可靠的心音数据集。一般来说crnn的模型结构比单一结构模型具有更好的性能。对识别心音等时间相关性强的序列数据有很好的分类效果。它仍然是处理复杂生理信号分类的有效方法。
附图说明
[0054]
图1为本发明一种基于卷积循环神经网络的心音分类方法的流程示意图;
[0055]
图2为本发明一种基于卷积循环神经网络的心音分类方法的整体结构示意图;
[0056]
图3为本发明一种基于卷积循环神经网络的心音分类方法的cnn结构示意图;
[0057]
图4为本发明一种基于卷积循环神经网络的心音分类方法的gru的原理图;
[0058]
图5为本发明一种基于卷积循环神经网络的心音分类方法的rnn的结构图;
[0059]
图6为本发明一种基于卷积循环神经网络的心音分类方法的心音波形图及其特征示例,包括图6a、图6b和图6c;
[0060]
图7为本发明一种基于卷积循环神经网络的心音分类方法的实验结果对比图;
[0061]
图8为为本发明一种基于卷积循环神经网络的心音分类方法的模型性能图。
具体实施方式
[0062]
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0063]
一种基于卷积循环神经网络的心音分类方法,包括以下步骤:
[0064]
s1:分别对三个不同平台的心音数据集进行采集并预处理,并将其融合为一个数据集;
[0065]
s1中对心音数据集预处理具体为:
[0066]

、在采集心音音频时,对心音音频进行过滤,为了完整保留心音信号的病理特征,将心音音频送入二阶25-400hz巴特沃斯中值滤波器,滤除心音信号中的高低频杂音;
[0067]

、将采集到的心音音频信号下采样到2000hz;
[0068]

、以2s为单位对采集到心音音频信号进行切割,并丢弃了小于2s的心音音频。
[0069]
s2:对经过s1心音信号进行预处理后,通过特征工程提取心音的mfcc,并计算mfcc的一阶差分系数d(n)和二阶差分系数d2(n);
[0070]
s2中特征工程具体为:
[0071]
一种基于mfcc的改进特征提取算法,人耳对频率的感知是对数的,即对低频段的变化敏感,对高频段的变化不敏感,在特征工程中使用线性分布的频谱图会影响模型的性能,mfcc反映了人耳与声音频率之间的非线性关系,可以有效提取心音音频中的病理特征,mfcc的计算公式如公式1所示:
[0072]
mel(f)=2595lg(1+f/700)(1)
[0073]

、对信号预加重;
[0074]
在处理心音信号时,心血管运动时产生的高频信号不足,低频信号充足,造成这种现象的原因可以从物理层面来解释的,声能在介质中传播的过程中,频率越高越容易丢失,预加重弥补了高频的损失,保护了原始心音信号,心音信号通过高通滤波器以缩小信号的高低频分量之间的强度差距,信号x[n]的具体操作如公式2所示:
[0075]
y[n]=x[n]-αx[n-1]
ꢀꢀ
(2)
[0076]
其中α通常取接近1的值;
[0077]

、对经过a加重的心音音频信号进行分帧加窗;
[0078]
要得到心音音频中各个频率元素的分布,需要对音频信号进行傅里叶变换,而傅里叶变换要求输入信号必须是稳定的,所以需要对音频信号进行分帧和加窗处理第一的,成帧就是将原始信号按时间分成若干个小块,一个块称为一帧,在成帧过程中,原始信号会出现频谱泄漏现象,原始信号和成帧后信号对应的频谱差别很大,汉明窗函数可以有效地克服泄漏现象,汉明窗函数w(n)如下:
[0079]
w(n)=(1-α)-αcos(2πn/(n-1)),0≤n≤n-1
ꢀꢀ
(3)
[0080]
其中α值为0.46;
[0081]

、对经过e分帧加窗后的心音频信号进行获取功率谱;
[0082]
本文在分帧和加窗后,对数据使用离散傅里叶变换(dft),将时域信号变换为频域信号,得到频谱x(k),如公式4所示:
[0083][0084]
功率谱p(k)等于信号谱x(k)为其模的平方,如式5所示,功率谱更准确地表达了心音信号的能量特性,保留了部分幅度元素心音谱,并舍弃心音谱的相位特征,其中:
[0085][0086]

、将经过f得到的功率谱使用mel滤波器组进行滤波,得到mel滤波组;
[0087]
根据人耳对声音的感知尺度,将上面得到的功率谱使用mel滤波器组进行滤波,得到mel谱,mel滤波器组在图像上表示为一组三角滤波器,通常一组包含20到40个上升三角滤波器,每个三角滤波器的起始位置在前一个三角滤波器的中点,并且因为它有一个mel标度中的线性频率,称为mel滤波器组,在每个频率,计算p(k)和滤波器hm(k)的乘积,定义具有m个滤波器的三角滤波器组,三角滤波器的频率响应hm(k)计算如下:
[0088][0089]
其中,m代表滤波器的序号,f(m-1)、f(m)、f(m+1)分别对应滤波器的起点、中点和终点;
[0090]

、对数谱计算;
[0091]
通过对数运算得到每帧的对数能谱s(m),如公式7所示:
[0092][0093]

、对经过

得到的对数进行离散余弦变换;
[0094]
对上述对数进行离散余弦变换(dct),得到梅尔倒谱系数c(n),即mfcc特征,如公式8所示:
[0095][0096]

、动态特征提取:
[0097]
mfcc反映了心音信号的静态信息,心音信号的动态信息也包含丰富的病理特征,可用于进一步提高分类精度,为反映心音信号的动态信息,本文基于mfcc提取一阶差分系数d(n)和二阶差分系数d2(n),计算公式如公式9和公式10所示:
[0098][0099][0100]
s3:将s2中获取到的梅尔倒谱系数和其差分系数被输入到基于cnn和rnn的混合神经网络模型进行学习及分析;
[0101]
s3中混合神经网络模型由四种结构组成:输入输出、cnn、gru和dense,该混合神经网络模型将cnn提取的编码局部特征与gru记录的长期相关性进行融合,最后使用全连接层学习全局特征,在时间和空间上尽可能完整地提取音频信号的特征信息,混合神经网络模型是使用tensorflow框架实现的,混合神经网络模型的输入张量为199x39x1,混合神经网络模型使用了三个二维卷积层,卷积层有两个参数需要调整,第一个参数是从输入中提取的块的大小,与卷积核的大小相同,设置为3x3,另一个参数是输出特征图的深度,在具体实现中,前两个卷积层的深度为32,最后一层的深度为64,与主流的relu激活函数相比,本文使用prelu作为激活函数,prelu可以在不增加计算量的情况下有效改善模型的过拟合问题,同时收敛速度更快,误差更低,bn层针对每个批次进行处理,当神经网络层数过多时,每经过一个隐藏层,数据的分布就会发生变化,简单地根据梯度下降修改参数会导致训练收敛非常缓慢,使用bn层不仅减少了训练时间,而且使模型收敛更快,同时更好地控制了梯度消失和梯度爆炸的问题。
[0102]
本文构建的cnn模型结构如图2所示,它有四种隐藏层,分别是:卷积层(con2d)、参数校正线性单元层(prelu)、池化层(maxpooling2d)和归一化层(batchnormalization)。本文中的混合神经网络模型是使用tensorflow框架实现的。本文构建的神经网络的输入张量为199x39x1。本文构建的神经网络使用了三个二维卷积层。卷积层有两个参数需要调整。第一个参数是从输入中提取的块的大小,与卷积核的大小相同,设置为3x3。另一个参数是输出特征图的深度。在具体实现中,前两个卷积层的深度为32,最后一层的深度为64。与主流的relu激活函数相比,本文使用prelu作为激活函数。prelu可以在不增加计算量的情况下
有效改善模型的过拟合问题,同时收敛速度更快,误差更低。bn层针对每个批次进行处理。当神经网络层数过多时,每经过一个隐藏层,数据的分布就会发生变化。简单地根据梯度下降修改参数会导致训练收敛非常缓慢。使用bn层不仅减少了训练时间,而且使模型收敛更快,同时更好地控制了梯度消失和梯度爆炸的问题。
[0103]
rnn是一种专门处理序列数据的神经网络。rnn可以直接接受一维心音信号并对其进行训练,但是在之前的实验中这种方法的模型准确率很低,只有80%左右,但这并不是因为rnn不能很好地识别心音信号。事实上,rnn已被证明在心音分类问题上非常有效,造成这种现象的主要原因是心音音频中的背景噪声。gru层是标准rnn的改进版本,它利用数据的时间顺序。尽管如此,gru对序列数据有更实质性的长期理解,并且计算成本更低。鉴于我们已经使用下采样、切片等扩展了心音数据集,这种长时间的相关处理当然可以更好地利用心音数据集之间的连接。除此之外,gru的参数更少,大大加快了训练中的迭代速度。这个时间优势可以在不经意间解决很多实际问题。gru有两个重要的结构:重置门和更新门。gru的原理图如图3所示。重置门控制应该忘记多少过去的信息,更新门决定在当前记忆时刻之前可以保留多少信息。
[0104]
gru有两个重要的结构:重置门和更新门,重置门控制应该忘记多少过去的信息,更新门决定在当前记忆时刻之前可以保留多少信息。
[0105]
dropout是由hiton等人提出的,它是最有效和最常用的神经网络正则化方法之一。正则化是一种强制降低模型权重、限制模型复杂度、使权重值分布更规则以防止过拟合的方法。盖尔等人。确定了在递归神经网络中使用dropout的正确方法。本文在gru层之后对数据进行了扁平化,使用了dropout层。经验证,模型在参数设置为0.5时效果最佳,如图4所示。在全连接层中,第一个dense层接收从cnn和gru中提取的特征,根据参数设置为64gru输出的张量大小。由于本文实现了心音的三分类任务,因此将第二个dense层的参数设置为3。最后由softmax层输出分类结果。
[0106]
s4:经过s3处理后,最终将心音进行分类,分别为正常、异常和噪音。
[0107]
所述s1中三个不同平台的心音数据分别是physionetchallenge2016心音数据库、kaggle心音数据集和kahn心音数据集。
[0108]
实施例:
[0109]
本文选取的实验心音数据来自三个平台,分别是physionetchallenge2016心音数据库、kaggle心音数据集和kahn心音数据集。数据集信息如表1所示。
[0110]
phyionet是一个由麻省理工学院计算生理学实验室管理的复杂生理信号研究资源平台。在2016年physionet举办的心音分类比赛中,为鼓励参赛者开发算法,phyionet发布了权威的心音数据集。心音数据集采样频率相同,数据量大,噪声小。数据集的标签分类比较简单,分为正常和异常两类。音频长度变化很大,范围在5s到120s之间。本文在分类任务之前剪切了音频。kaggle是著名的人工智能竞赛平台。kaggle发布的心音数据集中的音频长度从1s到30s不等。太短的音频不能有效表达心音的病理特征,需要在预处理过程中进行适当的处理。标签主要分为三种类型,即:正常、空白和异常。khan数据集由其作者在github平台上发布。作者对数据集进行了预处理。音频采样频率相同,长度相同,杂音更少。数据标签有五类:正常、主动脉瓣狭窄、二尖瓣关闭不全、二尖瓣狭窄和杂音,后四类是心血管疾病患者的异常心音信号。
[0111]
表1数据集格式
[0112][0113]
图6显示了三种心音音频以及从特征工程中提取的与mfcc相关的所有特征。从图中可以看出,无法识别的心音或噪声与其他两种心音差异更大。在频谱图中,正常心音的分布较为规则,异常心音的分布有时会在相邻时间产生巨大的波动,无法辨认的心音或噪声接近完全无序。
[0114]
本文使用准确率、精度和召回率作为测量值来评估所提出的方法。它们的定义如下:
[0115][0116][0117][0118]
预处理后的心音数据集有足够的数据,因此本文使用验证集对实验进行评估。图7显示了验证集的准确率在第九轮达到最高水平,验证集的损失在第九轮达到最低水平。之后,验证集的准确率一直徘徊在最高峰之下,从未超过最高值,验证集的损失值不断上升。在此过程中,模型保存了训练集中间调信号的不重要或无效特征,导致训练集准确率不断上升,验证集准确率下降,揭示了训练集准确率没有实际参考意义模型评价的意义。
[0119]
从图7可以看出,在30轮训练的情况下,经过9轮训练,网络产生了明显的过拟合,模型的泛化能力持续下降。考虑到过拟合模型对测试集的不利影响,我们不能直接在测试集上使用这个训练好的模型的准确率,所以我们从零开始训练了一个新的网络,总共十轮,并在测试上评估了模型放。该模型在测试集上达到了92.27%的准确率,比在测试集上训练30轮的模型高0.18%。
[0120]
过拟合存在于所有机器学习问题中。获得更权威的心音数据是最好的解决方案。调整模型的容量也可以在一定程度上减少过拟合:如果网络只能记住更多的特征,那么在模型的优化过程中,心音信号最重要的特征就会保存在模型中,更容易得到泛化能力更强的模型。
[0121]
对比例:
[0122]
表2对比试验
[0123][0124]
上述对比实验结果表明,与单一结构的cnn和rnn结构相比,混合crnn结构在心音分类问题上具有更好的性能,准确率高出7%左右。在心音的早期诊断中,心音分类正常的受试者可以排除心血管疾病的影响,有助于医疗资源有限的诊所更好地配置医疗资源。crnn的结构在心音分类过程中具有互补的优势。根据实验和文献,深度学习在心音分类方面普遍高于传统机器学习。这表明深度学习技术在心脏分类实践中确实有助于促进心脏信号自动分类的应用。
[0125]
图8显示crnn表现出比单一模型更好的性能。标准的卷积层特征提取过程可能过于简单,因为卷积运算后的特征是线性的,但输入信息并不是线性可分的,所以通过激活函数进行非线性运算,能够更好的去除数据映射中的冗余特征,增强卷积神经网络的表达能力。目前,许多工作人员已经从rnn及其变体lstm中提取了心音特征,但很少有人使用gru层。从cnn和gru提取的空间和时间特征在组合时表现异常出。与其他分类方案相比,所提出的方法分类方案产生了更好的结果。这证明,如果工作人员想要进一步提高心音分类的准确率,就需要从混合神经网络的角度出发,因为单一的神经网络结构并不能完全表达心音中复杂的病理特征。该实验的另一个方面证明了使用基于mfcc的特征作为心音分类输入的优越性。mfcc是一种至关重要的声学信号,其提取方法已经成熟。从实验结果可以证明,使用基于mfcc的特征对于提高模型的准确率和泛化能力是非常有帮助的。根本原因在于这一特性可以保留心音的静态和动态特性。从物理上看,mfcc反映了心音信号在不同频率范围内的能量分布,这种分布很好地表达了正常心音与异常心音的差异以及无法识别的噪声。这就是为什么这种方式使得基于mfcc的特征优于过去使用的小波、频谱和其他特征的原因。根据实验结果,后续工作人员如果想进一步提高心音分类的准确率,不妨从mfcc入手,在mfcc的基础上进一步提取不同的特征,包括不限于一阶差分系数和二阶差分系数,此外与其他声学信号组合后也有望进一步提高分类精度。
[0126]
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
[0127]
尽管已经示出和描述了本发明的实施例,对于本领域的普通技术人员而言,可以理解在不脱离本发明的原理和精神的情况下可以对这些实施例进行多种变化、修改、替换
和变型,本发明的范围由所附权利要求及其等同物限定。

技术特征:


1.一种基于卷积循环神经网络的心音分类方法,其特征在于,包括以下步骤:s1:分别对三个不同平台的心音数据集进行采集并预处理,并将其融合为一个数据集;s2:对经过s1心音信号进行预处理后,通过特征工程提取心音的mfcc,并计算mfcc的一阶差分系数d(n)和二阶差分系数d2(n);s3:将s2中获取到的梅尔倒谱系数和其差分系数被输入到基于cnn和rnn的混合神经网络模型进行学习及分析;s4:经过s3处理后,最终将心音进行分类,分别为正常、异常和噪音。2.根据权利要求1所述的一种基于卷积循环神经网络的心音分类方法,其特征在于:所述s1中三个不同平台的心音数据分别是physionetchal lenge2016心音数据库、kaggle心音数据集和kahn心音数据集。3.根据权利要求1所述的一种基于卷积循环神经网络的心音分类方法,其特征在于:所述s1中对心音数据集预处理具体为:

、在采集心音音频时,对心音音频进行过滤,为了完整保留心音信号的病理特征,将心音音频送入二阶25-400hz巴特沃斯中值滤波器,滤除心音信号中的高低频杂音;

、将采集到的心音音频信号下采样到2000hz;

、以2s为单位对采集到心音音频信号进行切割,并丢弃了小于2s的心音音频。4.根据权利要求1所述的一种基于卷积循环神经网络的心音分类方法,其特征在于:所述s2中特征工程具体为:一种基于mfcc的改进特征提取算法,人耳对频率的感知是对数的,即对低频段的变化敏感,对高频段的变化不敏感,在特征工程中使用线性分布的频谱图会影响模型的性能,mfcc反映了人耳与声音频率之间的非线性关系,可以有效提取心音音频中的病理特征,mfcc的计算公式如公式1所示:mel(f)=2595lg(1+f/700)
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(1)

、对信号预加重;在处理心音信号时,心血管运动时产生的高频信号不足,低频信号充足,造成这种现象的原因可以从物理层面来解释的,声能在介质中传播的过程中,频率越高越容易丢失,预加重弥补了高频的损失,保护了原始心音信号,心音信号通过高通滤波器以缩小信号的高低频分量之间的强度差距,信号x[n]的具体操作如公式2所示:y[n]=x[n]-αx[n-1]
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(2)其中α通常取接近1的值;

、对经过a加重的心音音频信号进行分帧加窗;要得到心音音频中各个频率元素的分布,需要对音频信号进行傅里叶变换,而傅里叶变换要求输入信号必须是稳定的,所以需要对音频信号进行分帧和加窗处理第一的,成帧就是将原始信号按时间分成若干个小块,一个块称为一帧,在成帧过程中,原始信号会出现频谱泄漏现象,原始信号和成帧后信号对应的频谱差别很大,汉明窗函数可以有效地克服泄漏现象,汉明窗函数w(n)如下:w(n)=(1-α)-αcos(2πn/(n-1)),0≤n≤n-1
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(3)其中α值为0.46;

、对经过e分帧加窗后的心音频信号进行获取功率谱;
本文在分帧和加窗后,对数据使用离散傅里叶变换(dft),将时域信号变换为频域信号,得到频谱x(k),如公式4所示:功率谱p(k)等于信号谱x(k)为其模的平方,如式5所示,功率谱更准确地表达了心音信号的能量特性,保留了部分幅度元素心音谱,并舍弃心音谱的相位特征,其中:

、将经过f得到的功率谱使用mel滤波器组进行滤波,得到mel滤波组;根据人耳对声音的感知尺度,将上面得到的功率谱使用mel滤波器组进行滤波,得到mel谱,mel滤波器组在图像上表示为一组三角滤波器,通常一组包含20到40个上升三角滤波器,每个三角滤波器的起始位置在前一个三角滤波器的中点,并且因为它有一个mel标度中的线性频率,称为mel滤波器组,在每个频率,计算p(k)和滤波器hm(k)的乘积,定义具有m个滤波器的三角滤波器组,三角滤波器的频率响应hm(k)计算如下:其中,m代表滤波器的序号,f(m-1)、f(m)、f(m+1)分别对应滤波器的起点、中点和终点;

、对数谱计算;通过对数运算得到每帧的对数能谱s(m),如公式7所示:

、对经过

得到的对数进行离散余弦变换;对上述对数进行离散余弦变换(dct),得到梅尔倒谱系数c(n),即mfcc特征,如公式8所示:

、动态特征提取:mfcc反映了心音信号的静态信息,心音信号的动态信息也包含丰富的病理特征,可用于进一步提高分类精度,为反映心音信号的动态信息,本文基于mfcc提取一阶差分系数d(n)和二阶差分系数d2(n),计算公式如公式9和公式10所示:
5.根据权利要求1所述的一种基于卷积循环神经网络的心音分类方法,其特征在于:所述s3中混合神经网络模型由四种结构组成:输入输出、cnn、gru和dense,该混合神经网络模型将cnn提取的编码局部特征与gru记录的长期相关性进行融合,最后使用全连接层学习全局特征,在时间和空间上尽可能完整地提取音频信号的特征信息,混合神经网络模型是使用tensorflow框架实现的,混合神经网络模型的输入张量为199x39x1,混合神经网络模型使用了三个二维卷积层,卷积层有两个参数需要调整,第一个参数是从输入中提取的块的大小,与卷积核的大小相同,设置为3x3,另一个参数是输出特征图的深度,在具体实现中,前两个卷积层的深度为32,最后一层的深度为64,与主流的relu激活函数相比,本文使用prelu作为激活函数,prelu可以在不增加计算量的情况下有效改善模型的过拟合问题,同时收敛速度更快,误差更低,bn层针对每个批次进行处理,当神经网络层数过多时,每经过一个隐藏层,数据的分布就会发生变化,简单地根据梯度下降修改参数会导致训练收敛非常缓慢,使用bn层不仅减少了训练时间,而且使模型收敛更快,同时更好地控制了梯度消失和梯度爆炸的问题。6.根据权利要求5所述的一种基于卷积循环神经网络的心音分类方法,其特征在于:所述cnn模型结构它有四种隐藏层,分别是:卷积层、参数校正线性单元层、池化层和归一化层。7.根据权利要求1所述的一种基于卷积循环神经网络的心音分类方法,其特征在于:所述rnn是一种专门处理序列数据的神经网络,rnn可以直接接受一维心音信号并对其进行训练。8.根据权利要求5所述的一种基于卷积循环神经网络的心音分类方法,其特征在于:所述gru有两个重要的结构:重置门和更新门,重置门控制应该忘记多少过去的信息,更新门决定在当前记忆时刻之前可以保留多少信息。

技术总结


本发明一种基于卷积循环神经网络的心音分类方法,首先,分别对三个不同平台的心音数据集进行预处理,并将其融合为一个数据集,对心音信号进行预处理后,通过特征工程的步骤提取心音的MFCC,然后计算MFCC的一阶和二阶差分系数,梅尔倒谱系数和其差分系数被输入到基于CNN和RNN的混合神经网络进行学习,最后,将其识别为正常、异常或噪音。与传统的声学特征提取方法相比,本文采用基于MFCC的增强特征提取算法,保留了原始心音数据中的静态和动态特征,在实验中表现出优越的性能。在实验中表现出优越的性能。在实验中表现出优越的性能。


技术研发人员:

李峰 王玲玲

受保护的技术使用者:

安徽财经大学

技术研发日:

2022.09.15

技术公布日:

2022/12/19

本文发布于:2024-09-22 12:42:39,感谢您对本站的认可!

本文链接:https://www.17tex.com/tex/2/45768.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:心音   信号   神经网络   卷积
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2024 Comsenz Inc.Powered by © 易纺专利技术学习网 豫ICP备2022007602号 豫公网安备41160202000603 站长QQ:729038198 关于我们 投诉建议