基于BP神经网络和支持向量机的荨麻疹证候分类探讨

2020-03-21 03:39刘丽蓉詹秀菊
广州中医药大学学报 2020年3期
关键词:风寒荨麻疹证型

刘丽蓉, 詹秀菊

(广州中医药大学医学信息工程学院,广东广州 510006)

荨麻疹俗称风疹块,是一种常见的过敏性疾病,是由于皮肤、黏膜小血管扩张及渗透性增加而出现的一种局限性水肿反应[1]。皮损以风团为主,大小不等,形态不一,色泽或鲜红或濡白,分布或散在或融合成片,可发生于身体任何部位,伴有剧烈瘙痒,迁延数日至数月,且划痕征阳性[2]。荨麻疹症状严重者可影响患者正常生活以及工作。目前有关荨麻疹用药规律的研究较多[3-8],但关于荨麻疹症状与证候的研究鲜有报道。本研究基于文献资料,利用BP神经网络和支持向量机(support vector machine,SVM)分别探讨荨麻疹证候分类模型,以期为荨麻疹的中医辨证论治提供一定参考。

1 资料与方法

1.1 文献数据来源 收集维普数据库(VIP)、万方数字化期刊、中国知网(CNKI)等中文数据库中发表的有关荨麻疹临床治疗的文献。检索词为“荨麻疹”“风疙瘩”“风疹块”“鬼风疙瘩”“寻麻疹”“风团”“瘾疹”“临床疗效”“临床效果”“经验”。采用主题词、关键词、文摘检索,并联合逻辑词and、or组成逻辑式进行检索,检索式为:题名或关键词为“荨麻疹”OR“风疙瘩”OR“风疹块”OR“鬼风疙瘩”OR“寻麻疹”OR“风团”OR“瘾疹”,AND文摘为“临床疗效”OR“临床效果”OR“经验”。其中题名或关键词可换成主题词。

1.2 文献纳入标准 (1)治疗手段为中医药治疗或中西医结合治疗的文献;(2)中医诊断标准参照国家中医药管理局1994年发布的《中医病证诊断疗效标准》之“隐疹”的诊断标准,西医诊断标准参照《安德鲁斯临床皮肤病学》中有关荨麻疹的诊断标准[9];(3)治疗有效的文献;(4)病案资料完整,包含证候诊断、临床表现、治疗原则、药方等。(5)文献发表年限为1996年2月至2018年10月。

1.3 文献排除标准 (1)文献中未标明治疗效果及明确标明治疗效果不佳;(2)文献数据中出现错误或者发表数据雷同的文献;(3)动物实验的文献以及综述类文献。

1.4 文献数据处理 由3名研究人员完成文献筛选,其中两人独立按照文献的纳入标准和排除标准筛选文献,如有争议,由第三人做出判断。筛选后的文献由两位研究人员将病例整理录入Microsoft Excel 2010,录入内容包括文献名称、第一作者、临床症状、证候,其中病例中相关术语的规范化参考《中医症状鉴别诊断学》[10]、《中医诊断学》[11]、《中医证候鉴别诊断学》[12]。

1.5 数据分析 利用Matlab R2013a软件,建立基于BP神经网络和SVM的荨麻疹证候分类模型。BP神经网络是由输入层、隐含层、输出层组成的阶层型神经网络,相邻层之间各神经元进行全连接,而每层各神经元之间无连接,其权值的调整采用反向传播的学习算法[13]。本研究采用3层BP神经网络建模,建立存在于数据间的函数关系。如图1所示,输入层为17个中医症状向量,隐含层公式计算为7,输出层对应风寒束表、风热犯表、脏腑湿热和其他证型共4类。

图1 3层BP神经网络结构Figure 1 Three-layer BP neural network structure

支持向量机(SVM)是将所研究的问题向真实模型的一种逼近,将原始特征用核函数进行特定变换映射到高维空间,进而分解其特征矩阵,最终把待解决的问题转化为一个对凸二次规划问题求解的过程[14]。SVM最优超平面决策示意图如图2所示。

