基于神经网络和支持向量机的中医体质辨识模型研究*

2020-08-07 09:22潘思行周苏娟黄展鹏
世界科学技术-中医药现代化 2020年4期
关键词:舌象舌苔舌质

潘思行,林 育,周苏娟,黄展鹏

(1. 广东药科大学公共卫生学院 广州 510310;2. 广州中医药大学临床药理研究所广州 5100063. 广东药科大学医药信息工程学院 广州 510006)

中医体质指的是体内阴阳、气血、津液盛衰变化引起的一种的反应状态[1],是体现机体对外界因素反应性、易感性、倾向性的个性特质。体质的变化可以直接影响病证的形成、转变和转归,是制约疾病发生、发展和变化的重要因素。舌受体内气血津液的滋养,是反映人身体状态的一扇窗户。舌象表现也是中医体质分类最易掌握、最易客观化的一项[2]。随着计算机科学的发展,采用计算机辅助实现中医舌诊的客观化研究已成为中医现代化发展的热点之一[3]。张季等利用数字化舌象多重分形谱特征参数,构建出自动辨识舌象苔质特征的神经网络分类器,取得了良好的识别效果[4]。张新峰通过粗糙集理论融合舌象的特征,构建出基于概率输出的体质识别支持向量机分类器,为中医舌象的辅助诊断提供了量化依据[5]。然而形体特征作为机体体质的另一种外在表现形式,在体质辨识研究中甚少论述。本文通过提取数字化舌象、形体特征并构建人工神经网络(Artificial Neural Network,ANN)和支持向量机(Support Vector Machine,SVM)两种中医体质自动辨识模型,探索中医以舌辨质的高效自动识别方法,为中医体质辨识客观化、规范化研究提供科学依据,为中医药现代化的传承和发展奠定了理论基础。

1 数据来源

选取自愿参与舌图像数据采集和中医体质测定的受测者231 人,其中男100 人、女131 人。在光源恒定的现场采集舌图像、测量形体数、收集体质数据,同时由两名中医师根据《中医体质分类与判定自测表》确定其体质类型,再对采集的舌图像进行特征分析,取得客观化的舌象数据,经相关性分析后建立基于舌象和形体特征的辅助中医体质辨识模型,并选择分别用人工神经网络和支持向量机两种模型进行比较分析,在人工神经网络识别模型中分别采用单网络多类输出值网络和一个网络一个输出网络两种,具体研究思路如图1所示。

图1 融合舌象和形体特征的中医体质辨识模型研究思路图

图2 舌图像的特征分析

2 舌象和形体特征的分析处理

在体质辨识中,采集的舌图像需要进行分析处理,取得舌象的颜色特征、纹理特征和齿痕特征的数据,以和形体特征一起作为体质辨识模型的输入,在体质辨识中融入舌象和形体等客观化的信息。

2.1 舌苔和舌质的分割和特征的提取

研究在已经提取舌所在区域的图像上,采用最大类间方差法将舌图像分割成舌质和舌苔两部分[6-7]。最大类间方差法先确定图像的灰度阈值,然后用该图像的所有像素点的灰度值与该阈值进行比较,小于阈值的则直接将该像素的灰度值赋值为0,大于该阈值的则直接将该像素点的灰度值赋值为255,由此便可将图像划分为两类区域,通过不断地调整阈值,找到使区域的类间方差达到最大或者类内方差最小的阈值,从而达到区域划分成舌质和舌苔的目的,其舌质和舌苔的分析效果如图2 所示,图2(a)为舌图像的原图,图2(b)和图2(c)分别为用最大类间方差法分割后的舌苔和舌质图,以便用于舌苔纹理特征分析和舌质与舌苔的颜色特征分析。

2.2 舌象的颜色特征分析

在分割了舌苔和舌质的基础上,需要分析舌象的颜色特征。传统RGB(即红绿蓝三原色)色彩模式是工业界的一种颜色标准,通过改变红色(Red)、绿色(Green)、蓝色(Blue)三种颜色深浅变化和叠加程度得到各式各样的颜色。由于R、G、B 三个分量之间相关性高,且RGB 彩色空间色彩均匀性较差,无法用空间距离来度量两种色彩的相似性,而HSI(Hue-Saturation-Intensity,HSI)色彩空间用色调、饱和度和亮度来描述色彩,亮度分量与色度分量是分开的,比传统RGB 色彩空间更符合人的视觉特性,适合于彩色特性检测和分析。因此在舌象的颜色特征表示上选择HSI颜色空间计算其色调和饱和度分量的值,这两个分量与患者舌象的色彩特征联系紧密。RGB空间转化为HSI空间的公式如下:

