APP下载

基于改进FP_Growth算法的中药方剂配伍规律挖掘研究

2011-10-16

赤峰学院学报·自然科学版 2011年9期
关键词:方剂事务数据挖掘

董 辉

(1.合肥工业大学,安徽 合肥 230001;2.亳州职业技术学院,安徽 亳州 236800)

基于改进FP_Growth算法的中药方剂配伍规律挖掘研究

董 辉1,2

(1.合肥工业大学,安徽 合肥 230001;2.亳州职业技术学院,安徽 亳州 236800)

中药方剂即中药复方,在中医药科学中占有举足轻重的地位,我国已积累中药方剂达十余万首,而如何利用这一巨大的方剂库,开发研制新的安全有效地方剂,是一亟待解决的问题.数据挖掘技术的出现及利用这一技术对中药方剂配伍规律进行发掘,既能大力推动了我国中医信息化建设,又可快速发现隐含在方剂库中的重要的知识,也能为中医学走向世界提供强有力的技术支持,因此对中药方剂进行数据挖掘不仅是有必要的,更具有实际意义.

数据挖掘;关联规则;中药方剂;FP-Growth算法

中医药学经数千年发展与实践,已形成完整的医疗体系,作为中医药科学核心部分的中药方剂有十多万首,是我国中医药实践经验和智慧的结晶,载录了中药组方用药的原理、规则和经验技巧,也包含已知和未知的方剂配伍规律,另外中药方剂的本质特征如整体性、辩证性、动态性等过于抽象,有时也定量和具体的把握,所有这些都需我们继续研究探索.数据挖掘技术的发展与成熟,为我们研究中药方剂配伍规律等方面提供强大的技术支持,发挥日益重要的作用.关联规则挖掘是数据挖掘非常重要一种类型,FP-Growth算法是实现关联规则挖掘经典算法,本文在分析此算法的基础上,提出FP-Growth是法改进,并用这一算法对中药方剂配伍规律进行分析挖掘,希望为我国中医药发展和方剂应用提供一定参考.

1 关联规则数据挖掘

1.1 关联规则挖掘

数据挖掘是近30年来逐步发展起来的一个新的研究领域,是多学科和技术相结合的产物,被广泛的应用于政府决策、企业经营、科学探讨和医学研究等各个领域,为促进社会各方面的发展发挥重要的作用.关联规则挖掘作为数据挖掘的众多知识类型中最为典型的一种,在医学领域有着广泛的应用.

关联规则用于表示OLTP数据库中诸多属性(项集)之间的关联程度,是利用数据库中的大量数据通过关联算法寻找属性间的相关性.关联规则挖掘的问题描述如下:

设 I={I1,I2,…,Im}是数据项的集合,D={T1,T2,…,Tn}是一个事务数据库,其中每个事务T是数据项集I的子集即TI,每个事务T有一个标识符TID与之相关.如果I的一个子集X满足XT,则称事务T包含项目集X.一个关联规则就是形如 X=>Y的蕴涵式,XI、YI、X∩Y=Φ.其意义在于一个事务中某些项的出现,可推导出另一些项在同一事务中也出现,此处,“=>”称为“关联”操作,X称为关联规则的先决条件,Y称为关联规则的结果.例如:中药方剂配伍中,使用中药A的的方剂,必然有90%以上会同时使用中药B,则可用关联规则R表示为:R:A=>B.支持度(Support)和置信度(Confidence)是关联规则中重要的概念,支持度(Support)是形如在方剂中同时使用中药A和中药B的方剂数占总方剂数的百分比;而置信度(Confidence)是形如同时所有中药A和B的方剂数占使用中药A的方剂数的百分比称为规则的置信度.前者用于衡量关联规则在整个数据集中的统计重要性,后者用于衡量关联规则的可信程度,他们的公式分别式(1)和式(2):

在实际应用中,支持度和置信度均较高的关联才可作为有用的关联规则,称之为最小支持度阈值(min_sup)和最小置信度阈值(min_conf),min_sup表示数据项在统计意义下的最低重要性,只有满足min_sup的数据项集才在关联规则中出现,称之为频繁项集;最小置信度则表示关联规则的最低可靠度.满足大于min_sup和min_conf的规则称为强规则,关联规则挖掘的任务就是发现所有频繁项集,挖掘出事务数据库D中所有的强规则.

