首页> 中国专利> 用于心血管疾病患者脉象识别的神经网络结构

用于心血管疾病患者脉象识别的神经网络结构

摘要

本发明公开了一种用于心血管疾病患者脉象识别的神经网络结构,包括下述步骤:S1,脉象数据采集;S2,脉象数据预处理;S3,建立所述神经网络结构;S4,训练过程。本发明利用一维卷积神经网络(1DCNN)在处理时间序列信号时有着非常的优势这一特点,而脉象信号就是属于一种典型的时间序列信号;因此,通过采集一部分正常人的脉象以及心血管疾病患者的脉象,通过大数据分析,将两种脉象划分为训练集和测试集;为了保证神经网络结构的有效性,在训练集和测试集中的数据都是来自于不同的个体。经实验证明,本发明能够有效的识别出心血管疾病患者的脉象,为脉诊的客观化诊断提供了一种科学的方法。

著录项

说明书

技术领域

本发明涉及中医脉诊领域,尤其是涉及用于心血管疾病患者脉象识别的神经网络结构。

背景技术

在中医的临床诊断与治疗中,脉象诊断(脉诊)是一个重要的诊断方法。但是脉象诊断大多依靠人的主观经验,缺乏客观的理论依据和诊断方法,从而给脉诊的普及化带来了一定的困难。人体的脉象在一定程度上可以反映出人体的身体状况,心血管疾病患者的脉象在传统中医理论中被称为弦脉,与正常人的脉象有一定的区别。如何利用科技手段,建立一种用于心血管疾病患者脉象识别的神经网络结构,为心血管疾病患者脉诊的客观化诊断提供了一种科学方法,目前还未见诸有关报道。

发明内容

本发明目的在于提供一种用于心血管疾病患者脉象识别的神经网络结构,为心血管疾病患者脉诊的客观化诊断提供了一种科学方法。

为实现上述目的,本发明采取下述技术方案:

本发明所述用于心血管疾病患者脉象识别的神经网络结构,包括下述步骤:

S1,脉象数据采集:

采用脉象采集仪分别对正常人的脉象和心血管疾病患者的脉象进行采集;采集脉象过程中,调整脉象采集仪的测量压力获得不同压力值下的脉搏图,输出相应压力下的脉搏数据,格式均为.txt格式,每次采集脉象的时间为10s,采样频率为200Hz,共计2000个数据点,采集的脉搏数据用MATLAB软件进行读取显示;

然后选取最佳压力值下的脉搏图,一般压力值为80时候的脉搏为最佳;

S2,脉象数据预处理:

为了解决数据样本分布不均衡和数据样本过少的问题,在数据预处理阶段对S1中获得的一维脉象信号进行切片操作;在每次切片操作中,选取了3.2s的脉搏数据,共计640个脉象数据点;在切片过程中每次循环向右移动200个数据点,保证每次切片的数据都至少包含一个脉搏周期,并且每次切片中都加入一个新的脉搏周期,以提高系统的鲁棒性;该过程由所述MATLAB软件中的for循环函数实现;

S3,建立所述神经网络结构:

所述神经网络结构由一维卷积神经网络、残差卷积网络和全连接神经网络构成;所述一维卷积神经网络用于提取脉象信号的特征;所述残差网络用于防止在进行深层神经网络训练的反向传播中出现梯度消失或者梯度爆炸,同时加快神经网络的训练速度;所述全连接神经网络又被称为多层感知器,为一个分类器,将提取到的脉搏信号的高维特征送入全连接神经网络后,通过调整全连接神经网络中的不同神经元的权重和偏置值,使不同的特征对应的神经元保持权重值的更新,最终达到非线性映射和分类的效果;

S4,训练过程:

将处理后的脉象数据划分为训练集和测试集,通过所述训练集不断训练神经网络结构,不断调整参数;然后再通过测试集验证训练的神经网络结构是否能够有效的提取出信号的特征,当训练好的神经网络结构在测试集上达到预设的结果后,神经网络结构停止训练并且输出神经网络结构,保存神经网络参数。

所述一维卷积神经网络的卷积层有17层;所述神经网络结构由卷积层、激活函数层、批量归一化层、Dropout层和残差块构成。

本发明利用一维卷积神经网络(1DCNN)在处理时间序列信号时有着非常的优势这一特点,而脉象信号就是属于一种典型的时间序列信号;因此,通过采集一部分正常人的脉象以及心血管疾病患者的脉象,通过大数据分析,将两种脉象划分为训练集和测试集;为了保证神经网络结构的有效性,在训练集和测试集中的数据都是来自于不同的个体。经实验证明,本发明能够有效的识别出心血管疾病患者的脉象,为脉诊的客观化诊断提供了一种科学的方法。

