APP下载

基于关联规则的古代针灸处方配穴规律研究

2012-01-26范越闫朝升李丹孙忠人

中医药信息 2012年3期
关键词:项集中风病腧穴

范越,闫朝升,李丹,孙忠人

(黑龙江中医药大学,黑龙江 哈尔滨 150040)

古代针灸文献资源记载着历代医家的医学理论与实践经验,蕴藏着丰富的、尚未发现的信息和知识,是针灸基础理论及临床研究的重要资源。如何从古代针灸文献资源中提取出具有潜在价值的有用信息,是十分必要的工作。

关联规则是一种用于表征多个变量之间相互依存与关联的描述形式。关联规则挖掘能够发现变量之间依存性和关联性,并以直观的描述形式来显示隐藏在大量数据内令人感兴趣的规律。本文利用关联规则挖掘技术,以中风病为具体案例,分析了古代针灸治疗处方的腧穴配伍规律。

1 关联规则的基本概念

1.1 事务与事务数据库

事务是指被观察对象的一定行为。如医者的诊病行为。事务数据库(又称为事务集,简记为D)是指用于存储大量事务信息的数据库。如诊病事务信息被存储到诊疗事务数据库中。事务数据库是关联规则挖掘的数据源。

1.2 项与项集

项是指一个事务的具体组成元素。如一个中医诊病事务中的每味中药或每个腧穴。项是关联规则的基本组成元素。项集是指由0或若干个项组成的集合,简记为I。k-项集是指包含k个项的项集。如若一首针灸处方包含6个腧穴,则该处方可视为6-项集。

根据上述概念,关联规则可视为一种由项集I的子集组成的、形如 A⇒B的蕴涵式,其中,A⊂I,B⊂I,且A∩B=φ。

1.3 支持度与置信度

假设关联规则A⇒B在事务集D中成立(其中,A和B是规则的前件和后件)。关联规则A⇒B的支持度(support,缩写为s)是指在事务集D中同时包含项集A和项集B的事务数与所有事务数的百分比。关联规则A⇒B的置信度(confidence,缩写为c)是在事务集D中包含项集A的事务同时又包含项集B的百分比。

根据上述概念,隐藏在大量的古代针灸处方中腧穴之间的关联规则可表示为:手三里⇒合谷(s=10%,c=74%)。

1.4 频繁项集与强规则

为了发现有意义的、令人感兴趣的关联规则,关联规则挖掘需要预先设定两个阈值,即最小支持度和最小置信度。频繁项集是指满足最小支持度的项集。强规则是指支持度和置信度分别不小于最小支持度和最小置信度的关联规则。

2 关联规则的挖掘过程

挖掘过程主要包括两个步骤:首先,从事务集中,找出满足最小支持度要求的所有频繁项集;其次,从频繁项集中,生成满足最小置信度要求的关联规则。Apriori算法[1]是一种最为经典的关联规则挖掘算法。该算法的实现过程为:首先,扫描事务集D,寻找频繁1-项集的集合L1;之后,利用L1,寻找频繁2-项集的集合L2;……;直到利用Lk-1,无法找到频繁k-项集的集合Lk为止。

3 关联规则的实现

本文利用Visual Basic 6.0可视化程序设计语言,结合Apriori算法,设计了关联规则挖掘系统,用于发现并显示古代针灸处方的配穴规律。具体实现过程如下:

1)确定原始数据源。利用系统主界面(如图1),单击【选择】按钮,连接数据挖掘所需的原始数据源。其中,原始数据源是指古代针灸处方信息数据库。本文前期工作已经依据古代针灸处方的特点[2],完成了该数据库的设计工作,并利用中风病古代针灸治疗文献数据库系统,实现了从先秦至清末(1911年以前)期间中风病古代针灸处方的存储。

图1 系统主界面

2)明确分析对象。利用【疾病】(或【症状】)按钮,选定对象。如:确定中风病的“半身不遂”主症为具体对象,即获取古代针灸治疗中风病的该主症的处方腧穴配伍规律。

