计算机设备、心音识别装置、方法、模型训练装置及存储介质与流程

文档序号:18457393发布日期:2019-08-17 01:43阅读:183来源:国知局
计算机设备、心音识别装置、方法、模型训练装置及存储介质与流程

本申请涉及健康检测技术领域,尤其涉及一种计算机设备、心音识别装置、方法、模型训练装置及存储介质。



背景技术:

心音是声音信号的一种,其蕴含着有关人体健康状况的重要信息,通过提取这种信息并进行有效的识别能够实现客观的数字化心音听诊,从而能为患者提供可靠的诊断结果;因而心音图在心功能测定及某些心血管疾病的诊断具有独特的意义。

现有的心音识别或分类方法大致分为两类,基于传统机器学习的分类方法和基于神经网络学习的分类方法;其中,前者是基于手工提取的特征值学习,不能真实而全面地反映心音数据本质特征,而且对于整个心音周期提取特征值不能学习到精确有针对性的局部信息;而基于神经网络学习的分类方法,不仅面临学习深层网络的困难,而且需要大量的训练数据才能做到比浅层架构的性能有所改进,识别的准确度较低。



技术实现要素:

本申请实施例提供一种计算机设备、心音识别装置、方法、模型训练装置及存储介质,综合了心音周期各阶段的局部特征以及心音信号的全局特征,识别的准确度更高。

第一方面,本申请提供了一种计算机设备,所述计算机设备包括存储器和处理器;

所述存储器用于存储计算机程序;

所述处理器,用于执行所述计算机程序并在执行所述计算机程序时实现:

对获取的心音信号进行预处理;

从预处理后的心音信号获取第一心音数据、收缩期数据、第二心音数据和舒张期数据;

根据预设处理规则对所述第一心音数据、收缩期数据、第二心音数据和舒张期数据进行处理以获取局部特征;

根据训练好的神经网络模型获取所述预处理后的心音信号的全局特征;

基于训练好的心音识别模型,根据所述局部特征以及所述全局特征对所述心音信号的类型进行识别。

第二方面,本申请提供了一种计算机设备,其特征在于,所述计算机设备包括存储器和处理器;所述存储器用于存储计算机程序;

所述处理器,用于执行所述计算机程序并在执行所述计算机程序时实现:

获取训练样本集,所述训练样本集包括若干作为训练样本的心音信号以及各所述心音信号的标注数据;

从所述心音信号获取第一心音数据、收缩期数据、第二心音数据和舒张期数据;

根据预设处理规则对所述第一心音数据、收缩期数据、第二心音数据和舒张期数据进行处理以获取局部特征;

根据训练好的神经网络模型获取所述心音信号的全局特征;

基于所述心音识别模型,根据所述局部特征以及所述全局特征对所述心音信号的类型进行识别以获取所述心音信号的预测数据;

根据所述心音信号的预测数据和标注数据调整所述心音识别模型的参数。

第三方面,本申请提供了一种心音识别装置,所述装置包括:

预处理模块,用于对获取的心音信号进行预处理;

第一获取模块,用于从预处理后的心音信号获取第一心音数据、收缩期数据、第二心音数据和舒张期数据;

第二获取模块,用于根据预设处理规则对所述第一心音数据、收缩期数据、第二心音数据和舒张期数据进行处理以获取局部特征;

第三获取模块,用于根据训练好的神经网络模型获取所述预处理后的心音信号的全局特征;

识别模块,用于基于训练好的心音识别模型,根据所述局部特征以及所述全局特征对所述心音信号的类型进行识别。

第四方面,本申请提供了一种心音识别模型训练装置,包括:

第四获取模块,用于获取训练样本集,所述训练样本集包括若干作为训练样本的心音信号以及各所述心音信号的标注数据;

第五获取模块,用于从所述心音信号获取第一心音数据、收缩期数据、第二心音数据和舒张期数据;

第六获取模块,用于根据预设处理规则对所述第一心音数据、收缩期数据、第二心音数据和舒张期数据进行处理以获取局部特征;

第七获取模块,用于根据训练好的神经网络模型获取所述心音信号的全局特征;

识别模块,用于基于所述心音识别模型,根据所述局部特征以及所述全局特征对所述心音信号的类型进行识别以获取所述心音信号的预测数据;

调整模块,用于根据所述心音信号的预测数据和标注数据调整所述心音识别模型的参数。

第五方面,本申请提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,若所述计算机程序被处理器执行,实现:

对获取的心音信号进行预处理;

从预处理后的心音信号获取第一心音数据、收缩期数据、第二心音数据和舒张期数据;

根据预设处理规则对所述第一心音数据、收缩期数据、第二心音数据和舒张期数据进行处理以获取局部特征;

根据训练好的神经网络模型获取所述预处理后的心音信号的全局特征;

基于训练好的心音识别模型,根据所述局部特征以及所述全局特征对所述心音信号的类型进行识别。

第六方面,本申请提供了一种心音识别方法,包括:

对获取的心音信号进行预处理;

从预处理后的心音信号获取第一心音数据、收缩期数据、第二心音数据和舒张期数据;

根据预设处理规则对所述第一心音数据、收缩期数据、第二心音数据和舒张期数据进行处理以获取局部特征;