上述式中的R、G和B分别表示RGB颜色空间中红色、绿色和蓝色分量的值。

利用式(1)、式(2)和式(3)将已经分割的舌苔和舌质彩色图像变换到HSI 颜色空间,然后计算色调和饱和度分量的均值,以此作为舌苔和舌质的颜色特征值。

2.3 舌苔的纹理特征分析

依据分割后的舌质和舌苔区域,依据中医体质辨识主要依赖舌质和舌苔的颜色以及舌苔的纹理等情况,根据式(1)和式(2)分别计算舌质和舌苔的色调和饱和度值的均值,而舌苔的纹理特征通过分析舌苔区域的亮度均值和平滑度来描述。舌苔的亮度均值计算公式:

其中,zi是表示亮度的一个随机变量,p(zi)是一个区域中的灰度级的直方图,L为可能的亮度级数。

舌苔的平滑度计算公式:

2.4 舌象的齿痕特征分析

齿痕是指舌体边缘见牙齿的痕迹,多因舌体胖大而受齿缘压迫所致,其对临床辨证论治有很大的指导意义,因此将齿痕作为舌象特征引入体质辨识,采用基于道格拉斯-普克法删除冗余顶点的舌齿痕个数提取方法,该方法能有效保持原曲线大波峰而过滤小波峰,有利于舌齿痕特征的提取[8]。其基本思路是:对每一条曲线的首末点虚连一条直线,求所有点与直线的距离,并找出最大距离值dmax,用dmax与限差D 相比:若dmax<D,这条曲线上的中间点全部舍去;若dmax≥D,保留dmax对应的坐标点,并以该点为界,把曲线分为两部分,对这两部分重复使用该方法,将统计的齿痕的数目作为中医体质辨识中舌象特征的一个重要指标。其分析结果如图2(d)所示,绿色为齿痕的区域,图中红色正方形为算法识别的齿痕,据此统计齿痕的数目。

2.5 形体特征的提取

形体研究中形体特征采用身体质量指数(Body Mass Index,BMI),数据采集过程中,身高和体重分别用卷尺(研究对象直立靠墙壁,三角板压头皮,测量裸足脚底距三角板的距离,精确至0.001 m)和电子体重秤测量(精确至0.1 kg),用体重公斤数除以身高米数平方得出的数字即为受测者的BMI值。

2.6 数据的归一化处理

基于上述步骤的计算,分别得到了舌苔和舌质的色调和饱和度值,舌苔的亮度均值和平滑度,以及齿痕数目和代表形体特征的BMI 值,由于这些值差异较大,为了使上述8个属性值具有相同的权重,本文采用高斯归一化方法进行归一化处理。设V=[v1,v2,v3…vN],为V的均值,σ为V的标准差,归一化处理:

对大于1 和小于-1 的值分别取1 和-1,以保证所有值均落在[-1,1]的区间,使得上述属性值在中医体质辨识中具有同等的权重。

3 神经网络和支持向量机的中医体质辨识模型

3.1 人工神经网络模型

人工神经网络是由多个相互关联的神经元连接构成的网状系统,该系统可以根据现有信息不断自主学习并自动完善自身结构。人工神经网络利用自带的学习函数将每一条样本数据构造成一对“输入值/目标输出值”的映像关系[9],并通过这种充分的训练获得对该类数据的自动识别能力。根据神经元之间的不同连接方式(拓扑结构),人工神经网络可分为:单网络多类输出值网络(All Class in One Network,ACON)、一个网络一个输出网络(One Class in One Network,OCON)两种。

3.1.1 ACON神经网络模型

其网络包括三层:输入层、中间层(隐藏层)和输出层,网络训练算法常见的是误差反向传播算法。训练过程主要分为计算输出值和调整网络权值两个过程。1.计算输出值:网络接收输入层的所有舌象和形体的特征向量,并在隐藏层给每一个向量分配初始权值和阈值再通过运算得到四种体质的输出值。2.调整网络权值:网络将输出值与目标输出值进行比较,计算各层的输出误差并通过该误差调整输入层和隐层、隐藏和输出层之间的连接权值和阈值。然后重新开始计算新的四种体质的输出值(反复迭代的过程),直到网络的实际输出与目标输出之间的误差达到了可以接受的范围或者迭代的次数达到了预先设定的最大值为止。ACON神经网络中医体质辨识如图3所示。

3.1.2 OCON神经网络模型

研究中该网络由四种体质预测网络组成,通过一系列运算构造输入特征向量与体质输出之间映像关系,从而实现体质的辨识。每个网络结构与ACON 类似,但只有一个输出值,即每一种体质都单独创建一个网络。由于单个网络输出少,每个网络结构更简单、运算更快捷、更容易训练,但需要针对每种体质构建一个中医体质识别模型,其中医体质辨识模型如图4所示。