1.2 FP-Growth算法改进

FP-Growth算法是韩家玮等人提出的基于FP-Tree增长树的著名算法,该算法在不产生候选集的情况下,提供了良好的频繁模式挖掘过程,性能比Apriori算法有所提高.但FP-Growth算法随着递归调用的深入,产生的条件FP-Tree越来越多,特别是在有共享前缀的情况下,FP-Growth算法非常耗时,为了解决这一问题,本文提出对FP-Growth算法的改进,命为FP-growth*算法.

FP-Growth*算法的思想是:减少搜索共享前缀的时间达到减少生成FP-Tree的时间,以提高了挖掘效率,即在存在共享前缀的条件下,遍历节点的第一个子女节点就发现共享前缀.其挖掘步骤如下:

(1)频繁1-项集排序:描事务数据库D一次,生成频繁1-项集及每个频繁项集的支持度,按支持度降序排序,结果为L;

(2)事务项重排序:按照频繁项表L的次序对事务数据库项排序,生成事务数据库D1;

(3)事务集再排序:按照L的次序对D1的整个数据集再排序,即先对事务集的首列按L的次序排序,之后在此基础上对事务集的次列再按L的次序排序,依次类推到数据集的终列得到排序数据集D2;

(4)构造FP-Tree条件:创建以“null”为标记的根节点,扫描D2,对其中每个事务调用insert_tree(P,T)过程,生成FP-Tree.

(5)挖掘FP-Tree:递归调用FP-Growth算法,挖掘FP-Tree,得到频繁项集.

1.3 FP-growth*算法实验分析

在相同的计算机软硬件系统中,随着数据集数目的增加,改进后的算法生成FP-Tree时间明显的减少,效率较高.根据实验分析,当数据集数目较大时,采用FP-growth*算法挖掘效率提高20%左右,如图1所示:

图1 FP-growth*与FP-Growth算法生成FP-tree比较

2 中药方剂数据挖掘现状

当前,回归自然健康生活是一种潮流,中医药作为天然药物的典型代表,具有广阔的发展前景.经过几千年的发展,中药方剂达数十余万首,信息量巨大,利用价值极高,早期由于缺乏科学的信息处理技术,对这一资源难以进行系统深入地研究开发,致使很多方剂长期处于沉睡状态.近年来,由于数据库技术的发展,一些科研机构和高校建成若干中医药相关中大型数据库,初步满足了中医药界文献检索的需要,也为建立中药方剂数据挖掘系统提供庞大的数据支持:如国家中医药管理局的“中国中医药信息网”,建成“中药基础数据库”、“现代方剂数据库”等一批中医药信息库,为国内外用户提供全面、方便、快捷的信息查询服务.此外其他科研机构及高校也研制出数十种中药方剂的相关数据库或电子型工具:如中国中医药信息研究所的“中医药数据库检索系统”、北京中医药大学的“中药方剂数据库”、上海市中医中药数据中心“中医方剂数据库”等.

中医药数据挖掘领域,已有不少专家学者对中医方剂从不同的角度进行研究,取得不菲的成就.其中北京中医药大学乔延江教授带领团队在中药数据挖掘多个领域研究和探讨,在中药方剂配伍规律、中药方剂再优化研究、中药新剂型研究等诸多方面都做出了大量的贡献;浙江大学以吴朝晖教授为首的CCNT实验室,展开中医药数据挖掘的深入研究,重点是探索药物高频组配和中药聚类的问题,并完成了中医药数字化的基础设施的建设,同时与多所高校联合搭建了中医药科技数据库群和具有17个分中心的分布式数据库综合访问平台;其他更多的科技工作者,也在做中医药数据挖掘方面的探讨.我们有理由相信,随着技术的进步,中医药数据挖掘方面将会取得更多的研究成果,推动中医药领域信息化水平上升到一个新的台阶.