根据训练好的神经网络模型获取所述预处理后的心音信号的全局特征;

基于训练好的心音识别模型,根据所述局部特征以及所述全局特征对所述心音信号的类型进行识别。

本申请公开了一种计算机设备、心音识别装置、方法、模型训练装置及存储介质,通过根据预设处理规则对所述第一心音数据、收缩期数据、第二心音数据和舒张期数据进行处理以获取局部特征,以及根据训练好的神经网络模型获取所述预处理后的心音信号的全局特征实现不仅根据第一心音数据、收缩期数据、第二心音数据和舒张期数据的局部特征,还根据心音信号的全局特征对心音信号进行识别;因此心音识别模型的识别过程综合了心音周期各阶段的细节特点以及心音信号的全局特征,识别的准确度更高。

附图说明

为了更清楚地说明本申请实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1为本申请一实施例提供的一种计算机设备的结构示意图;

图2为计算机设备实现心音识别方法时处理步骤的流程示意图;

图3为心音信号的频谱图示意图;

图4为带通滤波前的心音信号的波形示意图;

图5为带通滤波后的心音信号的波形示意图;

图6为计算机设备实现对心音信号进行分阶段时处理步骤的流程示意图;

图7为计算机设备实现获取局部特征时处理步骤的流程示意图;

图8为计算机设备实现神经网络模型的训练时处理步骤的流程示意图;

图9为一种神经网络模型的结构示意图;

图10为计算机设备实现获取全局特征时处理步骤的流程示意图;

图11为计算机设备实现心音识别模型训练方法时处理步骤的流程示意图;

图12为本申请一实施例的心音识别装置的结构示意图;

图13为本申请一实施例的心音识别模型训练装置的结构示意图。

具体实施方式

下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。

附图中所示的流程图仅是示例说明,不是必须包括所有的内容和操作/步骤,也不是必须按所描述的顺序执行。例如,有的操作/步骤还可以分解、组合或部分合并,因此实际执行的顺序有可能根据实际情况改变。另外,虽然在装置示意图中进行了功能模块的划分,但是在某些情况下,可以以不同于装置示意图中的模块划分。

下面结合附图,对本申请的一些实施方式作详细说明。在不冲突的情况下,下述的实施例及实施例中的特征可以相互组合。

请参阅图1,图1是本申请的实施例提供的一种计算机设备的结构示意图。该计算机设备可以是服务器或终端。

参阅图1,该计算机设备包括通过系统总线连接的处理器、存储器和网络接口,其中,存储器可以包括非易失性存储介质和内存储器。

处理器用于提供计算和控制能力,支撑整个计算机设备的运行。

内存储器为非易失性存储介质中的计算机程序的运行提供环境,该计算机程序被处理器执行时,可使得处理器执行任意一种心音识别方法。

该网络接口用于进行网络通信,如发送分配的任务等。本领域技术人员可以理解,图1中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。

