本发明涉及计算机数据处理技术领域,特别是涉及一种基于双路卷积神经网络融合的脉象识别方法。
背景技术:
脉诊是传统中医的组成之一,具有重要的临床价值。医师通过按压腕部桡动脉脉搏获取脉象信息,从而判断人体健康状况。但其准确性主要取决于医师的主观意识和临床经验,缺乏客观的诊断指标。因此有必要应用现代计算机技术,进行脉象信号的量化识别方法研究,实现脉诊的规范化和客观化。
当前已有许多学者进行了脉象信号分析识别的研究,分析方法主要包括时域分析、频域分析、时频域分析和非线性动力学分析等。时域分析法是根据脉象信号定义多个具有生理意义的时域特征,其中包括脉象主波幅度、重博前波幅度、降中峡幅度和脉动周期等;频域分析法通过傅里叶变换等数学分析理论将脉象信号推导至频域内,进行频域特征提取;时频域分析法可以同时描述信号的时域、频域特征,常用的方法有小波变换、希尔伯特-黄变换等;对于非线性动力学分析法,现有技术公开了一种基于无阈值递归图和卷积神经网络的脉象信号分析识别方法,该方法通过非线性分析将脉象信号转换为相应的无阈值递归图,从而使其非线性特征映射到二维平面中,通过卷积神经网络的多层卷积计算,实现对脉象信号特征的自学习并分类,使其具有分辨不同脉象类型的能力,该技术方案的步骤如下:(1)采集脉象原始脉象信号数据;(2)将脉象信号转换为递归图;(3)将递归图转换为无阈值递归图;(4)生成原始图像---标签数据集;(5)vgg-16模型训练;(6)脉象信号分类。
在脉象信号模式识别研究中,现有的技术主要采用bp神经网络线性判别分析、贝叶斯分类器、支持向量机(supportvectormachine,svm)等方法。传统的机器学习方法都需要人工定义并提取脉象特征,但脉象类型与脉象特征之间存在复杂的非线性关系,难以定义一个最优的特征集来区分不同类别的脉象。因此,现有的技术方案不足以准确提取各类脉象的深层次信息,模型的扩展能力较差,识别准确度较低。
技术实现要素:
为解决现有的技术方案不足以准确提取各类脉象的深层次信息、模型的扩展能力较差以及识别准确度较低的问题,本发明提供一种基于双路卷积神经网络融合的脉象识别方法。
为实现上述目的,本发明采取如下的技术方案:
一种基于双路卷积神经网络融合的脉象识别方法,包括以下步骤:
获取待识别的脉象图;
将所述脉象图输入至基于双路卷积神经网络融合的脉象识别模型中进行脉象识别,得到脉象识别结果;
其中,所述脉象识别模型通过以下步骤预先训练获得:
步骤一:采集训练数据集
利用高精度面阵式脉象采集仪采集手部挠骨附近的寸关尺三个位置在轻压、中压、重压三种压力下的脉象信号;
将所述脉象信号的点位数据转换为时间—振幅的脉象图;
对全部的所述脉象图进行标签划分,得到训练数据集;
步骤二:搭建脉象识别卷积神经网络框架
所述脉象识别卷积神经网络框架包括输入层、非线性变换层、线性融合层和输出层,其中,所述输入层包括两路网络结构相同的第一支路,每一个所述第一支路包括一个卷积层和一个修正线性单元;所述非线性变换层包括两路网络结构相同且分别与对应的所述第一支路连接的第二支路,每一个所述第二支路包括5层网络,每一层网络包括一个卷积层、一个批归一化和一个relu激活函数;所述线性融合层将所述非线性变换层的两个所述第二支路的结果融合,得到输出结果;所述输出层包括一个全局平均池化层、一个随机丢弃神经元连接和一个全连接层,所述线性融合层的输出结果输出至所述全局平均池化层;
步骤三:训练脉象识别卷积神经网络
利用所述训练数据集对搭建的脉象识别卷积神经网络进行训练,训练后得到所述脉象识别模型。
与现有技术相比,本发明具有以下有益效果:
本发明提供一种基于双路卷积神经网络融合的脉象识别方法,该方法利用卷积神经网络通过模拟人类神经元结构逐层进行信息传递的特点,实现特征的自动提取,其中一个支路负责提取脉象图的整体宏观特征,另一个支路负责提取脉象图的局部微小特征,最后融合两个支路提取的特征,因此可以同时提取脉象图全局和局部的深层次高维度图像信息,从而能够大幅度提高脉象识别的准确率,同时本发明的基于双路卷积神经网络融合的脉象识别模型的可扩展性强,可应用于脉象识别、脉象分析等领域。
附图说明
图1为本发明实施例提供的一种基于双路卷积神经网络融合的脉象识别方法的流程示意图;
图2为寸重压下的脉象图示意图;
图3为脉象识别卷积神经网络的结构示意图。
具体实施方式
下面将结合附图及较佳实施例对本发明的技术方案进行详细描述。
在其中一个实施例中,如图1所示,本发明提供一种基于双路卷积神经网络融合的脉象识别方法,该方法的整体流程如图1所示。本实施例的基于双路卷积神经网络融合的脉象识别方法主要包括离线部分和在线部分两部分,其中离线部分主要实现预先训练获得脉象识别模型,离线部分包括采集训练数据集步骤、搭建脉象识别卷积神经网络框架步骤和训练脉象识别卷积神经网络步骤,进一步地,还包括模型评价步骤,在线部分则包括利用脉象识别模型进行脉象识别的过程。
所述的离线部分,即预先训练获得脉象识别模型,具体内容如下:
步骤一:采集训练数据集
本发明的脉象训练数据采集利用的是高精度面阵式脉象采集仪,其面阵探头可全方位准确采集手部挠骨附近的寸关尺三个位置在轻压、中压、重压三种压力下的脉象信号;然后,将脉象信号的点位数据转换为时间—振幅的脉象图,如图2所示,图2仅以寸重压为例示出了脉象图的示意图,图中横坐标为时间,纵坐标为振幅;最后,由经验丰富的中医师对采集到的全部的脉象图进行标签划分,训练样本和标签一一对应,最终得到训练数据集。
步骤二:搭建脉象识别卷积神经网络框架
本发明采用卷积神经网络提取脉象图中能够反映各种脉象之间微妙区别的深层次高维度图像特征,因此设计了两路分支的双线性卷积神经网络,两路卷积神经网络具有相同的网络结构,网络层数为8层。本发明采用四种不同的层结构,如图3所示,脉象识别卷积神经网络包括输入层、非线性变换层、线性融合层和输出层,其中,输入层包括两路网络结构相同的第一支路,每一个第一支路包括一个卷积层(conv)和一个修正线性单元(rectifiedlinearunit,relu);非线性变换层包括两路网络结构相同且分别与对应的第一支路连接的第二支路,其中一个支路负责提取脉象图的整体宏观特征,另一个支路负责提取脉象图的局部微小特征,每一个第二支路包括5层网络,每一层网络包括一个卷积层和一个relu激活函数,在卷积层和relu激活函数中间有一个批归一化(bn);线性融合层将非线性变换层的两个第二支路的结果融合,得到输出结果;输出层包括一个全局平均池化层(gap)和一个全连接层(dense),全局平均池化层和全连接层中间有一个随机丢弃神经元连接(dropout),可选地,随机丢弃神经元连接的值为0.5,线性融合层的输出结果输出至全局平均池化层。
在卷积神经网络(cnn)的图像处理过程中,卷积层之间需要通过卷积滤波器联系,卷积滤波器的定义表示为w×h×c×d,其中,c代表被滤波图像的通道数,w、h分别代表滤波范围的宽、高,d代表卷积滤波器的种类。
输入层包括两路网络结构相同的第一支路,每一个第一支路包括一个卷积层和一个relu,输入层的两路第一支路的特征提取公式相同,如公式(1)所示:
f1(x1)=max(0,w1*x1 b1)(1)
式中,x1为输入输入层的脉象图,例如输入图像(即输入输入层的脉象图)为3×80×80的特征图,表示特征图为3通道的彩色图,宽w和高h均为80,w1和b1分别表示输入层的卷积滤波器和偏置,w1的尺寸是3×3×3×64,它表示64种不同的卷积滤波器,每个卷积核的尺寸为3×3×3,f1(x1)是第一支路的卷积层得到的特征图,经过卷积层输出特征图的宽w1和高h1的计算公式如公式(2)和公式(3)所示:
w1=(w-pad*2 kenel)/stride 1(2)
h1=(h-pad*2 kenel)/stride 1(3)
式中,kernel为卷积核的大小,stride为卷积核的步长,pad为边缘补零像素个数,且kernel的值为3,stride的值在输入层、脉象识别卷积神经网络的第二层至第三层为1,在脉象识别卷积神经网络的第四层至第六层为2,当stride的值为1时,提取重叠的图像块效果较好,pad的值为1。
输入输入层的脉象图为3×80×80的特征图,经过输入层的64个3×3的卷积核之后会产生64×80×80的特征图,64×80×80的特征图经过修正线性单元,修正线性单元表示为max(0,x),可以提取有用的特征图,最后输出结果仍为64×80×80的特征图。
在非线性变换层的非线性映射过程中,卷积层、批归一化和relu激活函数位于脉象识别卷积神经网络的第二层至第六层,非线性变换层各层的公式表示如下:
fi(xi)=max(0,wi*fi-1(xi-1) bi){2,3,4,5,6}(4)
式中,i表示第i层,xi-1为第i-1层的输出即fi-1(xi-1),wi和bi分别表示非线性变换第i层的卷积滤波器和偏置,其中,卷积滤波器w1的尺寸是3×3×3×64;卷积滤波器w2的尺寸是64×3×3×64,卷积核的尺寸为64×3×3;卷积滤波器w3的尺寸是128×3×3×64,卷积核的尺寸为64×3×3;卷积滤波器w4、卷积滤波器w5和卷积滤波器w6的尺寸是256×3×3×128,卷积核的尺寸为128×3×3。
输入层的两个支路输出的64×80×80的特征图输入到脉象识别卷积神经网络的第二个层网络的卷积层中,经过64个3×3的卷积核之后会产生64×80×80的特征图。然后,64×80×80的特征图进入批归一化,批归一化在卷积层和relu激活函数中间,解决了神经网络训练时的收敛速度慢和梯度爆炸等无法训练的情况。同时,批归一化加快了网络的训练速度,提高了模型精度。最后,特征图经过修正线性单元,提高了特征的非线性。第二层网络输出64×80×80的特征图之后经过与第二层网络有相同的结构的第三层网络,得到64×80×80的特征图。第三层网络输出64×80×80的特征图之后经过与第三层网络有相同的结构的第四层网络,得到128×80×80的特征图。第四层网络输出256×40×40的特征图之后经过与第四层网络有相同的结构的第五、六层网络,最后得到256×10×10的特征图。
在线性融合层,将非线性变换层的两个第二支路的输出结果进行对应位置的特征值相加即进行元素级相加(elementadd),得到线性融合层的输出结果,计算公式如公式(5)所示:
cj=aj bj(5)
式中,cj代表线性融合层输出的特征图在j位置的元素值,aj代表其中一个第二支路输出的特征图在j位置的元素值,bj代表另一个第二支路输出的特征图在j位置的元素值。
非线性变换层的两个第二支路输出特征图大小均为256×10×10,线性融合层进行对应位置的特征值相加处理后,得到线性融合层的输出结果为256×10×10的特征图。
在输出层的输出重建过程中,线性融合层的输出结果输入到输出层的全局平均池化层,全局平均池化层的滤波器大小为256×10×10,经过全局平均池化后的特征图大小为256×1×1,再经过一个随机丢弃神经元连接、一个256×28的全连接层,脉象识别卷积神经网络最后输出的特征图大小为1×28。
步骤三:训练脉象识别卷积神经网络
利用训练数据集对搭建的脉象识别卷积神经网络进行训练,迭代100次以上后得到每轮训练的模型,模型最终被保存到文件中,训练后得到脉象识别模型。
可选地,在利用训练数据集对搭建的脉象识别卷积神经网络进行训练的过程中,利用带微批数据集(mini-batch)的随机梯度下降算法来迭代和更新卷积核状态w和偏置b,每次进行微批数据集运算,并采用随机梯度下降算法寻找全局最优解。
进一步地,步骤三之后还包括:
步骤四:模型评价
首先,获取已经做过类别判断的脉象图数据集;然后,利用步骤三训练后的脉象识别模型对脉象图数据集进行分类,并将分类正确的脉象图数据占所有被分类脉象图数据的百分比作为脉象识别模型的识别准确率;最后,根据识别准确率评价脉象识别模型的准确率,准确率大于阈值的脉象识别模型才可以用于对待识别脉象图的分类,以保证脉象识别的准确性和可靠性。
所述的在线部分,具体内容如下:
首先,获取待识别的脉象图,该脉象图是由高精度面阵式脉象采集仪采集的脉象信号转换得到的时间—振幅脉象图;
其次,利用预先训练得到的脉象识别模型对待识别的脉象图进行脉象识别,具体是将待识别的脉象图输入至基于双路卷积神经网络融合的脉象识别模型中进行脉象识别,得到脉象识别结果。
进一步地,所述的在线部分还包括脉象识别效果评价步骤,在该步骤中,利用训练得到的模型对已经做过类别判断的脉象图进行分类,分类正确的结果占所有被分类数据的百分比即为模型的识别准确率,根据识别准确率可以评价脉象识别模型的识别效果。
本发明提供一种基于双路卷积神经网络融合的脉象识别方法,该方法利用卷积神经网络通过模拟人类神经元结构逐层进行信息传递的特点,实现特征的自动提取,其中一个支路负责提取脉象图的整体宏观特征,另一个支路负责提取脉象图的局部微小特征,最后融合两个支路提取的特征,因此可以同时提取脉象图全局和局部的深层次高维度图像信息,从而能够大幅度提高脉象识别的准确率,同时本发明的基于双路卷积神经网络融合的脉象识别模型的可扩展性强,可应用于脉象识别、脉象分析等领域。
以上所述实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。
1.一种基于双路卷积神经网络融合的脉象识别方法,其特征在于,包括以下步骤:
获取待识别的脉象图;
将所述脉象图输入至基于双路卷积神经网络融合的脉象识别模型中进行脉象识别,得到脉象识别结果;
其中,所述脉象识别模型通过以下步骤预先训练获得:
步骤一:采集训练数据集
利用高精度面阵式脉象采集仪采集手部挠骨附近的寸关尺三个位置在轻压、中压、重压三种压力下的脉象信号;
将所述脉象信号的点位数据转换为时间—振幅的脉象图;
对全部的所述脉象图进行标签划分,得到训练数据集;
步骤二:搭建脉象识别卷积神经网络框架
所述脉象识别卷积神经网络框架包括输入层、非线性变换层、线性融合层和输出层,其中,所述输入层包括两路网络结构相同的第一支路,每一个所述第一支路包括一个卷积层和一个修正线性单元;所述非线性变换层包括两路网络结构相同且分别与对应的所述第一支路连接的第二支路,每一个所述第二支路包括5层网络,每一层网络包括一个卷积层、一个批归一化和一个relu激活函数;所述线性融合层将所述非线性变换层的两个所述第二支路的结果融合,得到输出结果;所述输出层包括一个全局平均池化层、一个随机丢弃神经元连接和一个全连接层,所述线性融合层的输出结果输出至所述全局平均池化层;
步骤三:训练脉象识别卷积神经网络
利用所述训练数据集对搭建的脉象识别卷积神经网络进行训练,训练后得到所述脉象识别模型。
2.根据权利要求1所述的一种基于双路卷积神经网络融合的脉象识别方法,其特征在于,
在利用所述训练数据集对搭建的所述脉象识别卷积神经网络进行训练过程中,利用带微批数据集的随机梯度下降算法来迭代和更新卷积核状态w和偏置b,每次进行微批数据集运算,并采用随机梯度下降算法寻找全局最优解。
3.根据权利要求1或2所述的一种基于双路卷积神经网络融合的脉象识别方法,其特征在于,
在卷积神经网络的图像处理过程中,卷积层之间需要通过卷积滤波器联系,卷积滤波器的定义表示为w×h×c×d,其中,c代表被滤波图像的通道数,w、h分别代表滤波范围的宽、高;d代表卷积滤波器的种类;
所述输入层的两路所述第一支路的特征提取公式相同,如公式(1)所示:
f1(x1)=max(0,w1*x1 b1)(1)
式中,x1为输入所述输入层的脉象图,w1和b1分别表示所述输入层的卷积滤波器和偏置,w1的尺寸是3×3×3×64,它表示64种不同的卷积滤波器,每个卷积核的尺寸为3×3×3,f1(x1)是所述第一支路的卷积层得到的特征图,所述特征图的宽w1和高h1的计算公式如公式(2)和公式(3)所示:
w1=(w-pad*2 kenel)/stride 1(2)
h1=(h-pad*2 kenel)/stride 1(3)
式中,kernel为卷积核的大小,stride为卷积核的步长,pad为边缘补零像素个数,且kernel的值为3,stride的值在所述输入层、所述脉象识别卷积神经网络的第二层至第三层为1,在所述脉象识别卷积神经网络的第四层至第六层为2,pad的值为1;
输入所述输入层的脉象图为3×80×80的特征图,表示特征图为3通道的彩色图,宽w和高h均为80,特征图经过所述输入层的64个3×3的卷积核之后会产生64×80×80的特征图,64×80×80的特征图经过修正线性单元,修正线性单元表示为max(0,x),可以提取有用的特征图,最后输出结果仍为64×80×80的特征图;
在所述非线性变换层的非线性映射过程中,卷积层、批归一化和relu激活函数位于所述脉象识别卷积神经网络的第二层至第六层,所述非线性变换层各层的公式表示如下:
fi(xi)=max(0,wi*fi-1(xi-1) bi){2,3,4,5,6}(4)
式中,i表示第i层,xi-1为第i-1层的输出即fi-1(xi-1),wi和bi分别表示非线性变换第i层的卷积滤波器和偏置,其中,卷积滤波器w1的尺寸是3×3×3×64;卷积滤波器w2的尺寸是64×3×3×64,卷积核的尺寸为64×3×3;卷积滤波器w3的尺寸是128×3×3×64,卷积核的尺寸为64×3×3;卷积滤波器w4、卷积滤波器w5和卷积滤波器w6的尺寸是256×3×3×128,卷积核的尺寸为128×3×3;
在所述线性融合层,将所述非线性变换层的两个所述第二支路的输出结果进行对应位置的特征值相加,得到所述线性融合层的输出结果,计算公式如公式(5)所示:
cj=aj bj(5)
式中,cj代表所述线性融合层输出的特征图在j位置的元素值,aj代表其中一个第二支路输出的特征图在j位置的元素值,bj代表另一个第二支路输出的特征图在j位置的元素值;
在所述输出层的输出重建过程中,所述线性融合层的输出结果输入到所述输出层的所述全局平均池化层,所述全局平均池化层的滤波器大小为256×10×10,经过全局平均池化后的特征图大小为256×1×1,再经过一个随机丢弃神经元连接、一个256×28的全连接层,脉象识别卷积神经网络最后输出的特征图大小为1×28。
4.根据权利要求1或2所述的一种基于双路卷积神经网络融合的脉象识别方法,其特征在于,所述步骤三之后还包括:
步骤四:模型评价
获取已经做过类别判断的脉象图数据集;
利用训练后的所述脉象识别模型对所述脉象图数据集进行分类,并将分类正确的脉象图数据占所有被分类脉象图数据的百分比作为所述脉象识别模型的识别准确率;
根据所述识别准确率评价所述脉象识别模型的准确率。
5.根据权利要求1或2所述的一种基于双路卷积神经网络融合的脉象识别方法,其特征在于,
所述随机丢弃神经元连接的值为0.5。
技术总结