异常心音识别方法、异常心音识别模型及其训练方法与流程-j9九游会真人

文档序号:35874624发布日期:2023-10-28 12:10阅读:19来源:国知局
异常心音识别方法、异常心音识别模型及其训练方法与流程

1.本公开的实施例涉及机器学习技术领域,具体地,涉及异常心音识别方法、异常心音识别模型及其训练方法。


背景技术:

3.传统的先天性心脏病筛查模式是心音听诊,但是心音听诊对医生的筛查和诊断技术要求高,而且各地医疗资源分布不均,分级诊疗制度不完善,基层医生水平有限,因此传统的先天性心脏病筛查模式存在耗时耗力,同时对严重先天性心脏病、复杂先天性心脏病鉴别困难,对常见先天性心脏病漏检率高等问题。
4.通过机器学习对心音进行筛查以辅助识别心脏病在近年来被逐渐推广,其优点主要在于快速高效且不受时间和人力限制。


技术实现要素:

5.本文中描述的实施例提供了一种异常心音识别方法、异常心音识别模型及其训练方法、电子设备以及存储有计算机程序的计算机可读存储介质。
6.根据本公开的第一方面,提供了一种异常心音识别方法。该异常心音识别方法包括:获得待识别的心音音频信号;将心音音频信号在时域上分割成n个心音音频片段,其中,每个心音音频片段的时长相等;将n个心音音频片段分别单独输入经过预训练的一维卷积神经网络以得到n个心音识别结果,其中,一维卷积神经网络被训练成能够识别单个心音音频片段的时域特征是否存在异常,心音识别结果包括:正常心音、以及异常心音;确定n个心音识别结果中异常心音的比例;响应于该比例高于阈值,确定心音音频信号为异常心音音频信号。
7.在本公开的一些实施例中,将n个心音音频片段分别单独输入经过预训练的一维卷积神经网络以得到n个心音识别结果包括:分别以n个心音音频片段中的每个心音音频片段作为输入数据,对输入数据执行以下操作:依次通过一维卷积神经网络中的第一一维卷积神经网络模块、第二一维卷积神经网络模块、第三一维卷积神经网络模块和第四一维卷积神经网络模块来提取输入数据的多个时域特征,其中,第一一维卷积神经网络模块、第二一维卷积神经网络模块和第三一维卷积神经网络模块分别包括依次堆叠的两个一维卷积层、一个最大池化层和一个随机失活层,第四一维卷积神经网络模块分别包括依次堆叠的两个一维卷积层、一个全局最大池化层和一个随机失活层;依次通过一维卷积神经网络中的第一全连接层和第二全连接层对多个时域特征进行加权求和;以及通过一维卷积神经网络中的归一化指数函数来根据多个时域特征的加权和输出心音识别结果。
8.在本公开的一些实施例中,输入数据的尺寸为1
×
2500。
9.在本公开的一些实施例中,第一一维卷积神经网络模块中的两个一维卷积层分别具有16个1
×
9尺寸的卷积核。第一一维卷积神经网络模块中的最大池化层的尺寸为16。第一一维卷积神经网络模块的输出特征的尺寸为16
×1×
155。
10.在本公开的一些实施例中,第二一维卷积神经网络模块中的两个一维卷积层分别具有32个1
×
3尺寸的卷积核。第二一维卷积神经网络模块中的最大池化层的尺寸为4。第二一维卷积神经网络模块的输出特征的尺寸为32
×1×
37。
11.在本公开的一些实施例中,第三一维卷积神经网络模块中的两个一维卷积层分别具有32个1
×
3尺寸的卷积核。第三一维卷积神经网络模块中的最大池化层的尺寸为4。第三一维卷积神经网络模块的输出特征的尺寸为32
×1×
8。
12.在本公开的一些实施例中,第四一维卷积神经网络模块中的两个一维卷积层分别具有256个1
×
3尺寸的卷积核。第四一维卷积神经网络模块中的全局最大池化层用于把前一一维卷积层的输出特征降到一维。第四一维卷积神经网络模块的输出特征的尺寸为256
×1×
1。
13.在本公开的一些实施例中,第一全连接层的神经元个数为1028。
14.在本公开的一些实施例中,第二全连接层的神经元个数为64。
15.在本公开的一些实施例中,获得待识别的心音音频信号包括:将原始心音音频信号经过二阶巴特沃斯中值滤波器以得到经滤波的心音音频信号,其中,二阶巴特沃斯中值滤波器的滤波频率范围为25赫兹至400赫兹;以1000赫兹的降采样频率对经滤波的心音音频信号进行降采样以得到降采样后的心音音频信号;以及对降采样后的心音音频信号进行归一化处理以得到待识别的心音音频信号。
16.在本公开的一些实施例中,每个心音音频片段包括至少一个完整的心跳周期。
17.根据本公开的第二方面,提供了一种异常心音识别模型。该异常心音识别模型包括:获得模块、分割模块、经过预训练的一维卷积神经网络、以及输出模块。获得模块被配置为:获得待识别的心音音频信号。分割模块被配置为:将心音音频信号在时域上分割成n个心音音频片段。其中,每个心音音频片段的时长相等。一维卷积神经网络被训练成能够识别单个心音音频片段的时域特征是否存在异常并输出心音识别结果。其中,心音识别结果包括:正常心音、以及异常心音。输出模块被配置为:确定n个心音识别结果中异常心音的比例,以及响应于该比例高于阈值,确定心音音频信号为异常心音音频信号。
18.在本公开的一些实施例中,一维卷积神经网络包括:依次堆叠的第一一维卷积神经网络模块、第二一维卷积神经网络模块、第三一维卷积神经网络模块、第四一维卷积神经网络模块、第一全连接层、第二全连接层、以及归一化指数函数。第一一维卷积神经网络模块、第二一维卷积神经网络模块、第三一维卷积神经网络模块和第四一维卷积神经网络模块被配置为提取心音音频片段的多个时域特征。其中,第一一维卷积神经网络模块、第二一维卷积神经网络模块和第三一维卷积神经网络模块分别包括依次堆叠的两个一维卷积层、一个最大池化层和一个随机失活层。第四一维卷积神经网络模块分别包括依次堆叠的两个一维卷积层、一个全局最大池化层和一个随机失活层。第一全连接层和第二全连接层被配置为对多个时域特征进行加权求和。归一化指数函数被配置为:根据多个时域特征的加权和输出心音识别结果。
19.在本公开的一些实施例中,心音音频片段的尺寸为1
×
2500。
20.在本公开的一些实施例中,第一一维卷积神经网络模块中的两个一维卷积层分别具有16个1
×
9尺寸的卷积核。第一一维卷积神经网络模块中的最大池化层的尺寸为16。第一一维卷积神经网络模块的输出特征的尺寸为16
×1×
155。
21.在本公开的一些实施例中,第二一维卷积神经网络模块中的两个一维卷积层分别具有32个1
×
3尺寸的卷积核。第二一维卷积神经网络模块中的最大池化层的尺寸为4。第二一维卷积神经网络模块的输出特征的尺寸为32
×1×
37。
22.在本公开的一些实施例中,第三一维卷积神经网络模块中的两个一维卷积层分别具有32个1
×
3尺寸的卷积核。第三一维卷积神经网络模块中的最大池化层的尺寸为4。第三一维卷积神经网络模块的输出特征的尺寸为32
×1×
8。
23.在本公开的一些实施例中,第四一维卷积神经网络模块中的两个一维卷积层分别具有256个1
×
3尺寸的卷积核。第四一维卷积神经网络模块中的全局最大池化层用于把前一一维卷积层的输出特征降到一维。第四一维卷积神经网络模块的输出特征的尺寸为256
×1×
1。
24.在本公开的一些实施例中,第一全连接层的神经元个数为1028。
25.在本公开的一些实施例中,第二全连接层的神经元个数为64。
26.根据本公开的第三方面,提供了一种训练方法,用于训练根据本公开的第一方面所述的异常心音识别模型。该训练方法包括:获得第一组心音音频信号和第二组心音音频信号,第一组心音音频信号和第二组心音音频信号分别包括多个标签为正常心音的心音音频信号和多个标签为异常心音的心音音频信号;将第一组心音音频信号和第二组心音音频信号中的每个心音音频信号在时域上分别分割成n个心音音频片段,其中,每个心音音频片段的时长相等;在每一轮训练中,用第一组心音音频信号来训练异常心音识别模型中的一维卷积神经网络以最小化异常心音识别模型的损失函数;在每一轮训练之后,用第二组心音音频信号来验证异常心音识别模型的识别准确度;以及重复训练异常心音识别模型,直到完成预定的训练轮数或者识别准确度收敛。
27.在本公开的一些实施例中,异常心音识别模型的损失函数被表示为:
[0028][0029]
其中,loss表示损失函数,n表示第一组心音音频信号中的心音音频信号的数量,x表示心音音频信号,y表示心音音频信号的标签,a表示异常心音识别模型输出的心音识别结果。
[0030]
在本公开的一些实施例中,每个心音音频片段包括至少一个完整的心跳周期。
[0031]
根据本公开的第四方面,提供了一种电子设备。该电子设备包括至少一个处理器;以及存储有计算机程序的至少一个存储器。当计算机程序由至少一个处理器执行时,使得电子设备执行根据本公开的第一方面所述的异常心音识别方法的步骤。
[0032]
根据本公开的第五方面,提供了一种存储有计算机程序的计算机可读存储介质,其中,计算机程序在由处理器执行时实现根据本公开的第一方面所述的异常心音识别方法的步骤。
附图说明
[0033]
为了更清楚地说明本公开的实施例的技术方案,下面将对实施例的附图进行简要说明,应当知道,以下描述的附图仅仅涉及本公开的一些实施例,而非对本公开的限制,其
中:
[0034]
图1是根据本公开的实施例的异常心音识别方法的示例性流程图;
[0035]
图2是根据本公开的实施例的一维卷积神经网络的示意性框图;
[0036]
图3是根据本公开的实施例的执行异常心音识别方法的电子设备的示意性框图;
[0037]
图4是根据本公开的实施例的异常心音识别模型的示意性框图;以及
[0038]
图5是根据本公开的实施例的用于训练异常心音识别模型的训练方法的示例性流程图。
[0039]
在附图中,最后两位数字相同的标记对应于相同的元素。需要注意的是,附图中的元素是示意性的,没有按比例绘制。
具体实施方式
[0040]
为了使本公开的实施例的目的、技术方案和优点更加清楚,下面将结合附图,对本公开的实施例的技术方案进行清楚、完整的描述。显然,所描述的实施例是本公开的一部分实施例,而不是全部的实施例。基于所描述的本公开的实施例,本领域技术人员在无需创造性劳动的前提下所获得的所有其它实施例,也都属于本公开保护的范围。
[0041]
除非另外定义,否则在此使用的所有术语(包括技术和科学术语)具有与本公开主题所属领域的技术人员所通常理解的相同含义。进一步将理解的是,诸如在通常使用的词典中定义的那些的术语应解释为具有与说明书上下文和相关技术中它们的含义一致的含义,并且将不以理想化或过于正式的形式来解释,除非在此另外明确定义。如在此所使用的,将两个或更多部分“连接”或“耦接”到一起的陈述应指这些部分直接结合到一起或通过一个或多个中间部件结合。另外,诸如“第一”和“第二”的术语仅用于将一个部件(或部件的一部分)与另一个部件(或部件的另一部分)区分开。
[0042]
现阶段使用卷积神经网络进行心音筛查的研究中的大部分研究都是针对成年人心脏病进行的,而缺乏使用卷积神经网络专门针对先天性心脏病进行的研究。而且,大部分借助机器学习进行的心音筛查研究都是将心音音频信号转换为频谱或者特征图然后使用高维的神经网络或卷积神经网络进行图像层面的识别以分辨心脏病。
[0043]
本公开的发明人发现使用高维的神经网络或卷积神经网络进行图像层面的识别对分辨先天性心脏病的准确率不够高。对先天性心脏病的筛查通常是针对0-12岁的儿童及幼儿的心音信号进行的。在现实场景中,对儿童及幼儿的心音信号难以实现规范化采集和辨别,所采集的心音信号中往往存在噪声,因此分辨先天性心脏病的准确率受到影响。
[0044]
本公开的发明人发现使用一维神经网络模型可以直接在时域上对心音信号中噪声进行学习并屏蔽噪声。虽然理论上一维和高维的神经网络模型都可以习得噪声,但一维神经网络模型因为有更少的预处理(没有转为二维频谱)因此更利于模型学习。
[0045]
因此,本公开的实施例提出了一种异常心音识别方法,其利用一维卷积神经网络模型来学习心音音频信号的时域特征,能够为先天性心脏病的筛查提供更准确的参考信息。图1示出根据本公开的实施例的异常心音识别方法的示例性流程图。
[0046]
在图1的框s102处,获得待识别的心音音频信号。在本公开的一些实施例中,待识别的心音音频信号是经过预处理的心音音频信号。在预处理的过程中,将原始心音音频信号经过二阶巴特沃斯中值滤波器以得到经滤波的心音音频信号。其中,二阶巴特沃斯中值
滤波器的滤波频率范围为25赫兹至400赫兹。对心音音频信号进行数字滤波旨在滤除高频噪声以及直流噪声,同时尽可能保留对心音辨别有用的心音信号。原始心音音频信号的采样频率通常为2000赫兹。为降低后续操作的运算量和运算时间(一维卷积神经网络模型的运算量和运算时间),可以以1000赫兹的降采样频率对经滤波的心音音频信号进行降采样以得到降采样后的心音音频信号。也就是说,降采样后的心音音频信号的采样频率为1000赫兹。根据奈奎斯特采样定律,为了不失真地恢复模拟信号,采样频率应该大于或者等于模拟信号频谱中最高频率的两倍。也就是说,降采样后的心音音频信号的采样频率需要大于或者等于经滤波的心音音频信号的频率的两倍,即400
×
2=800赫兹。因此,在这里,1000赫兹的采样频率符合奈奎斯特采样定律。然后,可对降采样后的心音音频信号进行归一化处理以得到待识别的心音音频信号。不同来源的原始心音音频信号的尺度差异较大,进行归一化处理使之落到[-1,1]的尺度范围内,可防止一维卷积神经网络模型学习到无用信息。
[0047]
在框s104处,将心音音频信号在时域上分割成n个心音音频片段,其中,每个心音音频片段的时长相等。在本公开的一些实施例中,每个心音音频片段包括至少一个完整的心跳周期。在一个示例中,每个心音音频片段的时长为2.5秒以能够包括至少一个完整的心跳周期。在本公开的一些实施例中,每个心音音频片段都包括:第一心音、第二心音、第三心音和第四心音。第一心音发生在心缩期,标志心室收缩期的开始。第二心音发生在心舒期,标志着心室舒张期的开始。第三心音发生在第二心音之后,持续较短(0.04~0.05秒),波长较长。第四心音是发生在第一心音前的长波音,持续约0.04秒。
[0048]
在框s106处,将n个心音音频片段分别单独输入经过预训练的一维卷积神经网络以得到n个心音识别结果。其中,一维卷积神经网络被训练成能够识别单个心音音频片段的时域特征是否存在异常。心音识别结果包括:正常心音、以及异常心音(也可被称为心杂音)。
[0049]
图2示出根据本公开的实施例的一维卷积神经网络200的示意性框图。一维卷积神经网络200包括:依次堆叠的第一一维卷积神经网络模块210、第二一维卷积神经网络模块220、第三一维卷积神经网络模块230、第四一维卷积神经网络模块240、第一全连接层251、第二全连接层252、以及归一化指数函数261。第一一维卷积神经网络模块210、第二一维卷积神经网络模块220、第三一维卷积神经网络模块230和第四一维卷积神经网络模块240被配置为提取心音音频片段的多个时域特征。第一一维卷积神经网络模块210、第二一维卷积神经网络模块220、第三一维卷积神经网络模块230和第四一维卷积神经网络模块240中的每个一维卷积神经网络模块都能够提取心音音频片段的多个时域特征。通过设置多级一维卷积神经网络模块能够更好地提取期望的时域特征。本公开的发明人发现针对先天性心脏病的心音音频片段,使用四级一维卷积神经网络模块能够提取足够的时域特征,又不至于使得一维卷积神经网络200的运算量过大。
[0050]
在图2的示例中,输入数据可被认为是心音音频片段在时域上的多个采样值。输入数据的尺寸例如为1
×
2500(即,2500个采样值)。第一一维卷积神经网络模块210包括依次堆叠的两个一维卷积层211和212(例如使用conv1d函数来实现)、一个最大池化层213(例如使用maxpool1d函数来实现)和一个随机失活层214(例如使用dropout函数来实现)。在本公开的一些实施例中,第一一维卷积神经网络模块210中的两个一维卷积层211和212分别具有16个1
×
9尺寸的卷积核。第一一维卷积神经网络模块210中的最大池化层213的尺寸为
16。随机失活层214是使用dropout(随机失活)方法的层。随机失活层利用dropout方法对最大池化层213的输出作随机采样更新,避免出现过拟合现象。第一一维卷积神经网络模块210的输出特征的尺寸为16
×1×
155。
[0051]
第二一维卷积神经网络模块220包括依次堆叠的两个一维卷积层221和222(例如使用conv1d函数来实现)、一个最大池化层223(例如使用maxpool1d函数来实现)和一个随机失活层224(例如使用dropout函数来实现)。在本公开的一些实施例中,第二一维卷积神经网络模块220中的两个一维卷积层221和222分别具有32个1
×
3尺寸的卷积核。第二一维卷积神经网络模块220中的最大池化层的尺寸为4。第二一维卷积神经网络模块220的输出特征的尺寸为32
×1×
37。
[0052]
第三一维卷积神经网络模块230包括依次堆叠的两个一维卷积层231和232(例如使用conv1d函数来实现)、一个最大池化层233(例如使用maxpool1d函数来实现)和一个随机失活层234(例如使用dropout函数来实现)。在本公开的一些实施例中,第三一维卷积神经网络模块230中的两个一维卷积层231和232分别具有32个1
×
3尺寸的卷积核。第三一维卷积神经网络模块230中的最大池化层的尺寸为4。第三一维卷积神经网络模块230的输出特征的尺寸为32
×1×
8。
[0053]
第四一维卷积神经网络模块240分别包括依次堆叠的两个一维卷积层241和242(例如使用conv1d函数来实现)、一个全局最大池化层243(例如使用globalmaxpool1d函数来实现)和一个随机失活层244。在本公开的一些实施例中,第四一维卷积神经网络模块240中的两个一维卷积层241和242分别具有256个1
×
3尺寸的卷积核。第四一维卷积神经网络模块240中的全局最大池化层243用于把前一一维卷积层242的输出特征降到一维。第四一维卷积神经网络模块240的输出特征的尺寸为256
×1×
1。
[0054]
第一全连接层251和第二全连接层252(二者例如使用fc函数来实现)被配置为对从第四一维卷积神经网络模块240输出的多个时域特征进行加权求和。在本公开的一些实施例中,第一全连接层的神经元个数为1028。第二全连接层的神经元个数为64。通常全连接层中的神经元个数被设置为2的整数次幂,但是本公开的发明人经过研究发现在第一全连接层中设置1028个神经元(相比于1024个神经元)能够使得识别准确率提升0.1%。
[0055]
归一化指数函数(softmax激活函数)261被配置为:根据多个时域特征的加权和输出心音识别结果。在本公开的一些实施例中,心音识别结果可以是01,表示正常心音。心音识别结果也可以是10,表示异常心音。
[0056]
回到图1,在本公开的一些实施例中,在将n个心音音频片段分别单独输入经过预训练的一维卷积神经网络以得到n个心音识别结果的过程中,分别以n个心音音频片段中的每个心音音频片段作为输入数据,并将输入数据作为图2所示的一维卷积神经网络200的输入。依次通过一维卷积神经网络200中的第一一维卷积神经网络模块210、第二一维卷积神经网络模块220、第三一维卷积神经网络模块230和第四一维卷积神经网络模块240来提取输入数据的多个时域特征。然后,依次通过一维卷积神经网络中的第一全连接层和第二全连接层对多个时域特征进行加权求和。最后,通过一维卷积神经网络中的归一化指数函数来根据多个时域特征的加权和输出心音识别结果。
[0057]
在框s108处,确定n个心音识别结果中异常心音的比例。假设在框s106处有y个心音音频片段被识别为异常心音,则异常心音的比例为y/n。
[0058]
在框s110处,确定该比例y/n是否高于阈值。在这里,阈值可以是经验值。在本公开的一些实施例中,该阈值例如等于25%。
[0059]
如果该比例y/n高于阈值(在框s110处为“是”),则在框s112处确定心音音频信号为异常心音音频信号。如果该比例y/n等于或者低于阈值(在框s110处为“否”),则在框s114处确定心音音频信号为正常心音音频信号。
[0060]
经过试验验证,根据本公开的实施例的异常心音识别方法能够实现auc=0.893且acc=0.815。auc(area under curve)被定义为roc曲线(受试者工作特征曲线)下与坐标轴围成的面积。auc越接近1.0,则说明检测方法真实性越高。acc表示准确度。
[0061]
本公开的发明人通过大量的研究和实验提出了特别适用于识别先天性心脏病的异常心音识别方法。与适用于识别成年人或中老年人心脏病的二维卷积神经网络不同,根据本公开的实施例的异常心音识别方法利用一维卷积神经网络来从心音音频的时域信号中提取时域特征,能够更好地学习并屏蔽心音信号中的噪声,从而提高筛查准确率。此外,根据本公开的实施例的一维卷积神经网络以简单的结构来实现运算量和准确率之间的平衡,能大量减少在先天性心脏病检出方面的时间、人力和财力成本,大幅度提高效率,同时对先天性心脏病检出提供有利参考,减少错检漏检。
[0062]
图3示出根据本公开的实施例的执行异常心音识别方法的电子设备的示意性框图。如图3所示,该电子设备300可包括处理器310和存储有计算机程序的存储器320。当计算机程序由处理器310执行时,使得电子设备300可执行如图1所示的方法100的步骤。在一个示例中,电子设备300可以是计算机设备或云计算节点。电子设备300可获得待识别的心音音频信号。电子设备300可将心音音频信号在时域上分割成n个心音音频片段。其中,每个心音音频片段的时长相等。电子设备300可将n个心音音频片段分别单独输入经过预训练的一维卷积神经网络以得到n个心音识别结果。其中,一维卷积神经网络被训练成能够识别单个心音音频片段的时域特征是否存在异常。心音识别结果包括:正常心音、以及异常心音。电子设备300可确定n个心音识别结果中异常心音的比例。响应于该比例高于阈值,电子设备300可确定心音音频信号为异常心音音频信号。
[0063]
在本公开的一些实施例中,电子设备300可分别以n个心音音频片段中的每个心音音频片段作为输入数据。电子设备300可依次通过一维卷积神经网络中的第一一维卷积神经网络模块、第二一维卷积神经网络模块、第三一维卷积神经网络模块和第四一维卷积神经网络模块来提取输入数据的多个时域特征。其中,第一一维卷积神经网络模块、第二一维卷积神经网络模块和第三一维卷积神经网络模块分别包括依次堆叠的两个一维卷积层、一个最大池化层和一个随机失活层。第四一维卷积神经网络模块分别包括依次堆叠的两个一维卷积层、一个全局最大池化层和一个随机失活层。电子设备300可依次通过一维卷积神经网络中的第一全连接层和第二全连接层对多个时域特征进行加权求和。电子设备300可通过一维卷积神经网络中的归一化指数函数来根据多个时域特征的加权和输出心音识别结果。
[0064]
在本公开的一些实施例中,电子设备300可将原始心音音频信号经过二阶巴特沃斯中值滤波器以得到经滤波的心音音频信号。其中,二阶巴特沃斯中值滤波器的滤波频率范围为25赫兹至400赫兹。电子设备300可以1000赫兹的降采样频率对经滤波的心音音频信号进行降采样以得到降采样后的心音音频信号。电子设备300可对降采样后的心音音频信
号进行归一化处理以得到待识别的心音音频信号。
[0065]
在本公开的实施例中,处理器310可以是例如中央处理单元(cpu)、微处理器、数字信号处理器(dsp)、基于多核的处理器架构的处理器等。存储器320可以是使用数据存储技术实现的任何类型的存储器,包括但不限于随机存取存储器、只读存储器、基于半导体的存储器、闪存、磁盘存储器等。
[0066]
此外,在本公开的实施例中,电子设备300也可包括输入设备330,例如录音设备、键盘、鼠标等,用于输入心音音频信号。另外,电子设备300还可包括输出设备340,例如显示器等,用于输出识别结果。
[0067]
图4示出根据本公开的实施例的异常心音识别模型400的示意性框图。该异常心音识别模型400包括:获得模块410、分割模块420、经过预训练的一维卷积神经网络430、以及输出模块440。获得模块410被配置为:获得待识别的心音音频信号。分割模块420被配置为:将心音音频信号在时域上分割成n个心音音频片段。其中,每个心音音频片段的时长相等。一维卷积神经网络430被训练成能够识别单个心音音频片段的时域特征是否存在异常并输出心音识别结果。其中,心音识别结果包括:正常心音、以及异常心音。输出模块440被配置为:确定n个心音识别结果中异常心音的比例,以及响应于该比例高于阈值,确定心音音频信号为异常心音音频信号。
[0068]
图5示出根据本公开的实施例的用于训练异常心音识别模型的训练方法500的示例性流程图。
[0069]
在图5的框s501处,获得第一组心音音频信号和第二组心音音频信号。第一组心音音频信号和第二组心音音频信号分别包括多个标签为正常心音的心音音频信号和多个标签为异常心音的心音音频信号。在本公开的一些实施例中,在第一组心音音频信号和第二组心音音频信号中的任一者中,标签为正常心音的心音音频信号的数量等于标签为异常心音的心音音频信号的数量。第一组心音音频信号和第二组心音音频信号中的每个心音音频信号都是经过预处理的心音音频信号。预处理的过程与在图1的框s102处描述的过程相同,在此不再赘述。
[0070]
在框s502处,将第一组心音音频信号和第二组心音音频信号中的每个心音音频信号在时域上分别分割成n个心音音频片段。其中,每个心音音频片段的时长相等。在本公开的一些实施例中,每个心音音频片段包括至少一个完整的心跳周期。在一个示例中,每个心音音频片段的时长为2.5秒。在本公开的一些实施例中,每个心音音频片段都包括:第一心音、第二心音、第三心音和第四心音。
[0071]
在框s504处,在每一轮训练中,用第一组心音音频信号来训练异常心音识别模型中的一维卷积神经网络以最小化异常心音识别模型的损失函数。在本公开的一些实施例中,异常心音识别模型的损失函数被表示为:
[0072][0073]
其中,loss表示损失函数,n表示第一组心音音频信号中的心音音频信号的数量,x表示心音音频信号,y表示心音音频信号的标签,a表示异常心音识别模型输出的心音识别结果。此损失函数对于一维卷积神经网络的最后一层权重的梯度与激活函数的导数无关,
只与心音识别结果(模型输出值)和心音音频信号的标签(真实值)的差值成正比,因此对异常心音识别模型的训练能够较快收敛。
[0074]
在框s506处,在每一轮训练之后,用第二组心音音频信号来验证异常心音识别模型的识别准确度。例如,可将第二组心音音频信号中的每个心音音频信号输入异常心音识别模型以得到相应数量的心音识别结果。将每个心音识别结果与相应心音音频信号的标签比较,如果二者相同,则认为识别准确,否则认为识别不准确。将识别准确的心音识别结果的数量除以第二组心音音频信号中的心音音频信号的数量可得到识别准确度。
[0075]
在框s508处,确定识别准确度是否收敛。如果在经过连续的多轮(例如,10轮)训练过程之后识别准确度都没有提升,则说明识别准确度收敛。
[0076]
如果识别准确度未收敛(在框s508处为“否”),则在框s510处确定是否完成预定的训练轮数。预定的训练轮数可根据经验值设定,或者根据预期的训练时间来估计,或者基于计算设备的资源占用来考虑。
[0077]
如果未完成预定的训练轮数(在框s510处为“否”)则过程进行到框s504,重复训练异常心音识别模型。如果识别准确度收敛(在框s508处为“是”),则过程进行到框s512,结束训练。如果完成预定的训练轮数(在框s510处为“是”),则过程进行到框s512,结束训练。
[0078]
在本公开的一些替代实施例中,可不执行框s508处的操作,即,只要完成预定的训练轮数,则结束训练。在本公开的另一些替代实施例中,可不执行框s510处的操作,即,不考虑训练轮数,只有在识别准确度收敛的情况下才结束训练。
[0079]
在本公开的其它实施例中,还提供了一种存储有计算机程序的计算机可读存储介质,其中,计算机程序在由处理器执行时能够实现如图1所示的方法的步骤。
[0080]
综上所述,根据本公开的实施例的异常心音识别方法利用一维卷积神经网络来从心音音频的时域信号中提取时域特征,能够更好地学习并屏蔽幼儿和儿童的心音信号中的噪声,从而提高先天性心脏病的筛查准确率。此外,根据本公开的实施例的一维卷积神经网络以简单的结构来实现运算量和准确率之间的平衡,能大量减少在先天性心脏病检出方面的时间、人力和财力成本,大幅度提高效率,同时对先天性心脏病检出提供有利参考,减少错检漏检。根据本公开的实施例的执行异常心音识别方法的电子设备和异常心音识别模型也同样具有上述技术效果。
[0081]
附图中的流程图和框图显示了根据本公开的多个实施例的装置和方法的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或指令的一部分,所述模块、程序段或指令的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
[0082]
除非上下文中另外明确地指出,否则在本文和所附权利要求中所使用的词语的单数形式包括复数,反之亦然。因而,当提及单数时,通常包括相应术语的复数。相似地,措辞“包含”和“包括”将解释为包含在内而不是独占性地。同样地,术语“包括”和“或”应当解释为包括在内的,除非本文中明确禁止这样的解释。在本文中使用术语“示例”之处,特别是当
其位于一组术语之后时,所述“示例”仅仅是示例性的和阐述性的,且不应当被认为是独占性的或广泛性的。
[0083]
适应性的进一步的方面和范围从本文中提供的描述变得明显。应当理解,本技术的各个方面可以单独或者与一个或多个其它方面组合实施。还应当理解,本文中的描述和特定实施例旨在仅说明的目的并不旨在限制本技术的范围。
[0084]
以上对本公开的若干实施例进行了详细描述,但显然,本领域技术人员可以在不脱离本公开的精神和范围的情况下对本公开的实施例进行各种修改和变型。本公开的保护范围由所附的权利要求限定。
当前第1页1  
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
网站地图