应当理解的是,处理器可以是中央处理单元(centralprocessingunit,cpu),该处理器还可以是其他通用处理器、数字信号处理器(digitalsignalprocessor,dsp)、专用集成电路(applicationspecificintegratedcircuit,asic)、现场可编程门阵列(field-programmablegatearray,fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。其中,通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。

非易失性存储介质可存储操作系统和计算机程序,该计算机程序包括程序指令;所述处理器用于执行所述计算机程序。

在一些实施例中,该程序指令被处理器执行时,可使得处理器实现一种心音识别方法。

在一个实施例中,请参阅图2,图2是本申请实施例中所述处理器用于运行存储器中计算机程序以实现心音识别方法时处理步骤的流程示意图。处理器具体实现以下步骤:

步骤s110、对获取的心音信号进行预处理。

在一些实施例中,通过专业的数字听诊器采集心音信号,在另一些实施例中,由便携式的移动终端连接心音传感器采集心音信号。

示例性的,获取到的心音信号为数字格式的心电信号数据,如心音图(phonocardiogram,pcg)。可以按预设时长截取心电信号,例如截取一段最大时长不大于60秒的心电信号作为识别对象。

如图3所示为一段心音信号的频谱图,心音信号的频率大约集中在400hz以下,而在一些实施例中,从心音图获得到的心音信号的采样频率为2000hz;根据奈奎斯特(nyquist)采样定理可知采样频率应该大于心音信号频率的两倍就可以保留足够的信号信息,;为了在满足采样定理的同时可以减少计算量,可以将采样频率为2000hz左右的原始的心音信号降采样处理到1000hz。

由于心音信号采集过程中会由于摩擦、环境噪声等会携带一些干扰信号,可以通过带通滤波以去除采集过程中引入的尖峰信号,得到预处理后的心音信号。如图4所示为带通滤波前的心音信号,图5所示为带通滤波后的心音信号,可以看出,心音信号起始处的尖峰噪声被有效滤除了,并且低频干扰和高频噪声也被有效滤除了。

步骤s120、从预处理后的心音信号获取第一心音数据、收缩期数据、第二心音数据和舒张期数据。

心音信号包括一个或多个心音周期,对应于一次或多次心跳。每次心音周期包括第一心音(s1)、收缩期(systole)、第二心音(s2)和舒张期(diastole);其中第一心音发生在心缩期的开始时刻,标志心室收缩的开始,第二心音发生在舒张期的开始时刻,标志心室舒张的开始。将心音信号的心音周期划分为四个阶段,能够更准确将心音信号进行识别,还可以针对性的对每个阶段中的异常心音进行识别。

在一些实施例中,如图6所示,所述处理器在执行步骤s120从预处理后的心音信号获取第一心音数据、收缩期数据、第二心音数据和舒张期数据时,用于实现步骤s121、步骤s122:

步骤s121、根据所述心音信号相应心电图的r波和t波将所述心音信号的至少一个心音周期分割为第一心音,收缩期,第二心音,舒张期四个阶段。

在本实施例中,应用springer提出的分割方法对经过预处理的心音信号进行分割,将心音周期分割为:第一心音、收缩期、第二心音和舒张期。具体的,可以对心音信号中的部分或全部的心音周期进行分割。

示例性的,采集并记录与心音信号同一时间段的心电图并提取心电图中的心电特征,心电特征包括r波和t波的信息,根据r波和t波的信息将所述心音信号的至少一个心音周期分割为第一心音,收缩期,第二心音,舒张期四个阶段。

步骤s122、获取所述心音信号在所述第一心音,收缩期,第二心音,舒张期四个阶段的数据。

具体的,将分割后心音信号在各阶段的数据,即第一心音数据、收缩期数据、第二心音数据和舒张期数据分别存储。

步骤s130、根据预设处理规则对所述第一心音数据、收缩期数据、第二心音数据和舒张期数据进行处理以获取局部特征。

在一些实施例中,如图7所示,所述处理器在执行步骤s130根据预设处理规则对所述第一心音数据、收缩期数据、第二心音数据和舒张期数据进行处理以获取局部特征时,用于实现步骤s131-步骤s133中的至少一个步骤:

步骤s131、根据预设的时域分析规则对所述第一心音数据、收缩期数据、第二心音数据和舒张期数据进行处理以获取时域特征。

在一些实施例中,步骤s131根据预设的时域分析规则对所述第一心音数据、收缩期数据、第二心音数据和舒张期数据进行处理以获取时域特征,具体包括:对所述第一心音数据、收缩期数据、第二心音数据和舒张期数据进行时域处理以获取可以表征心音节律特征的心音间隔数据作为时域特征。

示例性的,心音间隔数据包括r波间隔、第一心音间隔、第二心音间隔、收缩期间隔、舒张期间隔、收缩期和心跳间隔的比率、舒张期和心跳间隔的比率、收缩期和舒张期的比率中至少一项的均值和/或方差。

一份心音信号中可以包括一个或多个心音周期,或者可以利用一份心音信号中的一个或多个心音周期;因此音间隔数据中的各间隔、各比率可以取均值和/或方差;示例性的,一份心音信号包括60个心音周期,心音间隔数据中的各间隔、各比率取60个心音周期中相应间隔、比率的均值和/或方差。

例如,时域特征包括心音间隔数据中的共16个时域特征值。

在一些实施例中,步骤s131根据预设的时域分析规则对所述第一心音数据、收缩期数据、第二心音数据和舒张期数据进行处理以获取时域特征,具体包括:对所述第一心音数据、收缩期数据、第二心音数据和舒张期数据进行时域处理以获取可以表征心音幅度特征的心音幅度数据作为时域特征。

示例性的,心音幅度数据包括收缩期平均幅度值与第一心音平均幅度值的比值、舒张期平均幅度值与第二心音平均幅度值的比值、第一心音的幅度偏度、收缩期的幅度偏度(skewness)、第二心音的幅度偏度、舒张期的幅度偏度、第一心音的幅度峰态(kurtosis)、收缩期的幅度峰态、第二心音的幅度峰态、舒张期的幅度峰态中至少一项的均值和/或方差。

示例性的,一份心音信号包括60个心音周期,心音幅度数据中的各比值、幅度偏度、幅度峰态可以取这60个心音周期中相应比值、幅度偏度、幅度峰态的均值和/或方差。

例如,时域特征包括心音幅度数据中的共20个时域特征值。

从心音的幅度和节律两方面出发,可以在一定程度上分析正常人和心脏病患者心音的区别。

步骤s132、根据预设的频域分析规则对所述第一心音数据、收缩期数据、第二心音数据和舒张期数据进行处理以获取频域特征。

示例性的,通过对每个心音阶段的心音数据,即第一心音数据、收缩期数据、第二心音数据和舒张期数据做频域分析,获取频域特征。

在一些实施例中,步骤s132根据预设的频域分析规则对所述第一心音数据、收缩期数据、第二心音数据和舒张期数据进行处理以获取频域特征具体包括:对所述第一心音数据、收缩期数据、第二心音数据和舒张期数据进行频域分析以获取各自在多个不同频带上的频谱幅度的中值作为频域特征。

具体的,分别对第一心音数据、收缩期数据、第二心音数据和舒张期数据乘海明(hamming)窗,再经过快速傅里叶变换得到各阶段数据在频谱上的能量分布,求取频谱幅度的中值(即中位数)作为心音信号相应阶段的频域特征。

根据人耳听觉机理的研究,人耳对不同频率的声波有不同的听觉敏感度。低音容易掩蔽高音,而高音掩蔽低音较困难,所以低频处的声音掩蔽的临界带宽较高频要小;考虑到此特性,设置滤波器时从低频到高频这一段频带内按临界带宽的大小由密到疏安排一组带通滤波器,对输入信号进行滤波。示例性的,设置九个频带25-45、45-65、65-85、85-105、105-125、125-150、150-200、200-300、300-400,单位为hz,并相应的设置九个带通滤波器。将各阶段心音数据输入每个带通滤波器,各带通滤波器输出的信号能量作为信号的基本特征,各阶段数据在频谱上的能量分布,求取频谱幅度的中值(即中位数)作为心音信号相应阶段的频域特征。

当设置九个频带时,四个阶段共有4×9=36个频谱幅度中值,即频域特征值。

步骤s133、根据预设的倒谱处理规则对所述第一心音数据、收缩期数据、第二心音数据和舒张期数据进行处理以获取梅尔倒谱特征。

梅尔(mel)倒谱常应用在声音信号处理。人的听觉系统是一个特殊的非线性系统,它响应不同频率信号的灵敏度是不同的。梅尔频率倒谱系数(melfrequencycepstrumcoefficient,mfcc)考虑到了人类的听觉特征,先将线性频谱映射到基于听觉感知的mel非线性频谱中,然后转换到倒谱上。

声道的形状在语音短时功率谱的包络中显示出来,而梅尔频率倒谱特征,如梅尔频率倒谱系数就是一种可以准确描述这个包络的一种特征。梅尔倒谱对于声音信号处理比倒谱更接近人耳对声音的分析特性。

在一些实施例中,对所述第一心音数据、收缩期数据、第二心音数据和舒张期数据进行预加重处理、分帧、加海明窗处理以及梅尔倒谱分析以获取各自的多个梅尔频率倒谱系数。示例性的,提取心音信号中某一阶段的数据梅尔频率倒谱系数的过程包括:首先对该数据进行预加重处理、分帧和加海明窗处理,其中预加重的目的是为了对声音的高频部分进行加重,增加声音的高频分辨率;分帧处理是将该数据分为一些短段来来进行处理,如将每秒数据分为33-100帧,分帧例如可以采用可移动的有限长度的窗口进行加权的方法来实现;加海明窗处理可以使得数据全局更加连续,避免出现吉布斯效应,而且加海明窗之后,原本没有周期性的数据信号呈现出周期函数的部分特征。然后对加海明窗处理后的每一个短时分析窗进行傅里叶变换得到信号频谱,再将这一线性的信号频谱通过mel滤波器组映射到基于听觉感知的mel非线性频谱中得到mel频谱;之后在mel频谱上面进行梅尔倒谱分析,具体包括取对数,dct离散余弦变换,以获得梅尔频率倒谱系数。

在一些实施例中,所述第一心音数据、收缩期数据、第二心音数据和舒张期数据的梅尔倒谱特征包括所述第一心音数据、收缩期数据、第二心音数据和舒张期数据各自的多个梅尔频率倒谱系数。

示例性的,对第一心音数据、收缩期数据、第二心音数据和舒张期数据各自提取13个如梅尔频率倒谱系数,一个心音信号的梅尔倒谱特征共包括4×13=52个梅尔频率倒谱系数。

根据步骤s131-步骤s133获取的第一心音数据、收缩期数据、第二心音数据和舒张期数据的时域特征、频域特征和梅尔倒谱特征这些离散特征值,可以作为初步判断每个阶段是否存在异常心音,例如正常人的r波间隔与心脏病患者的r波间隔等,还可以作为训练样本集中为作为训练样本的心音信号标定标注数据的依据。

步骤s140、根据训练好的神经网络模型获取所述预处理后的心音信号的全局特征。

在一些可行的实施例中,如图8所示,所述处理器在执行神经网络模型的训练步骤时,具体实现以下步骤s101-步骤s103:

步骤s101、获取训练样本集,所述训练样本集包括若干作为训练样本的心音信号以及各所述心音信号的标注数据。

示例性的,采集部分没有心音异常情况的心音信号,以及一部分存在心音异常情况的心音信号作为训练样本;训练样本中的各心音信号标定有标注数据,标注数据可以包括心音类别如有无异常、第一心音异常、舒张期异常等;在另一实施例中标注数据还包括心音信号为各个心音类别的概率值。

步骤s102、根据所述神经网络模型对所述作为训练样本的心音信号进行识别以获取所述心音信号的预测数据。

示例性的,预测数据包括预测出的心音类型,还可以包括预测出的心音类型对应的概率。

步骤s103、根据所述心音信号的预测数据和标注数据调整神经网络模型的参数。

示例性的,可以采用adam对神经网络模型进行随机优化,选择交叉熵作为损失函数进行最小化。通过训练样本集中的多个样本对神经网络模型进行训练,当预测数据和标注数据的偏差小于预设的阈值时结束训练,得到训练好的神经网络模型。

在一些实施例中,所述处理器在执行步骤s140根据训练好的神经网络模型获取所述预处理后的心音信号的全局特征时,具体用于实现:

根据训练好的神经网络模型对所述预处理后的心音信号至少进行卷积操作、池化操作、全连接操作以输出隐性特征作为全局特征。

神经网络一般包括输入层、输出层和位于输入层和输出层之间的中间层,也叫隐藏层;隐藏层可以提供隐性特征;由于输入层输入的是心音信号,而不是前述的第一心音数据、收缩期数据、第二心音数据和舒张期数据,因此,这些隐性特征是可以体现心音信号特性的全局特征。

在一些实施例中,神经网络模型的结构如图9所示。如图10所示,所述处理器在执行根据训练好的神经网络模型对所述预处理后的心音信号至少进行卷积操作、池化操作、全连接操作以输出隐性特征作为全局特征时,具体用于实现步骤s1411-步骤s1415:

步骤s1411、从所述预处理后的心音信号提取多个不同频带的多个心音波形数据。

示例性的,inupt1,input2,input3,input4分别为心音信号每次心跳经过4个频带,如25-45、45-80、80-200、200-400(hz)滤波后的心音波形数据,每个频带的心音波形数据长度为2500。

步骤s1412、提取各所述心音波形数据的第一特征向量。

各心音波形数据通过输入层后输出的长度也为2500,维度是1,表示为(2500,1)。

步骤s1413、对各所述第一特征向量进行卷积操作和池化操作,以输出与各所述第一特征向量对应的第二特征向量。

不同频带的各第一特征向量各自经过第一次卷积conv、第一次最大池化max_pooling、第二次卷积conv、第二次最大池化max_pooling以及flatten操作处理得到相应的第二特征向量。其中flatten操作将高维的张量(tensor)处理成一个一维张量(向量)。

(2500,1)的第一特征向量经过第一次卷积conv的输出为(2496,8),即长度为2496,维度是8;(2496,8)的向量经第一次最大池化max_pooling的输出为(1248,8),(1248,8)的向量经第二次卷积conv的输出为(1244,4),(1244,4)的向量经第二次最大池化max_pooling的输出为(622,4);(622,4)的向量经flatten操作的输出为长度为2488的一维的第二特征向量。

步骤s1414、将所有的所述第二特征向量整合为一个第三特征向量。

如图9所示,flatten:concatenate层将对应于不同频带的四个第二特征向量整合为一个第三特征向量,该第三特征向量的长度为9952,维度是1。

步骤s1415、对所述第三特征向量进行全连接操作以输出隐性特征作为全局特征。

示例性的,长度为9952,维度是1的第三特征向量先经dropout层处理,输出的长度为9952;然后在经dense层处理为长度为20的向量;该长度为20的向量包括的特征值可以作为所述隐性特征。

在对神经网络模型进行训练时,通过另一dropout层和另一dense层对该长度为20的向量进行处理,得到所述心音信号的预测数据。

将心音信号应用多通道滤波分为不同频带,训练神经网络模型,在深度学习中可以通过将第一心音数据、收缩期数据、第二心音数据和舒张期数据的时域特征、频域特征和梅尔倒谱特征这些离散特征值作为一组约束条件通过反向传播集成到训练过程中,增强神经网络模型特征表达能力,提升预测准确度和全局特征,如隐性特征的表达能力。

步骤s150、基于训练好的心音识别模型,根据所述局部特征以及所述全局特征对所述心音信号的类型进行识别。

示例性的,局部特征包括步骤s131获取的心音间隔数据中的共16个时域特征值、心音幅度数据中的共20个时域特征值、步骤132获取的36个频域特征值、步骤s133获取的52个梅尔频率倒谱系数,共有124个局部特征;全局特征包括20个隐性特征,即全局特征;心音识别模型根据124个局部特征以及20个全局特征对所述心音信号的类型进行识别,以识别出该心音信号的类型为正常心音或异常心音。

在一些实施例中,所述心音识别模型包括catboost模型。

boosting算法在训练样本量有限、所需训练时间较短、缺乏调参知识等场景有其不可或缺的优势。catboost是一种梯度提升库,是gradientboosting(梯度提升)技术与categoricalfeatures(类别型特征)技术的结合,也是基于梯度提升决策树的机器学习框架。鲁棒性高,减少了对很多超参数调优的需求,并降低了过度拟合的机会。

本发明实施例还提供了一种心音识别方法,示例性的,如图2所示,心音识别方法包括:

步骤s110、对获取的心音信号进行预处理;

步骤s120、从预处理后的心音信号获取第一心音数据、收缩期数据、第二心音数据和舒张期数据;

步骤s130、根据预设处理规则对所述第一心音数据、收缩期数据、第二心音数据和舒张期数据进行处理以获取局部特征;

步骤s140、根据训练好的神经网络模型获取所述预处理后的心音信号的全局特征;

步骤s150、基于训练好的心音识别模型,根据所述局部特征以及所述全局特征对所述心音信号的类型进行识别。

上述实施例提供的计算机设备和心音识别方法,计算机设备的处理器执行存储器中计算机程序时实现心音识别方法,通过根据预设处理规则对所述第一心音数据、收缩期数据、第二心音数据和舒张期数据进行处理以获取局部特征,以及根据训练好的神经网络模型获取所述预处理后的心音信号的全局特征实现不仅根据第一心音数据、收缩期数据、第二心音数据和舒张期数据的局部特征,还根据心音信号的全局特征对心音信号进行识别;因此心音识别模型的识别过程综合了心音周期各阶段的细节特点以及心音信号的全局特征,识别的准确度更高。

而且由于将心音周期划分为多个阶段,从而还可以针对性识别某一类心脏疾病。

在另一些可行的实施例中,非易失性存储介质可存储操作系统和计算机程序,该计算机程序包括程序指令;所述处理器用于执行所述计算机程序。该程序指令被处理器执行时,可使得处理器实现一种心音识别模型训练方法。

在一个实施例中,请参阅图11,图11是本申请实施例中所述处理器用于运行存储器中计算机程序以实现心音识别模型训练方法时处理步骤的流程示意图。处理器具体实现以下步骤:

步骤s210、获取训练样本集,所述训练样本集包括若干作为训练样本的心音信号以及各所述心音信号的标注数据。

示例性的,采集部分没有心音异常情况的心音信号,以及一部分存在心音异常情况的心音信号作为训练样本;训练样本中的各心音信号标定有标注数据;标注数据可以包括心音类别如有无异常、第一心音异常、舒张期异常等;在另一实施例中标注数据还包括心音信号为各个心音类别的概率值。

在一些实施例中,训练样本集中的心音信号已经经过了预处理。

步骤s220、从所述心音信号获取第一心音数据、收缩期数据、第二心音数据和舒张期数据。

步骤s230、根据预设处理规则对所述第一心音数据、收缩期数据、第二心音数据和舒张期数据进行处理以获取局部特征。

在一些实施例中,所述处理器在执行步骤s230根据预设处理规则对所述第一心音数据、收缩期数据、第二心音数据和舒张期数据进行处理以获取局部特征时,用于实现:

根据预设的时域分析规则对所述第一心音数据、收缩期数据、第二心音数据和舒张期数据进行处理以获取时域特征;和/或

根据预设的频域分析规则对所述第一心音数据、收缩期数据、第二心音数据和舒张期数据进行处理以获取频域特征;和/或

根据预设的倒谱处理规则对所述第一心音数据、收缩期数据、第二心音数据和舒张期数据进行处理以获取梅尔倒谱特征。

在一些实施例中,所述处理器在执行所述根据预设的时域分析规则对所述第一心音数据、收缩期数据、第二心音数据和舒张期数据进行处理以获取时域特征时,用于实现:

对所述第一心音数据、收缩期数据、第二心音数据和舒张期数据进行时域处理以获取心音间隔数据和心音幅度数据,其中,所述心音间隔数据为用于表征心音节律特征的数据,所述心音幅度数据为用于表征心音幅度特征的心音幅度数据。

所述处理器在执行所述根据预设的频域分析规则对所述第一心音数据、收缩期数据、第二心音数据和舒张期数据进行处理以获取频域特征时,用于实现:

对所述第一心音数据、收缩期数据、第二心音数据和舒张期数据进行频域分析以获取各自在多个不同频带上的频谱幅度的中值作为频域特征;

所述处理器在执行所述根据预设的倒谱处理规则对所述第一心音数据、收缩期数据、第二心音数据和舒张期数据进行处理以获取梅尔倒谱特征时,用于实现:

对所述第一心音数据、收缩期数据、第二心音数据和舒张期数据进行预加重处理、分帧、加海明窗处理以及梅尔倒谱分析以获取各自的多个梅尔频率倒谱系数。

步骤s240、根据训练好的神经网络模型获取所述心音信号的全局特征。

在一些实施例中,所述处理器在执行步骤s240根据训练好的神经网络模型获取所述预处理后的心音信号的全局特征时,用于实现:

根据训练好的神经网络模型对心音信号至少进行卷积操作、池化操作、全连接操作以输出隐性特征作为全局特征。

在一些实施例中,所述处理器在执行根据训练好的神经网络模型对心音信号至少进行卷积操作、池化操作、全连接操作以输出隐性特征作为全局特征时,用于实现:

从所述心音信号提取多个不同频带的多个心音波形数据;提取各所述心音波形数据的第一特征向量;对各所述第一特征向量进行卷积操作和池化操作,以输出与各所述第一特征向量对应的第二特征向量;将所有的所述第二特征向量整合为一个第三特征向量;对所述第三特征向量进行全连接操作以输出隐性特征作为全局特征。

步骤s250、基于所述心音识别模型,根据所述局部特征以及所述全局特征对所述心音信号的类型进行识别以获取所述心音信号的预测数据。

具体的,基于训练中的心音识别模型,根据所述局部特征以及所述全局特征对所述心音信号的类型进行识别得到心音信号的预测数据。示例性的,预测数据包括预测出的心音类型,还可以包括预测出的心音类型对应的概率。

在一些实施例中,心音识别模型包括catboost模型。

在一些实施例中,基于同样的训练样本集,可以对神经网络模型进行训练,以用于根据训练好的神经网络模型获取所述预处理后的心音信号的全局特征。

步骤s260、根据所述心音信号的预测数据和标注数据调整所述心音识别模型的参数。

在一些实施例中,将训练样本集中80%的训练样本输入到心音识别模型进行训练,再用剩下20%的训练样本对心音识别模型输出的结果进行测试。若预测数据,即测试结果大于预设阈值,则标为1;若是测试结果小于预设阈值,则标为0;示例性的,预设阈值为0.5;再将测试结果与训练样本的标注数据比对;示例性的,标注数据为1或0,其中1表示有心音异常,0表示无心音异常;若是预测数据和标注数据相同,则测试结果正确;若是预测数据和标注数据不同,则测试结果错误。

记录上述测试的结果,例如测试结果正确的数量为m,测试结果错误的数量为n;通过acc校核对测试结果的进行训练效果评价,例如,计算m÷(m+n)的值,如果该值小于预设值,如2%,则可以停止训练;如果该值大于预设值,则继续训练,调整心音识别模型的参数;以便更好的判断心音信号是否存在异常,而且也能提高异常心音识别的正确性。

上述实施例提供的计算机设备,处理器执行存储器中计算机程序时实现心音识别模型训练方法;通过获取作为训练样本的心音信号的第一心音数据、收缩期数据、第二心音数据和舒张期数据的局部特征,以及获取所述心音信号的全局特征对心音信号进行预测识别,以根据预测的预测数据和训练样本的标注数据调整心音识别模型的参数;可以以较少的心音样本完成训练,还可以使训练得到的心音识别模型不仅根据第一心音数据、收缩期数据、第二心音数据和舒张期数据的局部特征,还根据心音信号的全局特征对心音信号进行识别,识别的准确度更高。

在一些实施例中,心音识别方法、心音识别模型训练方法可以应用于终端或服务器中,因此需要将训练好的模型保存在终端或服务器中。其中,该终端可以是手机、平板电脑、笔记本电脑、台式电脑、个人数字助理和穿戴式设备等电子设备;服务器可以为独立的服务器,也可以为服务器集群。

如果是应用于终端中,为了保证该终端的正常运行以及快速有效的识别分类,还需要对训练得到的心音识别模型、神经网络模型进行压缩处理,将压缩处理后的模型保存在终端。

其中,该压缩处理具体包括对心音识别模型、神经网络模型进行剪枝处理、量化处理和哈夫曼编码处理等,以减小心音识别模型、神经网络模型的大小,进而方便保存在容量较小的终端中。

如图12所示为本申请一实施例提供的一种心音识别装置的结构示意图,该心音识别装置可以配置于服务器或终端中,用于执行前述的心音识别方法。

如图12所示,该心音识别装置,包括:

预处理模块110,用于对获取的心音信号进行预处理。

第一获取模块120,用于从预处理后的心音信号获取第一心音数据、收缩期数据、第二心音数据和舒张期数据。

第二获取模块130,用于根据预设处理规则对所述第一心音数据、收缩期数据、第二心音数据和舒张期数据进行处理以获取局部特征。

具体的,第二获取模块130包括

第一获取单元,根据预设的时域分析规则对所述第一心音数据、收缩期数据、第二心音数据和舒张期数据进行处理以获取时域特征;和/或

第二获取单元,用于根据预设的频域分析规则对所述第一心音数据、收缩期数据、第二心音数据和舒张期数据进行处理以获取频域特征;和/或

第三获取单元,根据预设的倒谱处理规则对所述第一心音数据、收缩期数据、第二心音数据和舒张期数据进行处理以获取梅尔倒谱特征。

具体的,第一获取单元用于对所述第一心音数据、收缩期数据、第二心音数据和舒张期数据进行时域处理以获取心音间隔数据和心音幅度数据,其中,所述心音间隔数据为用于表征心音节律特征的数据,所述心音幅度数据为用于表征心音幅度特征的心音幅度数据。

示例性的,所述时域特征包括r波间隔、第一心音间隔、第二心音间隔、收缩期间隔、舒张期间隔、收缩期和心跳间隔的比率、舒张期和心跳间隔的比率、收缩期和舒张期的比率、收缩期平均幅度值与第一心音平均幅度值的比值、舒张期平均幅度值与第二心音平均幅度值的比值、第一心音的幅度偏度、收缩期的幅度偏度、第二心音的幅度偏度、舒张期的幅度偏度、第一心音的幅度峰态、收缩期的幅度峰态、第二心音的幅度峰态、舒张期的幅度峰态中至少一项的均值和/或方差。

具体的,第二获取单元用于对所述第一心音数据、收缩期数据、第二心音数据和舒张期数据进行频域分析以获取各自在多个不同频带上的频谱幅度的中值作为频域特征。

所述频域特征包括所述第一心音数据、收缩期数据、第二心音数据和舒张期数据各自在多个不同频带上的频谱幅度中值。

具体的,第三获取单元用于对所述第一心音数据、收缩期数据、第二心音数据和舒张期数据进行预加重处理、分帧、加海明窗处理以及梅尔倒谱分析以获取各自的多个梅尔频率倒谱系数。

所述第一心音数据、收缩期数据、第二心音数据和舒张期数据的梅尔倒谱特征包括所述第一心音数据、收缩期数据、第二心音数据和舒张期数据各自的多个梅尔频率倒谱系数。

第三获取模块140,用于根据训练好的神经网络模型获取所述预处理后的心音信号的全局特征。

具体的,第三获取模块140用于根据训练好的神经网络模型对所述预处理后的心音信号至少进行卷积操作、池化操作、全连接操作以输出隐性特征作为全局特征。

具体的,第三获取模块140包括:

第一提取单元,用于从所述预处理后的心音信号提取多个不同频带的多个心音波形数据;

第二提取单元,用于提取各所述心音波形数据的第一特征向量;

第一操作单元,用于对各所述第一特征向量进行卷积操作和池化操作,以输出与各所述第一特征向量对应的第二特征向量;

第一整合单元,用于将所有的所述第二特征向量整合为一个第三特征向量;

第一全连接单元,用于对所述第三特征向量进行全连接操作以输出隐性特征作为全局特征。

识别模块150,用于基于训练好的心音识别模型,根据所述局部特征以及所述全局特征对所述心音信号的类型进行识别。

具体的,所述心音识别模型包括catboost模型。

如图13所示为本申请一实施例提供的一种心音识别模型训练装置的结构示意图,该心音识别模型训练装置可以配置于服务器或终端中,用于执行前述的心音识别模型训练方法。

如图13所示,该心音识别模型训练装置,包括:

第四获取模块210,用于获取训练样本集,所述训练样本集包括若干作为训练样本的心音信号以及各所述心音信号的标注数据。

第五获取模块220,用于从所述心音信号获取第一心音数据、收缩期数据、第二心音数据和舒张期数据。

第六获取模块230,用于根据预设处理规则对所述第一心音数据、收缩期数据、第二心音数据和舒张期数据进行处理以获取局部特征。

具体的,第六获取模块230包括:

第四获取单元,用于根据预设的时域分析规则对所述第一心音数据、收缩期数据、第二心音数据和舒张期数据进行处理以获取时域特征;和/或

第五获取单元,用于根据预设的频域分析规则对所述第一心音数据、收缩期数据、第二心音数据和舒张期数据进行处理以获取频域特征;和/或

第六获取单元,用于根据预设的倒谱处理规则对所述第一心音数据、收缩期数据、第二心音数据和舒张期数据进行处理以获取梅尔倒谱特征。

第七获取模块240,用于根据训练好的神经网络模型获取所述心音信号的全局特征。

具体的,第七获取模块240包括:

第三提取单元,用于从所述心音信号提取多个不同频带的多个心音波形数据;

第四提取单元,用于提取各所述心音波形数据的第一特征向量;

第二操作单元,用于对各所述第一特征向量进行卷积操作和池化操作,以输出与各所述第一特征向量对应的第二特征向量;

第二整合单元,用于将所有的所述第二特征向量整合为一个第三特征向量;

第二全连接单元,用于对所述第三特征向量进行全连接操作以输出隐性特征作为全局特征。

识别模块250,用于基于所述心音识别模型,根据所述局部特征以及所述全局特征对所述心音信号的类型进行识别以获取所述心音信号的预测数据。

调整模块260,用于根据所述心音信号的预测数据和标注数据调整所述心音识别模型的参数。

需要说明的是,所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,上述描述的装置和各模块、单元的具体工作过程,可以参考前述计算机设备实施例中的对应过程,在此不再赘述。

计算机设备可于众多通用或专用的计算系统环境或配置中实现。例如:个人计算机、服务器计算机、手持设备或便携式设备、平板型设备、多处理器系统、基于微处理器的系统、可编程的消费电子设备、网络pc、小型计算机、大型计算机、包括以上任何系统或设备的分布式计算环境等等。

通过以上的实施方式的描述可知,本领域的技术人员可以清楚地了解到本申请可借助软件加必需的通用硬件平台的方式来实现。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如rom/ram、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例或者实施例的某些部分所述的方法,如:

一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序中包括程序指令,所述处理器执行所述程序指令,实现本申请实施例提供的任一项心音识别方法或者本申请实施例提供的任一项心音识别模型训练方法。

在一些实施例中,所述计算机可读存储介质存储有计算机程序,若所述计算机程序被处理器执行,实现:

对获取的心音信号进行预处理;

从预处理后的心音信号获取第一心音数据、收缩期数据、第二心音数据和舒张期数据;

根据预设处理规则对所述第一心音数据、收缩期数据、第二心音数据和舒张期数据进行处理以获取局部特征;

根据训练好的神经网络模型获取所述预处理后的心音信号的全局特征;

基于训练好的心音识别模型,根据所述局部特征以及所述全局特征对所述心音信号的类型进行识别。

其中,所述计算机可读存储介质可以是前述实施例所述的计算机设备的内部存储单元,例如所述计算机设备的硬盘或内存。所述计算机可读存储介质也可以是所述计算机设备的外部存储设备,例如所述计算机设备上配备的插接式硬盘,智能存储卡(smartmediacard,smc),安全数字(securedigital,sd)卡,闪存卡(flashcard)等。

以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以权利要求的保护范围为准。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1