3.2 支持向量机模型

支持向量机是一种二元分类器,其结构大致可以分为输入层、核空间和输出层。其原理是统计学习理论的VC 维理论和结构风险最小原理,追求在现有信息下的最优解的过程。支持向量机通过映射函数将低维特征向量映射到高维空间里,然后寻找一个最优的超平面将向量充分分割,使分割后的两部分数据点离平面的距离最远。分类过程的关键是利用核函数把复杂的分类过程通过映射转化成一个线性可分问题[10]。

支持向量机算法的原理就是找到一个分割超平面,它能把数据正确的分类,并且间距最大,线性可分的支持向量机模型如图5 所示,H 为分类面,H1 和H2上的点为分类的支持向量。对于非线性可分的数据,采用径向基核函数为内积核函数,是一种沿径向对称用于计算空间中任一点到某一中心间欧氏距离的单调函数,本研究采用高斯径向基函数核,对于每种中医体质分别建立支持向量机辨识模型,利用现有舌象和形体特征以及中医体质数据进行训练,然后辨识模型可识别测试的数据是否为该体质。

4 结果

根据采集的舌图像、形体和性别数据,以及对应的中医体质辨识结果,利用Matlab 编写程序,对舌图像的颜色特征、纹理特征和齿痕特征进行分析处理,取得对应的特征值并进行归一化处理,用SPSS对中医体质与上述特征的相关性进行分析,以筛选有用的特征量用于体质辨识,再导入Matlab 编写的神经网络模型和支持向量机模型进行中医体质辨识。神经神经网络的隐含层的神经元节点个数为10,训练函数为附加动量的梯度下降法;支持向量机采用二次核函数,其它参数为默认值。

图3 ACON神经网络结构中医体质识别模型示意图

图4 OCON神经网络结构中医体质识别模型示意图

图5 支持向量机的分类模型示意图

由于体质分布的差异,采集的样本中阳虚质、痰湿质、湿热质、血瘀质和特禀质等五种体质的样本数量低于30 例,模型的训练和测试的稳定性较差,剔除上述五种体质后剩余样本共184 例,其中平和质90例,气虚质45 例,阴虚质62 例和气郁质50 例,因中医体质存在兼质,四种体质的样本例数之和大于剩余样本总数。在对平和质、气虚质、阴虚质、气郁质四种体质与性别、形体质量指数和舌象特征进行相关性分析的基础上,利用人工神经网络和支持向量机进行中医体质自动辨识研究。

表1 中医体质类型与性别、舌象和形体特征的相关系数

4.1 相关性分析结果

相关系数是变量之间线性相关程度的指标,取值范围在[-1,1]之间,正数为正相关,负数为负相关,本文采用皮尔逊相关系数,其定义为两个变量之间的协方差和标准差的商。本研究对各变量归一化后值与四种体质做相关性分析,结果显示,中医体质与舌象和形体特征存在一定的相关性,其舌的齿痕特征、身体质量指数和舌苔的色调的相关性较大,如表1 所示。舌质的饱和度分量与四种体质的相关性太低,在后续的中医体质模型辨识中不予纳入。

4.2 支持向量机和人工神经网络的中医体质辨识结果

为保证最终分类科学性、准确性和可重复性,本研究采用随机抽取样本并多次训练的方法,最终预测结果取平均值。每次随机抽取70%的样本训练,剩余30%样本用于预测,重复10 次训练,取所有预测结果平均值作为最终辨识的结果。对于ACON神经网络模型,体质数据分别用不同的值代表不同的体质,将所有训练数据导入模型进行训练,然后利用模型根据输入的测试数据中的舌象和形体特征数据进行体质辨识;OCON 神经网络模型则需要为每种体质建立一个模型,然后将训练数据中属于该体质的体质类型值设为1,其它为0,对模型进行训练,再用测试数据中的舌象和形体特征数据作为输入对所有的模型进行测试,以此计算其准确性;支持向量机模型的训练和测试方法与OCON 神经网络模型类似,需要对每种体质建立模型,测试也需要将输入导入所有模型得到其辨识结果。由表2 可知,支持向量机在测试的四种体质中总体表现优于人工神经网络,故可见在样本量不大的情况下进行辅助中医体质辨识,支持向量机的总体准确率较高。

表2 基于支持向量机和人工神经网络的中医体质辨识准确率比较/%

5 讨论