附图说明

图1是本发明的脉象数据处理流程图。

图2是本发明所述数据切片过程示意图。

图3是本发明所述神经网络结构框图。

图4是本发明所述残差网络结构示意图。

图5是本发明所述分类准确率及损失函数图。

具体实施方式

下面结合附图对本发明的实施例作详细说明,本实施例在以本发明技术方案为前提下进行实施,给出了详细的实施方式和具体的操作过程,但本发明的保护范围不限于下述实施例。

如图1所示,本发明所述的用于心血管疾病患者脉象识别的神经网络结构,按照下述步骤进行:

S1,脉象数据采集:

采用脉象采集仪分别对正常人的脉象和心血管疾病患者的脉象进行采集;采集脉象过程中,调整脉象采集仪的测量压力获得不同压力值下的脉搏图,输出相应压力下的脉搏数据,输出格式均.txt,每次采集脉象的时间为10s,采样频率为200Hz,共计2000个数据点,采集的脉搏数据用MATLAB软件进行读取显示,然后选取压力值为80的脉搏图。

脉象采集仪采用上海实科科教设备有限公司生产的ZM-300系列的智能脉象仪;该仪器可以调节压力传感器上边的旋转按钮来实现不同的压力,从而自动采集到在不同压力值下的脉象信号,达到模拟中医临床诊断轻取和重取的采脉原理。同时,采集的脉象信号可以直接连接用户计算机,由仪器匹配的软件包对脉象信号进行各种处理分析,实时显示、存储、重读数字化脉波信号,自动判读脉象的位、数、形、势,识别脉图特征参数,并以多逻辑判断模式确定脉名;并能显示和打印系列脉图、最佳脉图及其特征参数、取脉压力-脉幅趋势图、40秒脉波趋势图等组成的脉图检测报告,以及根据脉象提示的动脉系统张力、阻力、生理年龄、自律神经平衡状态和辨证结论等组成的临床辅助诊断报告。

S2,脉象数据预处理:

由于在对脉象信号进行分类识别的时候,一般都是采用单个周期脉象信号进行识别研究,但是因为脉象信号的周期存在难以识别和确定等问题,并且采用深度学习网络结构,需要一定量的数据集,所以本发明采用数据切片方法,每一组数据里边基本包含三个脉搏周期信号,采集时间设为3.2秒,所用的采集仪器的采样频率为200HZ;在数据切片过程中可以适当的增加重叠的部分,所以输入数据的格式为每个样本是640个数据点;在切片过程中每次循环向右移动200个数据点,保证每次切片的数据都至少包含一个脉搏周期,并且每次切片中都加入一个新的脉搏周期,以提高系统的鲁棒性;该过程由MATLAB软件中的for循环函数实现;数据切片过程如图2所示。

S3,建立所述神经网络结构:

本发明的神经网络的卷积层一共有17层,为了避免出现梯度消失问题,在中间隐藏层加入了残差网络结构,残差网络结构将输入直接连接到后边的输出部分,这样就可以将学习目标改变为预测值与观测值之间的差值,并可保证随着网络深度的增加,准确率不会下降。网络结构主要是由卷积层、激活函数层、批量归一化层、Dropout层、残差块构成;具体的网络结构图如图3所示。

第一层卷积结构:

输入信号层:输入层是整个神经网络的输入,是将切片后的信号直接转换为输入的二维信号,二维信号分别代表了信号的通道数和信号的长度,输入层的信号维度为1*640,其中1代表只有一个输入通道,640代表信号的长度。

卷积层:卷积层是神经网络结构中最为重要的一层,卷积层的核心部分是卷积核,通过卷积核可以提取到原始信号的各种局部特征;卷积核有大小和数量两个属性,卷积核的大小和数量均由人工指定,而卷积核中的权重参数则在初始化的时候由程序随机生成,并在后期训练过程中不断调整这些权重值,最终使卷积核可以学习到最优的权重值,从而获得最好的训练模型;第一层得卷积核的参数为12*32*1,其中12为卷积核的个数,32*1为卷积核的长度和及宽度。卷积运算还具有局部连接和权值共享等优点,这样卷积层参数的个数就与输入信号的大小无关了,参数的个数仅仅与卷积核的大小和数量以及输入信号的通道个数有关。假设一个卷积层的卷积核的个数为n,而大小为1*m,则在这个卷积层中,需要调整的权重的个数为n*1*m,参数的数量远远低于全连接网络。其中输出信号的大小计算方式如公式1所示:

式中:L代表输出信号的长度,L

批量归一化层:在深度学习中,主要的任务就是为了训练神经网络从而得到数据的分布规律,并且能够在测试集上得到很好的泛化效果。但是,如果每一次的数据输入都是有不同的数据分布的话,会对网络的训练产生不良的后果,并且数据在经过一层层的网络结构以后,数据的分布也会发生不同的变化;批量归一化层的作用就是为了让数据尽量分布在原点附近,让数据分布尽量满足正态分布,降低数据之间的绝对差异性,并且突出数据的相对差异性,这样可以加快网络的训练速度,在分类任务中会有良好的表现。

激活函数层:在网络训练过程中,一般都是矩阵或者数据相乘,而一般训练的网络的输入和输出之间都是存在复杂的非线性映射关系,如果仅仅采用矩阵或者数组的线性乘法,那么对于深层网络将会变得毫无意义;因此,为了更好得映射输入和输出之间得非线性关系,在卷积层后加入激活函数层,激活函数选择为Relu函数。

Dropout层:Dropout是指深度学习训练过程中,对于神经网络训练单元,按照一定的概率将其从网络中移除,在前向传播的时候,让某个神经元的激活值以一定的概率p停止工作,这样可以使模型泛化性更强,让训练出的网络模型不会太依赖某些局部的特征,从而可以减少过拟合的问题,加入Dropout层可以更好的提升系统的抗噪声鲁棒性,本发明的p参数设置为0.35。

第二层卷积结构:

如图4所示,第二层卷积结构采用残差块结构;在深度学习神经网络中,随着网络层数的加深,模型的准确程度会出现下降,这种现象是梯度消失或者梯度爆炸产生的;残差块结构可以有效的避免其产生问题,在网络结构中由第L层向第L+1层的传递过程中分为两个部分进行传递:

第一部分是信号的卷积部分;两层卷积结构在图4中由函数表达式f(X

第二部分是信号的恒等映射部分,直接由第L层的输入直接输出给第L+1层,恒等映射部分由H(X

全连接网络层:

将从卷积层和池化层提取到的脉象信号特征被压缩到40*1,共有20个特征图;首先经过一个平均池化层,池化层主要是为了保持信号特征的不变性,提高信号特征的鲁棒性,同时又可以减少参数个数以及降低计算量,防止过拟合现象的出现。平均池化以后的特征图维度为20*10*1,然后将特征图铺平展开,共得到200个特征数据点,然后通过两个全连接层。

第一层全连接层将特征维度由200下降到16,第二层全连接层将特征维度由16下降为1,然后通过Sigmoid函数,输出网络预测类别的概率;全连接层的作用就是根据这些已知输入的细节特征进行组合判断是否属于某一类别的特征,然后将细节特征更好的映射为更明显的特征,从明显的特征组合来判断信号的类别;最后一层神经元的个数就是分类的类别个数,之后输出类别的概率与样本的真实标签值进行对比,在训练过程中选择交叉熵函数作为训练过程中的损失函数,优化算法选用批量梯度下降算法,交叉熵函数如公式(2)所示,N为批量梯度下降的样本个数,

利用反向传播算法进行优化,不断调整网络结构中的权重参数,从而达到训练网络模型的效果。

S4,训练过程:

将原始脉象数据经过筛选后,总共得到了114个数据样本。本实施例中,正常大学生的数据样本有60个片段,心脑血管疾病患者的脉象数据有54个,数据标签都是由中国中医科学院的五位中医专家进行标定的,最终经过切片后的信号数据集有250个正常大学生脉象片段和250个心脑血管疾病患者脉象片段。把这些片段分为训练集和测试集两部分,为了保证训练的模型能够有足够的泛化能力,所以训练集和测试集的样本个体完全独立;最终的分类准确率可以达到95%以上;分类准确率以及损失函数图如图5所示。

本发明采用数据切片的方法进行数据增强和数据扩容,采用一维卷积神经网络作为特征提取工具,直接对原始信号进行特征的自动提取,不再依靠人工定义的特征,实现卷积神经网络直接提取原始数据的“最优”特征。

本发明在卷积神经网络中引用残差网络结构,避免在加深网络结构层次时出现梯度消失或者梯度爆炸的问题,使神经网络能够拥有更深层次的结构和更好的非线性拟合能力。

本发明采用一维卷积神经网络仅仅对信号进行向量的操作,相比二维卷积神经网络其计算复杂度更低,对硬件的要求也较低,训练的时间成本更低。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号