3)约简目标数据。经过上述两步,初步生成了挖掘所需的目标数据。该目标数据包含了大量的原始数据。通常,治疗规律研究关注较为频繁出现的数据对象。本文提出了目标数据约简策略。该策略的基本思想在于:利用预先设定的阈值,获取腧穴使用频数不低于该阈值的原始数据,约简目标数据源,提高数据挖掘的时空消耗,保证结果质量。如:在腧穴使用频数阈值中,输入阈值(如:15),单击【确定】按钮,系统将从目标数据源中提取那些腧穴使用频数不低于15次的数据,生成新的目标数据源。

上述(1)~(3)过程用于生成关联规则挖掘所需的目标数据,即事务集D。

4)设置强规则条件。强规则条件包括最小支持度、最小置信度和规则所含的最大项数。依据上述条

基金项目:黑龙江省中医药科研项目(ZHY10-Z35)

作者简介:范越(1961-),女,编审,主要从事中医药文献研究工作。

通讯作者:闫朝升(1975-),男,副教授,主要研究方向:中医药信息数据挖掘。

收稿日期:2011-12-05

修回日期:2012-01-20

件,系统将发现那些“满足最小支持度和最小置信度的、且项数不大于最大项数”的强规则。如:强规则条件分别设定为10、35和2,单击【确定】按钮。

5)执行挖掘任务。经过上述过程之后,单击【执行】按钮,调用关联规则挖掘功能,依据强规则条件,在事务集D上,生成规则结果。

6)结果显示。在完成挖掘之后,“结果显示”界面将显示规则结果内容(包括规则的序号、前件、后件、支持计数、支持度和置信度等)。由上述操作过程可知,图2显示的挖掘结果是:古代针灸治疗中风病“半身不遂”主症的、满足腧穴使用频数条件和强规则条件的关联规则。其中,规则9:手三里⇒合谷(s=10%,c=74%)。该规则表明:针对古代针灸治疗中风病“半身不遂”主症处方数据,在腧穴使用频数不小于15次的数据集中,手三里穴和合谷穴“同时”出现的频数和频率分别为34和10%,且在包含手三里穴的处方中合谷穴出现的频率是74%。该规则是满足最小支持度(10%)和最小置信度(35%)的强规则。

图2 关联规则挖掘结果

另外,利用挖掘结果界面,可以重新设置最小支持度和最小置信度,丰富规则挖掘结果。如:最小置信度重新设置为50%,单击【确定】按钮,将获取新的强规则。

(7)结果存储。本文利用关联规则结果存储技术[3],设计了关联规则挖掘结果数据库,实现了结果数据的持久性存储,有效地避免了大量的、繁琐的“重复”操作。结果数据库包括如下关系表:

基本信息表。用于存储关联规则挖掘任务的基本特征,具体包括分析对象(疾病名称、症状名称)、目标数据约简条件(腧穴使用频数阈值)、强规则条件(最小支持度、最小置信度和规则所含最大项数)等内容。该表的具体记录值源自于主界面的相应操作结果。

规则结果表。用于存储关联规则挖掘所生成的规则结果。具体包括规则的前件、后件、支持计数、支持度和置信度。

在系统主界面中,用户单击【结果存储】按钮,系统将完成上述结果关系表的构建与数据导入。

(8)结果导出。单击【结果导出】按钮,生成Excel文件,输出规则结果数据。

[1]Agrawal R,Srikant R.Fast Algorithms for Mining Association Rules[C].In:Proceedings of the 20th International Conference on Very Large Databases,Santiago,Chile,1994,487 -499.

[2]黄涛,黄龙祥.针灸方的分类[J].上海针灸杂志,2004,23(2):34-38.

[3]闫朝升,宋立群,张承江,等.基于数据库技术的中医药信息数字化研究[J].辽宁中医杂志,2007,34(10):1936 -1938.

[4]闫朝升,刘鹏,马俊,等.中医药信息的数字化处理研究[J].中医药信息,2007,24(4):70 -71.

猜你喜欢

项集中风病腧穴
经络腧穴学腧穴定位的学习心得*
基于共现结构的频繁高效用项集挖掘算法
基于Unity3D技术的移动端数字人体腧穴仿真系统的设计与实现
缺血性中风病复发危险因素中西医的研究进展
旅途止泻按脾腧
探析古今中风病的发病机制
基于矩阵相乘的Apriori改进算法
不确定数据中的代表频繁项集近似挖掘
《腧穴主治·国家标准》中月经病的“同功穴”分析
基于混沌和替代数据法的中风病人声音分析