图2 SVM超平面决策面示意图Figure 2 Schematic diagram of support vector machine hyperplane decision surface

2 结果

2.1 文献检索结果 根据“1.1项下”的检索式,从中国知网共检索到1 130篇文献,维普1 010篇文献,万方813篇文献,剔除重复文献后共获取文献2 632篇。通过阅读文献题目,按照纳入标准和排除标准删除文献1 952篇,剩余文献680篇。再经通篇阅读全文后,筛选符合纳入标准的文献共458篇,从中提取完整的信息,具备完整信息的病例共397例。

2.2 BP神经网络证候模型的建立

2.2.1 训练样本选择 按纳入标准和排除标准共筛选出符合标准的荨麻疹病例数据为397例,每个样本包含荨麻疹常见的17个症状以及舌苔和脉象,症状按有无分别设置为1、0,中医证型4类证型输出形式设置为(0,0,0,1),(0,0,1,0),(0,1,0,0),(1,0,0,0)。从上述的荨麻疹数据中抽取中医症状及中医证型构成样本集合,作为BP神经网络的学习和测试样本。

2.2.2 网络模型训练与分类 将397个样本存储于数据项data中,将皮疹、瘙痒、皮疹色红、失眠、红舌、淡舌、淡红舌、薄苔、白苔、黄苔、腻苔、细脉、数脉、弦脉、浮脉、沉脉、滑脉等17个症状作为网络模型的输入变量,输出层对应风寒束表、风热犯表、脏腑湿热和其他证型,为体现模型的优良性,训练样本的选择采用随机抽取方法,从397个样本中随机抽取357个样本作为训练样本,随机抽取40个样本数据为测试样本。采用Matlab R2013a编程,确定BP神经网络模型的结构为17-7-4,设定训练函数为trainbfg函数,设定最大训练步数为100次,学习率为0.01。以风寒束表证为例,风寒束表证BP神经网络的测试过程如图3所示,其测试样本的预测准确率为72.50%(29/40),BP神经网络分类误差如图4所示。利用同样的方法与拓扑结构进行风热犯表证、脏腑湿热证与其他证型的分类器建立。风热犯表证分类模型测准确率90.00%(36/40),脏腑湿热分类器准确率为87.50%(35/40),其他证型分类器模型准确率为82.50%(33/40)。

模型训练结果提示,风热犯表证在BP神经网络模型中拟合度最高,其次脏腑湿热证,风寒束表证最次。分析其原因,可能是由于风寒束表证候样本偏少,导致其训练不够;或是针对风寒束表证,其模型选择的输入因子和输出因子不够紧密,以至于出现这种现象。但模型训练结果较为理想,说明BP神经网络的稳定性和可靠性,且模型具有较强的鲁棒性(robustness,反映控制系统抗干扰能力的参数,即系统的健壮性,是在异常和危险情况下系统生存的关键),提示基于BP神经网络机分类器在荨麻疹模型应用中具有一定的可行性。

图3 风寒束表证分类器分类输出Figure 3 Classification output for wind-cold attacking exterior syndrome classifier

图4 风寒束表证分类器分类误差Figure 4 Classification error of wind-cold attacking exterior syndrome classifier

2.3 SVM证候模型的建立

2.3.1 选定训练集与测试集 选取荨麻疹数据397例,将症状设置为输入变量,风寒束表证、风热犯表证、脏腑湿热证和其他证型分别设置为1、2、3、4,并作为输出变量。选取357例数据作为训练样本,其余每类证型提取10例数据为测试样本。

2.3.2 SVM模型的训练与预测 参数惩罚因子C、核函数以及其参数的选定可影响SVM模型的性能。C越大则对数据的拟合程度越高,容易出现“过学习”的现象;当C取值过小时,则对经验误差惩罚过小,就会出现“欠学习”的现象[15]。为了解决该现象,本研究SVM模型采用的是RBF径向基核函数,设置核函数参数t=2。利用K-CV(K-folder cross-validation,K折交叉验证)法对SVM模型的参数c(惩罚系数)和g(RBF核函数的系数)计算和选取,初设置惩罚函数参数c与gamma参数g的取值范围为[2-10,210]。利用svmcgForClass函数进行计算,得出对应参数c和参数g模型的分类结果和准确率,通过K-CV验证比较不同参数c和参数g的分类准确率,选择最佳参数c和参数g。经计算,SVM模型的最佳参数c设置为0.574 35,g设置为0.108 82。其模型测试样本的预测正确率为92.50%(37/40)。如图5所示。

