• 联系我们
  • 地址:湖北武汉三环科技园
  • 电话:159116031100
  • 传真:027-68834628
  • 邮箱:mmheng@foxmail.com
  • 当前所在位置:首页 - 中医疾病
  • 数据挖掘技术在中医证候学中的应用
  •   :中医证候的研究工作仍然存在一定的困难,证候的规范化和证候诊断的量化是中医发展必须解决的问题。数据挖掘技术是一种高效的数据分析手段,其在中医领域的研究也逐步热门。使用数据挖掘技术中的关联规则和分类算法对早中期慢性肾衰竭的证候和症状进行分析:首先对采集的症状和证候信息进行数字特征化处理;然后对证候之间的关联关系进行研究,获得了高支持度的四组证候组合;最后分类和预测症状和证候之间的辩证关系,得到了症状的规则集,并计算出其中的重要症状。实验证明,分类结果对早中期慢性肾衰竭的症状与证候的辩证论治具有重要的临床指

      作者/ 周旭1赵耀21. 医科大学 基础医学院( 050017) 2. 中国人民银行中心支行( 050000)

      摘要:中医证候的研究工作仍然存在一定的困难,证候的规范化和证候诊断的量化是中医发展必须解决的问题。数据挖掘技术是一种高效的数据分析手段,其在中医领域的研究也逐步热门。使用数据挖掘技术中的关联规则和分类算法对早中期慢性肾衰竭的证候和症状进行分析:首先对采集的症状和证候信息进行数字特征化处理;然后对证候之间的关联关系进行研究,获得了高支持度的四组证候组合;最后分类和预测症状和证候之间的辩证关系,得到了症状的规则集,并计算出其中的重要症状。实验证明,分类结果对早中期慢性肾衰竭的症状与证候的辩证论治具有重要的临床指导意义。

      证候是医师通过望、闻、问、切来收集病人四诊信息资料,运用相关中医理论,从整体上对疾病进行分析,归纳、推理、判断疾病的某一时点病理状态综合反映的认识[1]。由于证候是一种非线性的复杂的临床表现,只有采用与证候复杂性相适应的科学理论及思维方法对其进行研究,才能其科学内涵[2]。运用数据挖掘技术对中医证候的构成特点及其规律进行分析研究,将对中医证候的辩证分析起到未来身份测试巨大的促进作用。

      数据挖掘是从大量数据中挖掘有趣模式和知识的过程。从广义上说,数据挖掘是对数据库知识发现(Knowledge Discovery in Databases,KDD)的一个过程[3]。数据挖掘作为一种通用技术,可以应用于任何类型的数据,包括数据库、数据仓库、web信息以及其他信息存储数据库和动态的流入系统的数据等。

      关联分析用于发现隐藏在数据集中的有意义的联系,所发现的特征变量之间的联系可以用关联规则或频繁项集的形式表示。关联规则挖掘作为一种重要的数据挖掘方法,已经广泛应用于医学、金融、互联网等多个领域[4]。Agrawal等人[5]提出了最早的基于频繁项集的经典关联规则Apriori算法。发现关联规则需要经历两个步骤:①通过一种逐层搜索的迭代算法,检索出支持度不低于某一预设阈值(支持度)的频繁项集;②利用检索出的频繁项集构建出强关联规则(同时满足最小支持度和最小置信度)。

      分类任务就是确定对象属于哪个预定义的目标类。分类问题是一个普遍存在的问题,已经有大量应用,包括目标营销、性能预测、制造和医疗诊断等[6]。数据挖掘技术中比较成熟且应用广泛的分类算法有贝叶斯网络、决策树以及人工神经网络等。

      贝叶斯方法最早起源于英国数学家托马斯.贝叶斯在1763年所证明的一个关于贝叶斯的一个特例[7]。经过多位统计学家的共同努力,贝叶斯统计在20世纪50年代之后逐步建立起来,成为统计学中一个重要的组成部分[8-10]。从1763年到现在已有250多年的历史,这期间,贝叶斯统计方法有了长足的进步[11]。

      决策树模型源于人工智能领域的机器学习技术,用于实现数据的分类和预测。经过多年发展,其核心算法已经逐渐成熟,被各类智能决策系统所采纳[12]。其中的C5.0算法作为C4.5算法的商业版本,通过对生成规则及算法精确度方面予以改进,获得了更准确的生成规则、更快的运行速度以及更低的误差率[13]。决策树模型在中医证候学和诊断学[14-15]等方面的应用研究已经较为成熟。

      人工神经网络是20世纪80年代发展起来的一门由计算机、信息、工程、医学、生物学、数学、物理学等多学科交叉的边缘学科[16]。它包含输入层、输出层以及1个或几个隐含层,各层中处理数据的节点称为神经元,信息处理是由神经元之间的相互作用来实现的。脑与神经科学、人工智能、计算机科学的深度融合与相互借鉴已成为近年来科学研究领域重要的国际趋势[17]。

      本文实验数据采自早中期慢性肾衰竭患者的病案。病案内容包括患者姓名、性别、年龄、原发病、症状、体征、肾功能指标、中医证候、中药处方等。本文摘取其中的症状和证候信息进行数据挖掘的分析研究。共采集并录入病案信息223条,其中记录症状共76种,论治证候共16种。

      其中布尔值0和1表示病人是否具有这种症状或证候,0表示病人没有此症状或证候,1表示病人具有此症状或证候。

      按照上述方法建成症状和证候数据库,其中包括:包含所有症状的数据集,由专业教授诊断判别的证候数据集,统计症状和证候频次的症状和证候计数数据集以及主要症状数据集和主要证候组合数据集。

      本研究共纳入症状16种,出现频数在病案总条数10%以上的的证候有11种,分别是血瘀,脾肾气虚,湿热内蕴,脾肾阳虚,湿浊阻滞,风湿,胃气上逆,肝阳上亢,肝肾阴虚,两虚,气滞胃肠。

      本文采用Apriori算法建模,对这11种主要的证候进行关联分析。结果见表2(由于篇幅,只摘取支持度30%以上的规则显示)。

      支持度是指所有前项证候同时出现的概率,置信度是在前项证候出现的前提下,后项证候同时出现的概率。结果显示,血瘀单独出现的几率最高,达到98.21%;血瘀与脾肾气虚同时出现的几率高于60%;在此基础上,再同时伴有湿浊阻滞或湿热内蕴者均在30%左右,而两者之和则高于60%,充分表明瘀阻、湿壅与脾肾气虚为慢性肾衰竭虚实夹杂、本虚标实的主要体现。

      使用SPSS Clementine12.0中的网络图形建模,该模型可以直观的体现11种高频证候两两之间关联关系,连接两种证候之间的直线越粗,表明两种证候同时出现在一个病案中的频率越高。如图1所示。

      结合网络关系图及链接数据分析,强链接关系主要集中于血瘀、脾肾气虚、湿热内蕴、湿浊阻滞和脾肾阳虚之间。其中,位于前三位的链接关系分别为血瘀与脾肾气虚、湿热内蕴、脾肾阳虚之间,连接条数达389条,占所有连接条数的50%以上,表明血瘀为早中期慢性肾衰最重要的标候;脾肾气虚除与血瘀之外,与脾肾阳虚、湿热内蕴、湿浊阻滞之间的关系均较密切,故为本病最主要的本虚证候。

      本文使用C5.0算法构建决策树模型。统计数据库中患者症状出现的频数,从76个症状中筛选出出现次数10次以上的主要症状如畏寒、小便黄、腰酸痛、眼睑、下肢水肿、舌红、舌暗红、寒热不调、寐差、夜尿频、大便干、双目干涩、视物模糊、纳差、大便粘腻、胃脘不适、口干咽干、关节疼痛、腿胀痛、恶心、干呕、四末厥冷、咽痒咽痛咳嗽有痰、耳鸣、腹胀、口苦、舌淡、后背沉重、小便量少、小便清长、咽部异物感、潮热、乳房胀痛、齿痕舌、舌淡暗、汗出、舌淡红、皮肤瘙痒健忘、尿频、大便溏、口淡等39个。使用这些主要症状参与建模,按其出现次数降序排列。

      据前述关联规则的结果,出现频数较高的证候组合(支持度30%以上)共四个,包括:①血瘀、脾肾气虚;②血瘀、脾肾气虚、脾肾阳虚;③血瘀、脾肾气虚、湿热内蕴;④血瘀、脾肾气虚、湿浊阻滞。症状是疾病所反映的现象,它是判断病种,辨别证候的主要依据。分别对这四种高频证候组合及其对应的症状进行决策树建模,每个组合分别获得若干条症状的分类规则。组合1获得的规则集如表3。

      我们选取分类结果的规则集,这些规则集预测的结果就是证候组合为线(血瘀和脾肾气虚)共获得了8条判断规则,前7条规则都可作为组合1的有效分类规则,而第8条规则中,分类特征的属性都为0,在实际临床应用中不具备实际作用,将其忽略。组合2获得3条有效分类规则;组合3获得4条有效分类规则;组合4获得3条有效分类规则。这些有效规则都可以地的预测其对应的证候组合,构成规则的症状数量较少,可以简化诊断过程。

      不同证候组合所对应的症状规则不尽相同,基于对症状的信息熵的分析计算,提取每个组合其所对应的重要症状,结果如表4,表中症状出现的顺序按照重要性降序排列。

      表中的症状是去除冗余症状之后的结果,剔除了不重要的症状,保留的症状是对证候组合的预测有重要贡献的症状。重要度越高,表明此症状对目标证候的预测影响程度越高;反之重要度越低,表明此症状对目标证候的预测影响程度越小。

      不同证候组合所对应的预测症状不尽相同,通过分析发现,四种最常候组合均可出现畏寒的临床表现,而每一种组合用于鉴别的重要症状则主要集中侧重后背沉重、寒热不调、尿频、舌淡等临床表现。

      本文对支持率较高的四种证候组合,采用三种常见的数据挖掘分类预测算法:C5.0决策树、贝叶斯网络以及人工神经网络对症状进行分类预测,对比分类准确率如图2。

      三种分类算法中,贝叶斯网络对本数据集的分类准确率最高,在84.75%到96.41%之间。神经网络的分类准确率较低,在73.99到91.93%之间,而三种分类算法的平均准确率都达到了82%以上,准确率较为理想。

      本文首先构建了一个基于Apriori算法的模型,进行证候的关联规则挖掘,发现了在早中期慢性肾病患者中的四组高支持度证候组合,并且与中医理论较为吻合,同时也为下一步的分类与预测工作提供数据支持。

      其次针对较高支持度的四组证候组合以及患者出现的高频症状采用C5.0算法进行决策树建模,以期得一些有意义的症状规则。结果显示,这些规则集可以预测患者是否属于某种证候组合,本文选取预测类别为“真”的规则集(可预测患者确实属于某种证候组合)作为临床诊断的参考。预测类别为“假”的规则集(预测患者不属于某种证候组合)不具备临床诊断意义,所以不予讨论。同时计算出参与预测的症状的重要性,判别哪些症状对证候组合的预测结果具有重要意义,说明这些症状在临床诊断中值得关注。

      最后分别使用使用贝叶斯网络,C5.0和神经网络三种分类算法对症状进行建模,分析不同的分类算法分类预测的准确率。贝叶斯网络对四组证候组合的平均分类准确率最高为89.80%;C5.0和其非常接近,也达到88.34%,说明这两种分类算法对本数据集中证候组合的分类预测都比较可靠。神经网络的的准确率为82.85%,相较前两种算法较低,但由于中医数据集的样本数量有限且主观性较强,获得的准确率达到百分之八十以上我们就可认为是有效可行的分类预测算法。所以认为这三种算法对于症状和证候的分类预测都是可行的,且以贝叶斯网络和C5.0算法为更优,预测结果都可以作为临床诊断的参考依据。

      本文采用的算法都是数据挖掘中的经典算法,并没有对算法进行优化工作,对证候组合的提取以及症状的分类预测还需要大量的实验数据进行进一步验证,算法的准确率还需要进一步提高,这些都是需要进一步改进的地方。

      综上所述,利用多种数据挖掘算法对早中期慢性肾病的症状与证候进行逐渐深入的知识挖掘,是可行有效的,获得的高支持度证候组合以及症状的分类预测规则对于临床诊断也是有一定指导意义的。如何在算法上有更多突破,同时将更多新的算法引入到中医研究中,以期提高挖掘的效率和准确性,是我们下一步的研究方向。

      [2]孙安会,袁肇凯,夏世靖.中医证候系统生物学研究的现状和展望.[J]中华中医药,2016,31(1):200-204.

      [14]张琪,周琳,陈亮,等.决策树模型用于结核病治疗方案的分类和预判[J].中华疾病控制,2015,19(5):510-513.

      [15]陈潇雨,马利庄,胡义扬.基于决策树方法的慢性乙型肝炎中医证候分类[J].上海:中医药大学学报,2013,27(1):40-43.