CN115486865A - 一种基于卷积循环神经网络的心音分类方法 - Google Patents
一种基于卷积循环神经网络的心音分类方法 Download PDFInfo
- Publication number
- CN115486865A CN115486865A CN202211122949.XA CN202211122949A CN115486865A CN 115486865 A CN115486865 A CN 115486865A CN 202211122949 A CN202211122949 A CN 202211122949A CN 115486865 A CN115486865 A CN 115486865A
- Authority
- CN
- China
- Prior art keywords
- heart sound
- neural network
- frequency
- heart
- signal
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 58
- 238000013528 artificial neural network Methods 0.000 title claims abstract description 44
- 125000004122 cyclic group Chemical group 0.000 title claims abstract description 9
- 230000005236 sound signal Effects 0.000 claims abstract description 62
- 238000013527 convolutional neural network Methods 0.000 claims abstract description 18
- 238000000605 extraction Methods 0.000 claims abstract description 12
- 238000007781 pre-processing Methods 0.000 claims abstract description 12
- 230000002159 abnormal effect Effects 0.000 claims abstract description 10
- 230000003068 static effect Effects 0.000 claims abstract description 6
- 238000001228 spectrum Methods 0.000 claims description 41
- 238000003062 neural network model Methods 0.000 claims description 20
- 230000008569 process Effects 0.000 claims description 17
- 230000000306 recurrent effect Effects 0.000 claims description 16
- 230000006870 function Effects 0.000 claims description 15
- 230000001575 pathological effect Effects 0.000 claims description 13
- 238000012545 processing Methods 0.000 claims description 13
- 238000009432 framing Methods 0.000 claims description 12
- 230000004913 activation Effects 0.000 claims description 9
- 238000001914 filtration Methods 0.000 claims description 9
- 238000004364 calculation method Methods 0.000 claims description 7
- 239000000284 extract Substances 0.000 claims description 7
- 230000008859 change Effects 0.000 claims description 6
- 210000005069 ears Anatomy 0.000 claims description 6
- 238000010606 normalization Methods 0.000 claims description 5
- 230000007774 longterm Effects 0.000 claims description 4
- 230000000717 retained effect Effects 0.000 claims description 4
- 238000004458 analytical method Methods 0.000 claims description 3
- 230000002526 effect on cardiovascular system Effects 0.000 claims description 3
- 230000008447 perception Effects 0.000 claims description 3
- 238000011176 pooling Methods 0.000 claims description 3
- 230000004044 response Effects 0.000 claims description 3
- 230000000630 rising effect Effects 0.000 claims description 3
- 238000002474 experimental method Methods 0.000 abstract description 7
- 208000024172 Cardiovascular disease Diseases 0.000 description 16
- 238000012549 training Methods 0.000 description 9
- 238000010586 diagram Methods 0.000 description 7
- 238000012360 testing method Methods 0.000 description 6
- 230000000694 effects Effects 0.000 description 5
- 102100032202 Cornulin Human genes 0.000 description 4
- 101000920981 Homo sapiens Cornulin Proteins 0.000 description 4
- 238000010801 machine learning Methods 0.000 description 4
- 238000005070 sampling Methods 0.000 description 4
- 241000288105 Grus Species 0.000 description 3
- 230000009471 action Effects 0.000 description 3
- 230000008901 benefit Effects 0.000 description 3
- 230000000052 comparative effect Effects 0.000 description 3
- 238000010200 validation analysis Methods 0.000 description 3
- 238000012795 verification Methods 0.000 description 3
- FGUUSXIOTUKUDN-IBGZPJMESA-N C1(=CC=CC=C1)N1C2=C(NC([C@H](C1)NC=1OC(=NN=1)C1=CC=CC=C1)=O)C=CC=C2 Chemical compound C1(=CC=CC=C1)N1C2=C(NC([C@H](C1)NC=1OC(=NN=1)C1=CC=CC=C1)=O)C=CC=C2 FGUUSXIOTUKUDN-IBGZPJMESA-N 0.000 description 2
- LFQSCWFLJHTTHZ-UHFFFAOYSA-N Ethanol Chemical compound CCO LFQSCWFLJHTTHZ-UHFFFAOYSA-N 0.000 description 2
- 238000013459 approach Methods 0.000 description 2
- 238000013473 artificial intelligence Methods 0.000 description 2
- 238000002555 auscultation Methods 0.000 description 2
- 239000008280 blood Substances 0.000 description 2
- 210000004369 blood Anatomy 0.000 description 2
- 230000000747 cardiac effect Effects 0.000 description 2
- 238000013135 deep learning Methods 0.000 description 2
- 230000036541 health Effects 0.000 description 2
- 230000002028 premature Effects 0.000 description 2
- 238000011160 research Methods 0.000 description 2
- 230000011218 segmentation Effects 0.000 description 2
- 238000012706 support-vector machine Methods 0.000 description 2
- 230000002123 temporal effect Effects 0.000 description 2
- 208000020128 Mitral stenosis Diseases 0.000 description 1
- 206010027727 Mitral valve incompetence Diseases 0.000 description 1
- 241000208125 Nicotiana Species 0.000 description 1
- 235000002637 Nicotiana tabacum Nutrition 0.000 description 1
- 206010042434 Sudden death Diseases 0.000 description 1
- 241001325280 Tricardia watsonii Species 0.000 description 1
- 230000002411 adverse Effects 0.000 description 1
- 230000004075 alteration Effects 0.000 description 1
- 206010002906 aortic stenosis Diseases 0.000 description 1
- 230000001746 atrial effect Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000017531 blood circulation Effects 0.000 description 1
- 230000036772 blood pressure Effects 0.000 description 1
- 208000026106 cerebrovascular disease Diseases 0.000 description 1
- 230000000295 complement effect Effects 0.000 description 1
- 208000016569 congenital mitral valve insufficiency Diseases 0.000 description 1
- 230000008602 contraction Effects 0.000 description 1
- 208000029078 coronary artery disease Diseases 0.000 description 1
- 238000013506 data mapping Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 230000008034 disappearance Effects 0.000 description 1
- 201000010099 disease Diseases 0.000 description 1
- 208000037265 diseases, disorders, signs and symptoms Diseases 0.000 description 1
- 239000003814 drug Substances 0.000 description 1
- 238000013399 early diagnosis Methods 0.000 description 1
- 235000019441 ethanol Nutrition 0.000 description 1
- 238000004880 explosion Methods 0.000 description 1
- 235000013305 food Nutrition 0.000 description 1
- 235000012055 fruits and vegetables Nutrition 0.000 description 1
- 208000035474 group of disease Diseases 0.000 description 1
- 210000002837 heart atrium Anatomy 0.000 description 1
- 210000003709 heart valve Anatomy 0.000 description 1
- 150000002632 lipids Chemical class 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 210000004115 mitral valve Anatomy 0.000 description 1
- 208000005907 mitral valve insufficiency Diseases 0.000 description 1
- 208000006887 mitral valve stenosis Diseases 0.000 description 1
- 238000002156 mixing Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 230000001717 pathogenic effect Effects 0.000 description 1
- 230000037081 physical activity Effects 0.000 description 1
- 230000035479 physiological effects, processes and functions Effects 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 208000004124 rheumatic heart disease Diseases 0.000 description 1
- 235000015598 salt intake Nutrition 0.000 description 1
- 238000012216 screening Methods 0.000 description 1
- 235000011888 snacks Nutrition 0.000 description 1
- 239000000126 substance Substances 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 210000000591 tricuspid valve Anatomy 0.000 description 1
Images
Classifications
-
- A—HUMAN NECESSITIES
- A61—MEDICAL OR VETERINARY SCIENCE; HYGIENE
- A61B—DIAGNOSIS; SURGERY; IDENTIFICATION
- A61B7/00—Instruments for auscultation
- A61B7/02—Stethoscopes
- A61B7/04—Electric stethoscopes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L25/00—Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00
- G10L25/03—Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 characterised by the type of extracted parameters
- G10L25/24—Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 characterised by the type of extracted parameters the extracted parameters being the cepstrum
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Health & Medical Sciences (AREA)
- Acoustics & Sound (AREA)
- Life Sciences & Earth Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Biomedical Technology (AREA)
- Theoretical Computer Science (AREA)
- Computational Linguistics (AREA)
- Molecular Biology (AREA)
- Artificial Intelligence (AREA)
- Computing Systems (AREA)
- Public Health (AREA)
- Veterinary Medicine (AREA)
- Surgery (AREA)
- Biophysics (AREA)
- Medical Informatics (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- Animal Behavior & Ethology (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Heart & Thoracic Surgery (AREA)
- Signal Processing (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Human Computer Interaction (AREA)
- Multimedia (AREA)
- Measuring Pulse, Heart Rate, Blood Pressure Or Blood Flow (AREA)
Abstract
本发明一种基于卷积循环神经网络的心音分类方法,首先,分别对三个不同平台的心音数据集进行预处理,并将其融合为一个数据集,对心音信号进行预处理后,通过特征工程的步骤提取心音的MFCC,然后计算MFCC的一阶和二阶差分系数,梅尔倒谱系数和其差分系数被输入到基于CNN和RNN的混合神经网络进行学习,最后,将其识别为正常、异常或噪音。与传统的声学特征提取方法相比,本文采用基于MFCC的增强特征提取算法,保留了原始心音数据中的静态和动态特征,在实验中表现出优越的性能。
Description
技术领域
本发明涉及心音分类技术领域,具体为一种基于卷积循环神经网络的心音分类方法及装置。
背景技术
近年来,随着物质生活水平的不断提高,心血管疾病(CVD)已成为全球范围内最普遍、最危险、最难克服的疾病系统之一。发表在《美国心脏病学院学报》上的《1990-2019年全球心血管疾病及其危险因素的负担》一文准确描述了心血管疾病对人类社会造成的危害,呼吁当前社会更加关注心血管疾病的早期发现和治疗。世界卫生组织报告称,心血管疾病每年夺去约1790万人的生命。心血管疾病给国家医疗系统带来了沉重的负担,严重危及患者的生命和健康,高昂的治疗费用给患者的家庭带来了压力。早期发现和治疗是降低死亡率和减轻各方负担的关键。
心血管疾病是指包括冠心病、脑血管病、风湿性心脏病等在内的一组疾病。油炸食品、快餐、酒精和烟草是主要的致病因素,它们会提高病人的血压、血糖和血脂,以及超重和肥胖,这可能导致过早死亡。找到有心血管疾病风险的群体,然后确保他们接受适当的治疗,可以防止因他们因心血管疾病而过早死亡。可以通过减少饮酒、减少盐的摄入、吃更多的水果和蔬菜以及从事更多的体育活动来实现减少因心血管疾病猝死的风险。通过听诊心音听证筛查心血管疾病是一种简单、必要和有效的方法,至今已有180多年的历史。心音的基本类型可分为四种,即第一心音S1、第二心音S2、第三心音S3和第四心音S4,其中S1是心脏瓣膜关闭时的振动发出的声音,S2是心室收缩时二尖瓣关闭发出的声音,S3是由三尖瓣关闭产生的,S4是在第一种心音之前出现的低频振动,持续时间约0.04秒。这是一种由心房收缩和心室快速充满血流而引起的振动,也被称为心房音。医生通过记录四种基本的心音,分析它们与标准情况的差异,并根据病人的临床情况对异常心音进行分类。在临床实践中,通过心音听诊确定病人的病情对医生的要求很高,要获得正确的结果通常很有难。由于工业化的发展,精密的机器已经成为标准的医疗工具,为了诊断和治疗病人,人们使用声学仪器记录心电图(PCG)来推断他们的病情。随着PCG的不断应用。利用信号处理和人工智能技术从PCG数据中提取生理和病理信息已逐渐成为一种流行趋势。
最初,研究人员使用传统的机器学习方法来分割PCG,以获得S1和S2等特征。经常使用的模型有以下几种:隐马尔可夫模型(HMM)、Adaboost、支持向量机(SVM)等。机器学习模型需要基于PCG的特征,这些特征已经过编码和转换。经常用于分类的心音特征有以下几点:频率、能量、小波、时间以及分割的心音信号。然而,从不同角度可以获得不同的特征,这些过程太复杂了。一般来说,这种复杂的计算过程会给医生和病人在医疗实践中带来很大困难。这些因素使得心音的准确分割变得更加复杂。通过PCG研究CVD的另一种方式是特征提取。工人们通常会提取不同种类的特征。根据心音信号的生理特征,如每分钟的心跳、每期的收缩期和舒张期的长度,找出并计算出基于时间或频率的特征是相当容易的。然而,他们可能会失去一些关键的病理信息,而这些信息是无法通过时间或频率自行量化的,如S2的形状。研究越来越多地集中在从时间-频率域提取更多的鉴别性特征,以提高特征提取的性能。也有必要在转换后的时频域中表示PCG信号,以便从中提取特征。由于很难通过简单的PCG分割和特征提取来研究出CVD,研究人员将注意力转向了建立一个智能系统的端到端方法。虽然反向传播(BP)和人工神经网络(ANN)在识别率方面有一些优势,但仍离高准确率有一些距离要走。首先,这些算法都需要人工选择实用的特征,而特征的选择直接影响分类器的性能。考虑到心音信号的复杂性,以及缺乏检测心音特征的标准,仍有必要研究是否能从复杂的信号中有效提取心音特征。由于这些方法是在小样本中进行训练和分类的,其普遍性和稳健性无法用任何方法来验证。此外,它费时费力,使未来仍面临时间敏感和决策困难的难题。
为此,我们急需设计一种基于卷积循环神经网络的心音分类方法解决上述问题。
发明内容
为解决数据加密的操作较为繁琐,工作量大和加密效果不佳的问题,本发明提供如下技术方案:
一种基于卷积循环神经网络的心音分类方法,包括以下步骤:
S1:分别对三个不同平台的心音数据集进行采集并预处理,并将其融合为一个数据集;
S2:对经过S1心音信号进行预处理后,通过特征工程提取心音的MFCC,并计算MFCC的一阶差分系数D(n)和二阶差分系数D2(n);
S3:将S2中获取到的梅尔倒谱系数和其差分系数被输入到基于CNN和RNN的混合神经网络模型进行学习及分析;
S4:经过S3处理后,最终将心音进行分类,分别为正常、异常和噪音。
需进一步说明的,所述S1中三个不同平台的心音数据分别是Phys ioNetCha llenge2016心音数据库、kaggl e心音数据集和Kahn心音数据集。
需进一步说明的,所述S1中对心音数据集预处理具体为:
①、在采集心音音频时,对心音音频进行过滤,为了完整保留心音信号的病理特征,将心音音频送入二阶25-400hz巴特沃斯中值滤波器,滤除心音信号中的高低频杂音;
②、将采集到的心音音频信号下采样到2000hz;
③、以2s为单位对采集到心音音频信号进行切割,并丢弃了小于2s的心音音频。
需进一步说明的,所述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所示:
进一步需要说明的,所述S3中混合神经网络模型由四种结构组成:输入输出、CNN、GRU和Dense,该混合神经网络模型将CNN提取的编码局部特征与GRU记录的长期相关性进行融合,最后使用全连接层学习全局特征,在时间和空间上尽可能完整地提取音频信号的特征信息,混合神经网络模型是使用TensorFlow框架实现的,混合神经网络模型的输入张量为199x39x1,混合神经网络模型使用了三个二维卷积层,卷积层有两个参数需要调整,第一个参数是从输入中提取的块的大小,与卷积核的大小相同,设置为3x3,另一个参数是输出特征图的深度,在具体实现中,前两个卷积层的深度为32,最后一层的深度为64,与主流的ReLU激活函数相比,本文使用PReLU作为激活函数,PReLU可以在不增加计算量的情况下有效改善模型的过拟合问题,同时收敛速度更快,误差更低,BN层针对每个批次进行处理,当神经网络层数过多时,每经过一个隐藏层,数据的分布就会发生变化,简单地根据梯度下降修改参数会导致训练收敛非常缓慢,使用BN层不仅减少了训练时间,而且使模型收敛更快,同时更好地控制了梯度消失和梯度爆炸的问题。
进一步需要说明的,所述CNN模型结构它有四种隐藏层,分别是:卷积层(Con2D)、参数校正线性单元层(PRelu)、池化层(MaxPooling2D)和归一化层(BatchNormalization)。
进一步需要说明的,所述RNN是一种专门处理序列数据的神经网络,RNN可以直接接受一维心音信号并对其进行训练。
进一步需要说明的,所述GRU有两个重要的结构:重置门和更新门,重置门控制应该忘记多少过去的信息,更新门决定在当前记忆时刻之前可以保留多少信息。
有益效果
与现有技术相比,本发明提供了一种基于卷积循环神经网络的心音分类方法,具备以下有益效果:
针对心音的三分类问题构建了一个混合神经网络模型,与传统的声学特征提取方法相比,本文采用基于MFCC的增强特征提取算法,保留了原始心音数据中的静态和动态特征,在实验中表现出优越的性能。虽然本文使用混合了CNN和GRU的神经网络来获得较高的准确率,但该模型并没有表现出临床医学所需的性能,这意味着工作者需要与具有丰富临床经验的专家合作,收集更多权威和可靠的心音数据集。一般来说CRNN的模型结构比单一结构模型具有更好的性能。对识别心音等时间相关性强的序列数据有很好的分类效果。它仍然是处理复杂生理信号分类的有效方法。
附图说明
图1为本发明一种基于卷积循环神经网络的心音分类方法的流程示意图;
图2为本发明一种基于卷积循环神经网络的心音分类方法的整体结构示意图;
图3为本发明一种基于卷积循环神经网络的心音分类方法的CNN结构示意图;
图4为本发明一种基于卷积循环神经网络的心音分类方法的GRU的原理图;
图5为本发明一种基于卷积循环神经网络的心音分类方法的RNN的结构图;
图6为本发明一种基于卷积循环神经网络的心音分类方法的心音波形图及其特征示例,包括图6a、图6b和图6c;
图7为本发明一种基于卷积循环神经网络的心音分类方法的实验结果对比图;
图8为为本发明一种基于卷积循环神经网络的心音分类方法的模型性能图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
一种基于卷积循环神经网络的心音分类方法,包括以下步骤:
S1:分别对三个不同平台的心音数据集进行采集并预处理,并将其融合为一个数据集;
S1中对心音数据集预处理具体为:
①、在采集心音音频时,对心音音频进行过滤,为了完整保留心音信号的病理特征,将心音音频送入二阶25-400hz巴特沃斯中值滤波器,滤除心音信号中的高低频杂音;
②、将采集到的心音音频信号下采样到2000hz;
③、以2s为单位对采集到心音音频信号进行切割,并丢弃了小于2s的心音音频。
S2:对经过S1心音信号进行预处理后,通过特征工程提取心音的MFCC,并计算MFCC的一阶差分系数D(n)和二阶差分系数D2(n);
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所示:
S3:将S2中获取到的梅尔倒谱系数和其差分系数被输入到基于CNN和RNN的混合神经网络模型进行学习及分析;
S3中混合神经网络模型由四种结构组成:输入输出、CNN、GRU和Dense,该混合神经网络模型将CNN提取的编码局部特征与GRU记录的长期相关性进行融合,最后使用全连接层学习全局特征,在时间和空间上尽可能完整地提取音频信号的特征信息,混合神经网络模型是使用TensorFlow框架实现的,混合神经网络模型的输入张量为199x39x1,混合神经网络模型使用了三个二维卷积层,卷积层有两个参数需要调整,第一个参数是从输入中提取的块的大小,与卷积核的大小相同,设置为3x3,另一个参数是输出特征图的深度,在具体实现中,前两个卷积层的深度为32,最后一层的深度为64,与主流的ReLU激活函数相比,本文使用PReLU作为激活函数,PReLU可以在不增加计算量的情况下有效改善模型的过拟合问题,同时收敛速度更快,误差更低,BN层针对每个批次进行处理,当神经网络层数过多时,每经过一个隐藏层,数据的分布就会发生变化,简单地根据梯度下降修改参数会导致训练收敛非常缓慢,使用BN层不仅减少了训练时间,而且使模型收敛更快,同时更好地控制了梯度消失和梯度爆炸的问题。
本文构建的CNN模型结构如图2所示,它有四种隐藏层,分别是:卷积层(Con2D)、参数校正线性单元层(PRelu)、池化层(MaxPooling2D)和归一化层(BatchNormalization)。本文中的混合神经网络模型是使用TensorFlow框架实现的。本文构建的神经网络的输入张量为199x39x1。本文构建的神经网络使用了三个二维卷积层。卷积层有两个参数需要调整。第一个参数是从输入中提取的块的大小,与卷积核的大小相同,设置为3x3。另一个参数是输出特征图的深度。在具体实现中,前两个卷积层的深度为32,最后一层的深度为64。与主流的ReLU激活函数相比,本文使用PReLU作为激活函数。PReLU可以在不增加计算量的情况下有效改善模型的过拟合问题,同时收敛速度更快,误差更低。BN层针对每个批次进行处理。当神经网络层数过多时,每经过一个隐藏层,数据的分布就会发生变化。简单地根据梯度下降修改参数会导致训练收敛非常缓慢。使用BN层不仅减少了训练时间,而且使模型收敛更快,同时更好地控制了梯度消失和梯度爆炸的问题。
RNN是一种专门处理序列数据的神经网络。RNN可以直接接受一维心音信号并对其进行训练,但是在之前的实验中这种方法的模型准确率很低,只有80%左右,但这并不是因为RNN不能很好地识别心音信号。事实上,RNN已被证明在心音分类问题上非常有效,造成这种现象的主要原因是心音音频中的背景噪声。GRU层是标准RNN的改进版本,它利用数据的时间顺序。尽管如此,GRU对序列数据有更实质性的长期理解,并且计算成本更低。鉴于我们已经使用下采样、切片等扩展了心音数据集,这种长时间的相关处理当然可以更好地利用心音数据集之间的连接。除此之外,GRU的参数更少,大大加快了训练中的迭代速度。这个时间优势可以在不经意间解决很多实际问题。GRU有两个重要的结构:重置门和更新门。GRU的原理图如图3所示。重置门控制应该忘记多少过去的信息,更新门决定在当前记忆时刻之前可以保留多少信息。
GRU有两个重要的结构:重置门和更新门,重置门控制应该忘记多少过去的信息,更新门决定在当前记忆时刻之前可以保留多少信息。
Dropout是由Hiton等人提出的,它是最有效和最常用的神经网络正则化方法之一。正则化是一种强制降低模型权重、限制模型复杂度、使权重值分布更规则以防止过拟合的方法。盖尔等人。确定了在递归神经网络中使用dropout的正确方法。本文在GRU层之后对数据进行了扁平化,使用了Dropout层。经验证,模型在参数设置为0.5时效果最佳,如图4所示。在全连接层中,第一个Dense层接收从CNN和GRU中提取的特征,根据参数设置为64GRU输出的张量大小。由于本文实现了心音的三分类任务,因此将第二个Dense层的参数设置为3。最后由Softmax层输出分类结果。
S4:经过S3处理后,最终将心音进行分类,分别为正常、异常和噪音。
所述S1中三个不同平台的心音数据分别是PhysioNetChallenge2016心音数据库、kaggle心音数据集和Kahn心音数据集。
实施例:
本文选取的实验心音数据来自三个平台,分别是PhysioNetChallenge2016心音数据库、kaggle心音数据集和Kahn心音数据集。数据集信息如表1所示。
Phyionet是一个由麻省理工学院计算生理学实验室管理的复杂生理信号研究资源平台。在2016年PhysioNet举办的心音分类比赛中,为鼓励参赛者开发算法,Phyionet发布了权威的心音数据集。心音数据集采样频率相同,数据量大,噪声小。数据集的标签分类比较简单,分为正常和异常两类。音频长度变化很大,范围在5s到120s之间。本文在分类任务之前剪切了音频。Kaggle是著名的人工智能竞赛平台。Kaggle发布的心音数据集中的音频长度从1s到30s不等。太短的音频不能有效表达心音的病理特征,需要在预处理过程中进行适当的处理。标签主要分为三种类型,即:正常、空白和异常。Khan数据集由其作者在GitHub平台上发布。作者对数据集进行了预处理。音频采样频率相同,长度相同,杂音更少。数据标签有五类:正常、主动脉瓣狭窄、二尖瓣关闭不全、二尖瓣狭窄和杂音,后四类是心血管疾病患者的异常心音信号。
表1数据集格式
图6显示了三种心音音频以及从特征工程中提取的与MFCC相关的所有特征。从图中可以看出,无法识别的心音或噪声与其他两种心音差异更大。在频谱图中,正常心音的分布较为规则,异常心音的分布有时会在相邻时间产生巨大的波动,无法辨认的心音或噪声接近完全无序。
本文使用准确率、精度和召回率作为测量值来评估所提出的方法。它们的定义如下:
预处理后的心音数据集有足够的数据,因此本文使用验证集对实验进行评估。图7显示了验证集的准确率在第九轮达到最高水平,验证集的损失在第九轮达到最低水平。之后,验证集的准确率一直徘徊在最高峰之下,从未超过最高值,验证集的损失值不断上升。在此过程中,模型保存了训练集中间调信号的不重要或无效特征,导致训练集准确率不断上升,验证集准确率下降,揭示了训练集准确率没有实际参考意义模型评价的意义。
从图7可以看出,在30轮训练的情况下,经过9轮训练,网络产生了明显的过拟合,模型的泛化能力持续下降。考虑到过拟合模型对测试集的不利影响,我们不能直接在测试集上使用这个训练好的模型的准确率,所以我们从零开始训练了一个新的网络,总共十轮,并在测试上评估了模型放。该模型在测试集上达到了92.27%的准确率,比在测试集上训练30轮的模型高0.18%。
过拟合存在于所有机器学习问题中。获得更权威的心音数据是最好的解决方案。调整模型的容量也可以在一定程度上减少过拟合:如果网络只能记住更多的特征,那么在模型的优化过程中,心音信号最重要的特征就会保存在模型中,更容易得到泛化能力更强的模型。
对比例:
表2对比试验
上述对比实验结果表明,与单一结构的CNN和RNN结构相比,混合CRNN结构在心音分类问题上具有更好的性能,准确率高出7%左右。在心音的早期诊断中,心音分类正常的受试者可以排除心血管疾病的影响,有助于医疗资源有限的诊所更好地配置医疗资源。CRNN的结构在心音分类过程中具有互补的优势。根据实验和文献,深度学习在心音分类方面普遍高于传统机器学习。这表明深度学习技术在心脏分类实践中确实有助于促进心脏信号自动分类的应用。
图8显示CRNN表现出比单一模型更好的性能。标准的卷积层特征提取过程可能过于简单,因为卷积运算后的特征是线性的,但输入信息并不是线性可分的,所以通过激活函数进行非线性运算,能够更好的去除数据映射中的冗余特征,增强卷积神经网络的表达能力。目前,许多工作人员已经从RNN及其变体LSTM中提取了心音特征,但很少有人使用GRU层。从CNN和GRU提取的空间和时间特征在组合时表现异常出色。与其他分类方案相比,所提出的方法分类方案产生了更好的结果。这证明,如果工作人员想要进一步提高心音分类的准确率,就需要从混合神经网络的角度出发,因为单一的神经网络结构并不能完全表达心音中复杂的病理特征。该实验的另一个方面证明了使用基于MFCC的特征作为心音分类输入的优越性。MFCC是一种至关重要的声学信号,其提取方法已经成熟。从实验结果可以证明,使用基于MFCC的特征对于提高模型的准确率和泛化能力是非常有帮助的。根本原因在于这一特性可以保留心音的静态和动态特性。从物理上看,MFCC反映了心音信号在不同频率范围内的能量分布,这种分布很好地表达了正常心音与异常心音的差异以及无法识别的噪声。这就是为什么这种方式使得基于MFCC的特征优于过去使用的小波、频谱和其他特征的原因。根据实验结果,后续工作人员如果想进一步提高心音分类的准确率,不妨从MFCC入手,在MFCC的基础上进一步提取不同的特征,包括不限于一阶差分系数和二阶差分系数,此外与其他声学信号组合后也有望进一步提高分类精度。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
尽管已经示出和描述了本发明的实施例,对于本领域的普通技术人员而言,可以理解在不脱离本发明的原理和精神的情况下可以对这些实施例进行多种变化、修改、替换和变型,本发明的范围由所附权利要求及其等同物限定。
Claims (8)
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有两个重要的结构:重置门和更新门,重置门控制应该忘记多少过去的信息,更新门决定在当前记忆时刻之前可以保留多少信息。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211122949.XA CN115486865A (zh) | 2022-09-15 | 2022-09-15 | 一种基于卷积循环神经网络的心音分类方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211122949.XA CN115486865A (zh) | 2022-09-15 | 2022-09-15 | 一种基于卷积循环神经网络的心音分类方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115486865A true CN115486865A (zh) | 2022-12-20 |
Family
ID=84468577
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211122949.XA Pending CN115486865A (zh) | 2022-09-15 | 2022-09-15 | 一种基于卷积循环神经网络的心音分类方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115486865A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116364117A (zh) * | 2023-03-23 | 2023-06-30 | 南京市浦口医院 | 一种基于声振麦克风的低频电子听诊系统 |
CN116778968A (zh) * | 2023-06-20 | 2023-09-19 | 山东省人工智能研究院 | 一种基于深度可分离卷积与注意力机制的心音分类方法 |
-
2022
- 2022-09-15 CN CN202211122949.XA patent/CN115486865A/zh active Pending
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116364117A (zh) * | 2023-03-23 | 2023-06-30 | 南京市浦口医院 | 一种基于声振麦克风的低频电子听诊系统 |
CN116778968A (zh) * | 2023-06-20 | 2023-09-19 | 山东省人工智能研究院 | 一种基于深度可分离卷积与注意力机制的心音分类方法 |
CN116778968B (zh) * | 2023-06-20 | 2024-03-12 | 山东省人工智能研究院 | 一种基于深度可分离卷积与注意力机制的心音分类方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Chowdhury et al. | Time-frequency analysis, denoising, compression, segmentation, and classification of PCG signals | |
Mendonca et al. | A review of obstructive sleep apnea detection approaches | |
TWI596600B (zh) | 識別生理聲音的方法以及系統 | |
CN109961017A (zh) | 一种基于卷积循环神经网络的心音信号分类方法 | |
Delgado-Trejos et al. | Digital auscultation analysis for heart murmur detection | |
Uğuz | Adaptive neuro-fuzzy inference system for diagnosis of the heart valve diseases using wavelet transform with entropy | |
CN115486865A (zh) | 一种基于卷积循环神经网络的心音分类方法 | |
EP3885974B1 (en) | Methods and systems for identifying presence of abnormal heart sounds of a subject | |
CN111368627B (zh) | Cnn结合改进频率小波切片变换的心音分类方法及系统 | |
Milani et al. | Abnormal heart sound classification using phonocardiography signals | |
Vepa | Classification of heart murmurs using cepstral features and support vector machines | |
Banerjee et al. | Multi-class heart sounds classification using 2D-convolutional neural network | |
Singh et al. | Short unsegmented PCG classification based on ensemble classifier | |
Malik et al. | Multi-classification neural network model for detection of abnormal heartbeat audio signals | |
Ghosh et al. | Heart sound data acquisition and preprocessing techniques: A review | |
Alexander et al. | Screening of heart sounds using hidden Markov and Gammatone filterbank models | |
CN113925459A (zh) | 一种基于脑电特征融合的睡眠分期方法 | |
Maity et al. | Transfer learning based heart valve disease classification from Phonocardiogram signal | |
Milani et al. | A critical review of heart sound signal segmentation algorithms | |
Prabha et al. | Non-invasive diabetes mellitus detection system using machine learning techniques | |
Wołk et al. | Early and remote detection of possible heartbeat problems with convolutional neural networks and multipart interactive training | |
Mustafa et al. | Detection of heartbeat sounds arrhythmia using automatic spectral methods and cardiac auscultatory | |
Das et al. | Heart valve diseases detection based on feature-fusion and hierarchical LSTM network | |
Patidar et al. | Classification of heart disorders based on tunable-Q wavelet transform of cardiac sound signals | |
Pandey et al. | Automated Classification of Heart Disease using Deep Learning |
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 |