图5 SVM模型的实际测试集分类和预测测试集分类Figure 5 Practical test set classification and predicted test set classification in SVM model

图5 显示,蓝色圆圈为实际输出分类,红色星号为期望输出分类;分类输出结果在很大程度上与期望结果相重合,仅有3例样本与期望输出不相符合。说明本研究所架构的SVM分类器应用于荨麻疹证型分类科学可行,结果较好,准确率较高。

基于BP神经网络构建的分类器的平均准确率为81.13%,SVM分类模型准确率为92.50%。结果表明,在荨麻疹中医证型分类应用,SVM分类模型与BP神经网络模型均具有较好的鲁棒性和稳定性,但SVM分类模型优于BP神经网络分类模型。

3 讨论

本研究利用BP神经网络与SVM分类器对荨麻疹证候进行分类,建立以荨麻疹17种常见的症状为输入变量,以风寒束表证、风热犯表证、脏腑湿热证、其他证型共4种证型为输出变量的证候分类模型。其模型拟合效果较好,精确度良好,SVM模型拟合效果优于BP神经网络。

BP算法已经被证实具有实现任何复杂非线性映射的功能,适合用于求解内部机制复杂的问题,因此使用BP人工神经网络解决中医证型问题是可行而科学的。但BP算法本质上是梯度下降算法,所要优化的目标函数又非常复杂,容易出现“锯齿形现象”,令BP算法学习速度缓慢。本课题训练样本量少,因此建模迭代次数较少,导致算法效率低下的弊端并不明显,与SVM分类器无太大差异。更多的训练样本能在一定程度上提升BP算法拟合结果的准确度,而本研究所收集的样本数量难以支撑BP算法取得更高的准确度。SVM是一种小样本学习方法,庞大的训练样本规模反而不利于SVM的学习。因此在样本量较少的情况下,使用SVM构建分类器将比使用BP算法更合适。

本研究利用BP神经网络与SVM分类器可取得较好的拟合结果,提示人工神经网络技术可能适合中医研究的需求。本研究把人工神经网络技术与荨麻疹证型研究相结合,但因限于一些客观条件,无法在结果数据的准确度上更进一步。就目前来看,不论是荨麻疹证型预测模型还是SVM分类器都还只属于理论的模型,尚在起步阶段,需要进一步完善。荨麻疹领域的人工神经网络研究,也需要更进一步的发展,今后需从以下方面进一步深入:第一,更大的样本量才能实现更加深入的人工神经网络学习,更加广泛的涵盖度及更加科学合理的研究结果。故在未来的研究中,应该广泛收集荨麻疹临床数据,增加样本数据量以增强训练效果,建立基于海量数据的、具有实用意义的荨麻疹证型预测模型和分类器。第二,利用智能优化算法优化BP神经网络参数,提高其模型分类器的精确度。第三,针对数据采集过程中可能出现误差或者噪音等现象,可利用机器算法筛选SVM惩罚参数,进而优化SVM分类器模型。

猜你喜欢
风寒荨麻疹证型
冬读古诗御风寒
基于因子分析及聚类分析的241例感染后咳嗽中医证素证型研究
基于自适应矩估计的BP神经网络对中医痛经证型分类的研究
感冒,要分清风寒还是风热
感冒,要分清风寒还是风热
天气冷了,孩子感冒一定属风寒吗?
辨证针刺治疗不同证型干眼的疗效观察
慢性荨麻疹患者外周血IL-17和IL-23的表达及临床意义
经方辨证治疗慢性荨麻疹经验
中西医结合治疗慢性荨麻疹39例