现代中医体质学在中医治未病领域,将体质分为平和(健康)体质和偏颇体质两大类,主张在疾病发病前纠正偏颇体质状态,以达到预防疾病、防患于未然的效果[11]。此外,深入剖析偏颇体质在疾病产生对应证型的过程中所起的从化作用,可以从体质角度阐明同一疾病在不同个体间存在证型差异的原因,发挥中医个性化“治未病”独特优势[12]。袁尚华等[13]分析正常高值血压人群中医体质与血压值相关性,发现复合偏颇体质多见,为开展中医高血压“未病”体质干预提供科学依据。基于传统以望诊、问诊为主的中医体质辨识方法受主观化影响较大的特点,客观化的辨识技术为中医诊疗现代化开拓了新的出路。

舌诊是中医辨识体质的常用望诊方法之一。脏腑之寒热虚实、气血之兴盛衰败,皆可由舌象变化间接显现。黄婧文等[14]分析糖脂代谢病患者体质类型及舌象特点,发现患者以气虚质居多(40%),舌象以淡红舌薄白苔为主。羊琪琪等[15]采用舌面一体仪分析学龄前儿童体质类型与舌色色调的关系,发现不同偏颇体质者舌质的红色、绿色、蓝色和色调各有不同(P<0.05),两者之间存在明显的相关性。形体主要指人体高矮胖瘦的身形体态特征,是人体体质状况的另一种间接反映,与人体体质关联紧密,引入客观化的形体特征有利用提升中医体质辨识的客观化水平。综上,融合舌象特征和形体特征的客观化诊断技术,在中医体质辅助辨识中具有较好的研究价值。

人工神经网络是一种模拟生物神经系统原理的新型智能信息处理系统,拥有并行分布式处理、自学习、良好容错性等特点[16],现已普遍用于中医药领域。田艳鹏等运用径向基和多层感知器人工神经网络分别构建高血压病痰湿壅盛证诊断模型,测试准确率均超过90%[17]。罗悦等采用人工神经网络,构建中医体质与体检指标关联模型,学习误差可以控制到0.001[18]。赵书颖等采用多层感知器、径向基函数人工神经网络建立高血压病阴阳两虚证诊断模型,测试正确率达到93.9%、96.3%[19]。人工神经网络的主要优点有:1.对高维数据的分类更准确、更高效;2.建模前不需要考虑变量间的交互作用、线性和非线性关系[20]。其缺点是:1.对网络构建需要有一定的先验知识基础,涉及结构选择问题,局部极小值问题,过度拟合问题等。2.当样本量过大、隐含层层数或神经元个数过多时,会使网络复杂化,训练时间延长。

支持向量机是近年兴起在中医药领域的基于统计学风险最小原理分类预测算法,可以根据有限信息在简化模型和保证学习能力之间寻求全局最优方法,具很好的推广性[16]。许明东等运用支持向量机算法探讨高血压中医证候与血脂、血尿酸、空腹血糖的关系,最终总体识别准确率高达90.8%[21]。阚红星等根据2型糖尿病3 种证型的舌象特征,提取舌体、舌苔及舌质的颜色、裂纹和胖大特征值,实现2型糖尿病的中医证型识别,其灵敏度达到93.85%[22]。支持向量机的优点是不需要先知经验,通过目标向量从低维空间向高维映射的方法,将复杂分类转化成简单的线性可分问题。很好地解决小样本、非线性、高维数和局部最小等实际问题[5]。支持向量机的缺点是这种二次型寻优算法,面对大样本时模型训练的速度会变慢,适用性会受到影响。

本研究中人工神经网络和支持向量机的辨识结果显示,舌象、形体特征在中医体质临床辨识中起到重要作用,有利于提升中医体质识别的客观化水平。人工神经网络是受生物神经网络启发而构建的算法模型,其需要大量数据进行训练;支持向量机是一种有坚实理论基础的新颖的小样本学习方法,最大化分类边际的思想是支持向量机方法的核心,支持向量机的最终决策函数只由少数的支持向量所确定。研究结果也表明,在样本量不大的情况下,支持向量机的体质辨识效果要优于人工神经网络,而人工神经网络网络中又以单网络多类输出值网络更优。分析结果中存在的阴虚质的支持向量机识别率较低的原因可能与阴虚质的体质特征区分度不高相关,导致支持向量确定的支持向量难于有效地区分是否为阴虚质。

猜你喜欢
舌象舌苔舌质
574例新型冠状病毒肺炎康复者舌象特征分析
基于舌诊偏色与去干扰的计算机技术研究∗
辨证治疗慢性支气管炎
通过检查畜禽口腔诊断疾病
宝宝需要清洁舌苔吗
糖尿病肾病气阴两虚夹瘀证治疗前后舌象改变的研究
刷牙别忘清理舌苔
舌苔厚腻 原来是湿气太重
慢性乙型肝炎舌色与舌象其他特征关系的研究