3 FP-Growth算在中药方剂配伍规律挖掘研究

面对十多万首中药方剂,本文选择脾胃方剂作为关联挖掘数据的来源,文中所有方剂均来自华佗中医院临床方剂和上海市中医中药数据中心《中医方剂数据库》.作为神医华佗的故里,亳州自古就有“小黄城外芍药花,十里五里生朝霞”之美誉,是闻名于世的中药材种植和加工集散地,被收录到《药典》地产药材就有毫芍、毫菊、毫桑皮和毫花粉,如今亳州药材品种已发展到数百种,种植面积达100万亩,被誉为“中华药都”,大量的中医药资源为中药方剂的发展提供了天然条件,华佗中医院拥有大量的临床方剂;上海中医中药数据中心的“中医方剂数据库”收录了中药处方达19万个,摘录了文献中包含的方剂,数据项包括了方剂名、组成、剂量、主治等信息.

3.1 中药方剂的数据处理

现有方剂库的原始数据表述不规范,必须把方剂中描述性语言进行信息转化、分解为计算机能够处理的数据信息,使之标准和规范,实现方剂数据在计算机系统内的能正确表达和合理组织.用计算机数据来表达,不仅有助于对数据的深入分析及运算,更是实现数据规范化和标准化的重要方式.本文数据预处理方式如下:

3.1.1 规范化数据:目的是把语义含糊、表达不规范概念词进行规范处理,把一词多义单义化,把多词一义单词化,多概念组合词语拆分表达.

如眩晕,是指天旋地转,头晕等症状,要与单纯的头昏眼花、晕血、晕车等相区别;如发热、大热、夜热等,均作发热单一概念处理;如“清热凉血”、“清热燥湿”、“清热化痰”,拆分为:清热、凉血、燥湿、化痰4个概念词表达.

3.1.2 结构化数据:目的是把方剂原始数据进行合理细化和组织,以达到符合数据挖掘要求,来实现重点概念有序排列及数据间关联结构的形成.

方剂数据具有多种关联,如药药之间、药症之间、功效主治之间等,“证、药、方”是核心,“药”是核心中的重点要素,它们的关系是:对“证”选“药”配“方”.“证”由证候集组成的,“药”含有性味、量等分别,“方”有复杂的组配关系及加减方问题.

3.1.3 数字化数据:数字比较容易表示出数据间的结构和相互的关系,而其他文字或符号描述的数据却不易做到,因此尽可能用数字代替包含有某种知识的文字或符号.如剂量以克为单位的数字来描述,中药性味、毒力等也采用数字来表示.如平性取值0则偏性相应取值如图2:

图2 数据的数字化表示

3.2 基于FP-Growth*算法挖掘中药方剂配伍规律

在所收集的338首脾胃方中筛选出症状频数大于25的共106首,把每首方剂认为是一事务并有标志码TID,分别为:T001、T002、…、T106,方剂的每味中药编码为 Ii(i=1,2,3……).

所收集的脾胃方剂及其成分,部分如下:

二陈汤加味 (T001):白术 甘草 陈皮 厚朴 茯苓半夏 苏梗

四君子汤(T002):白术 甘草 人参 茯苓

香砂六君子汤(T003):白术 甘草 人参 陈皮 茯苓木香 半夏 砂仁 姜

芩连平胃汤 (T004):甘草 陈皮 厚朴 黄芩 黄连苍术

藿香扶脾饮 (T005):甘草 陈皮 木香 厚朴 半夏藿香 麦芽

实脾饮(T006):白术 甘草 厚朴 茯苓 木香 木瓜草果 槟榔 姜 制附子 大枣

归脾汤(T007):白术 甘草 人参 木香 茯苓 当归黄芪 远志 龙眼肉 酸枣仁

异功散(T008):白术 甘草 陈皮 人参 茯苓

理中丸(T009):白术 甘草 人参 姜

保元汤(T010):白术 人参 当归 桂枝 黄芪 生附子

……

方剂的主要中药编码如下:

白术 I1、甘草 I2、陈皮 I3、人参 I4、厚朴 I5、木香I6、茯苓 I7、党参 I8、半夏 I9、当归 I10、获荃 I11、白芍 I12、姜 I13、拣参 I14、苏梗 I15、砂仁 I16、杏仁I17、黄连 I18、黄芪 I19、肉桂 I20、大枣 I21、远志I22、山药I23、扁豆I24 龙葵I25、半边莲I26、豆蔻仁I27、吴茱萸I28、黑附子I29、苍术I30、肉豆蔻I31、木瓜 I32、草果 I33、制附子 I34、龙眼肉 I35、酸枣仁 I36、藿香 I37、拣参 I38、黄芩 I39、I40、桂枝I41、生附子 I42……

建立脾胃剂事务数据库(部分)D如图3:

图3 事务数据库D(部分)

根据事务数据库D:构造FP-tree树(因限于篇幅,FP-Tree略去),同时用中药的在方剂中出现的频率对应支持度,设最小为30,运用FP-growth改进算法,通过建立条件模式库得到频繁集,挖掘所有频繁项集,发现脾胃方剂配伍规律如下:

3.2.1 方剂核心药:

甘草(97)、陈皮(92)、白术(93)、人参(78)、厚朴(56)、木香(48)、当归(36),此7味中药在方剂中出现频率远高于其它药物,而且还可得出这几味药是构成:四君子汤、异功散及香砂六君汤的主药,即是脾胃方剂的主药.

3.2.2 方剂结构:

经以上分析,结果证明,脾胃方方剂看似复杂,其实有着基本结构:

以四君子汤为代表的补气健脾方剂是最基本的用方;其次是补气药+理气药配伍的方剂,如香砂六君子汤、异功散等方剂;补气药十理气药十化疾药(或化湿药)配伍的方剂,如参苓白术散、六君子汤等方剂;补气药十温里药配伍的方剂,如保元汤、理中丸等方剂.

4 总结与展望

本文回顾了关联规则挖掘知识,在分析FP-Growth关联算法的基础上提出改进算法,并用之于中药方剂数据挖掘,以求发现脾胃方剂遣方组药的一些规律,这仅是本人把数据挖掘在应用于方剂配伍规律挖掘的初步探索,希望能为为广大的中医医务人员提供参考.

随着信息技术的发展,数据挖掘技术将成为促进中医药研发和现代化的重要工具,具有广阔的发展前景,构建面向方剂配伍知识发现的综合数据挖掘支持系统必将是是方剂配伍规律研究的努力方向,在拓展中医药的生存空间方面将会产生巨大的推动作用!

〔1〕Jiawei Han,Micheline Kamber. 数据挖掘: 概念与技术[M].北京:机械工业出版社,2007.

〔2〕朱明.数据挖掘[M].合肥:中国科技大学出版社,2008.

〔3〕Pang-Ning Tan,Michael Steinbach,Vipin Kumer.数据挖掘导论[M].北京:人民邮电出版社,2007.

〔4〕丛丹,王俊普,等.基于 FP-tree的模式分解算法[J].计算机工程,2005,31(16):77-79.

〔5〕周忠眉.中医方剂数据挖掘模式和算法研究[D].杭州:浙江大学,2006.

〔6〕朱金伟.数据挖掘算法及其在中药配方系统中的应用研究[D].常州:江苏大学,2006.

〔7〕瞿融.方剂学[M].上海:上海中医药大学出版社,2008.

〔8〕蒋永光,等.中医脾胃方配伍规律的数据挖掘试验[J].世界科学技术,2003Vol.5No3:33-37.

TP391.1

A

1673-260X(2011)09-0198-03

安徽省教育厅科研资助项目(KJ2011Z259)

猜你喜欢

方剂事务数据挖掘
基于分布式事务的门架数据处理系统设计与实现
中药方剂在治疗黄褐斑中的应用
探讨人工智能与数据挖掘发展趋势
《金匮要略》黄芪类方剂探析
河湖事务
论方剂的配伍环境
基于并行计算的大数据挖掘在电网中的应用
甘草在方剂中的作用及配伍规律
一种基于Hadoop的大数据挖掘云服务及应用
基于GPGPU的离散数据挖掘研究