第30卷第12期 重庆大学学报(自然科学版) Vol.30 No.12
2007年12月 JournalofChongqingUniversity(NɑturɑlScienceEdition) Dec.2007
文章编号:1000582X(2007)12011504
基于粗集理论的一种相容决策表的学习算法
收稿日期:20070712
作者简介:李文生(1979),男,重庆大学硕士,主要从事非线性系统理论,管理科学与工程等领域的研究,
(Email)cqulws@yahoo.com。
李文生
(重庆大学 经济与工商管理学院,重庆 400030)
摘 要:基于粗集理论,针对相容系统规则,提出一种新的相容系统决策表归纳学习算法,并通过实
际例子说明该算法的有效性和可信度,与以往的相容决策表的归纳学习算法相比较,这种算法比较简
单,而且能够全面地获取规则且没有冗余。给出了具有较高可信度的规则挖掘过程。
关键词:粗集理论;相容;决策规则;归纳学习
中图分类号:TP18 文献标志码:A
机器学习近年来受到广泛关注,还没有实用化,知
识的获取主要依赖于知识工程师和专家的沟通,而归
纳学习又是这一领域中最好理解的问题。许多专家系
统需人工对不同领域专家知识进行归纳编码建立,因
而需要计算机人员和不同领域专家的紧密合作,这一
过程不仅费时,且效率低下,并且不同的应用领域需要
进行相同的枯燥乏味的工作。因此,迫切需要建立一
种归纳学习方法,能够从一个精心选取的专家决策样
本集中自动归纳和提炼决策规则。
上世纪80年代初,波兰数学家 Pawlak教授等提
出用粗集理论(RoughSetTheory)研究不完整、不精确
知识的表达、学习、归纳等方法,该理论目前主要用于
知识的约简和知识依赖性的分析,在医疗诊断、模式识
别、专家系统、机器学习、图像处理等领域获得了广泛
的应用。笔者基于粗集理论,针对相容决策表,提出相
应的归纳学习算法,并通过实例说明算法的有效性。
1 粗糙集理论基础
粗集理论的主要思想是用不可分辨关系划分知
识,用上下近似逼近描述概念,通过知识约简导出决策
或分类规则。
1.1 知识表达系统和决策系统
基于粗集理论的观点,一个知识表达系统可表示
为S=<U,A,V,f>,其中,U是对象的有限集合,U=
{χ1,χ2,…,χ};A是属性的有限集合;V=∪a∈AVa是属性
的值域集,其中 Va是属性 a∈A的值域;f是信息函
数,f:U×A→V,f(xi,a)∈Va.知识表达系统可以方便
地用数据表表示,表的行代表对象e∈U,列代表属性a
∈A,表中的数值代表着对象e对应属性a的属性值 a
(e),(a,a(e))表示对象的属性-值对,每行表示该对
象的一条信息.
1.2 不可分辨关系和上下近似
对于BA,则B在U上的不可分辨关系定义为:
ind(B)={(χ1,χ2)︱f(χ1,b)=f(χ2,b),foranybin
B},不可分辨关系也是等价关系.ind(B)把 U划分为
k个等价类χ1,χ2,…,χ,记 U# ind(B)={χ1,χ2,…,
χ},用des{Xi}表示U上的一个等价类的描述.
对任意一个对象集合 XU,X的 B下近似定义
为:B_(X)=∪{Y∈U# ind(B):YX)},X的 B上
近似定义为:B(X)=∪{Y∈U#ind(B):Y∩X≠φ}.
下近似B_(X)表示所有一定能归入 X的等价类元素
的集合,而上近似 B(X)表示所有可能归入 X的等价
类元素的集合.
1.3 简 约
在决策表中,设U
#
ind(C)=X={χ1,χ2,…,χ},
U
#
ind(D)=Y={y1,y2,…,y},则 Y的 C正域定义
为:POSc(D)=∪{C-(Xi)︱Xi∈Y},正域包含着基于
条件属性所得的等价类能够归入基于决策属性所得的
等价类的所有对象集合。Y的 C负域定义为:NEGc
(D)=U-∪{C-(Xi)︱Xi∩D≠φ},它包含着基于条
件属性所得的等价类不能够归入基于决策属性所得的
等价类的所有对象集合.D对于 C的依赖度定义为:K
(C,D)=card(POSc(D)+NEGc(D))
#
card(U),K
(C,D)反映了把对象 U划分为概念 D和 -D的分类
能力。
对于属性p∈C,如果 K(C-{p},D)=K(C,D),
则p在决策中相对于 D是冗余的,否则是不可缺少
的.而属性p在C和D中的重要度定义为:SGF(p,C,
D)=K(C,D)-K(C-{p},D).如果 C中的任意一个
属性关于D是不可缺少的,则 C关于 D是正交的;对
于BC,如果K(B,D)=K(C,D),而且 B是正交的,则
B是C的D简约,简约可以理解为在丢失信息的前提
下,可以最简单地表示决策系统的决策属性对条件属
性集的依赖和关联,记为:REDU(C,D).一般情况下,
C的D简约有多个。
2 一种相容系统规则提取
决策规则的提取是粗集理论的具体应用。采用常
用的相容决策表归纳学习方法分析实例(决策表1)说
明笔者的方法,提出其中的问题。
对于决策表1,先给出一种常用的归纳学习算法
分析[3],其过程如下:
输入:相容知识表达系统 S={U,C,D,V,f},U=
{χ1,χ2,…,χ},C={c1,c2,…,c}导师分类 y={y1,y2,
…,y};
输出:对于导师分类的每一类决策规则。
1)j=1;
2)U′=U,C′=C,B=φ,y=yj;
3)对于所有的条件属性c∈C′,B′=B∪{c},
求使maxαβ′(y)的属性 cmax;令 B′=B∪{cmax},B
=B′;
4)若B_y=φ,转5);否则B_y={χ1,χ2,…,χ},输
出确定性规则:des(χk)→des(y),k=1,2,…,r;
5)U′=U′-((U′-By)∪B_y),y=y-B-y.若
U′=φ,转6);否则令C′=C′-B,若C′≠φ,转3);
6)j=j+1,若j≤n,转2);否则结束。
为了便于叙述,现举例一个知识表达系统,如表1
所示表中,U={e1,e2,…,e},C={c1,c2,…,c},其中
C1=发烧,C2=咳嗽,C3=头痛,C4=体温,C5=听诊。
则 C1中包含 4个元素:高、中度、低和无,分别记为
c11、c12、c13和c14;C2包含3个元素:剧烈、中度、轻微,
分别记为 c21、c22和 c23;C3中包含 4个元素:强烈、中
度、轻微和无,分别记为 c31、c32、c33和 c34;C4中包含2
个元素:高和底,分别记为c41、c42;C5中包含3个元素:
干鸣音、水泡音和正常,分别记为 c51、c52和 c53;决策分
类中包含2个元素:肺炎和流感,分别记为d1和d2。
表1 决策表1
样本U
条件属性
决策
属性
(C1) (C2) (C3) (C4) (C5) (D)
e1 c14 c23 c34 c41 c52 d1
e2 c13 c23 c34 c41 c52 d1
e3 c12 c21 c32 c41 c51 d1
e4 c14 c22 c34 c41 c52 d1
e5 c13 c21 c34 c41 c52 d1
e6 c11 c21 c33 c41 c53 d2
e7 c14 c23 c31 c42 c51 d2
e8 c12 c21 c33 c41 c54 d2
e9 c11 c21 c32 c42 c51 d2
e10 c12 c22 c34 c42 c53 d2
上述归纳学习算法强调了一些突出规则(从步骤
3)可以看出),而难以得到所有的规则,且规则中存在
冗余。算法得到的规则如下
1)C5=c52→D=d1;
2)(C1=c13∨c41=C4)∧C5=c51→D=d1;
3)C5=c53→D=d2;
4)C4=c41∧C5=c51(冗余)→D=d2;
5)C1=c11∧C5=c51→D=d2;
6)C1=c14∧C5=c51(冗余)→D=d2。
为了能从决策表尽可能多地得到简单实用的规
则,提高决策水平,提出一种归纳学习算法,大致过程
如下
输入:相容知识表达系统 S={U,C,D,V,f},U=
{χ1,χ2,…,χ},C={c1,c2,…,c}导师分类 y={y1,y2,
…,y};
输出:对于导师分类的每一类决策规则。
1)C的一阶幂集T1(C)={c1,c2,…,c}
Fori=1ton
计算U
#
IND{ci}={c1i,ci2,…,c};
Forj=1tos
Fork=1tom
if(cijyk)
then
{输出规则:des(cij)→des(yk);
∥des(cij)、des(yk)分别为cij和yk的描述
ci-x←x(cij);
∥将拥有属性cij的对象存进数组ci-x。
}
611 重庆大学学报(自然科学版) 第30卷
2)C的二阶幂集T2(C)={(cr,cp)∈2U,r=1,2,
…,n-1;P=2,3,…,n;r<P}
Forr=1ton-1
{Forp=2ton
if(ci-x≠φ<‖cp-x≠φ)
then
{x∈ci-xx‖cp-x入栈X;
erase(x);
##
删除对象x
}
计算U
#
IND(c,cp)={crp1,crp2,…,crpq};
Fori=1toq
Fork=1tom
if(crpiyk)
then
{输出规则:des(crpi)→des(yk);
ci-x←x(crpi);
∥将拥有属性组合crpi的对象存进数组crp-x;
}
X出栈;
}
3)对三阶以上的幂集采用相似于2)的步骤,直到
由Ti(L),i≥3得到的规则集合为空。运用上述算法,
得到决策表1的规则如下:
1)C1=c13→D=d1;
2)C1=c11→D=d2;
3)C3=c33→D=d2;
4)C3=c31→D=d2;
5)C4=c42→D=d2;
6)C5=c52→D=d1;
7)C5=c41→D=d2;
8)C1=c14∧C2=c13→D=d1;
9)C1=c12∧C2=c13→D=d2;
10)C1=c14∧C3=c34→D=d2;
11)C1=c12∧C3=c32→D=d1;
12)C1=c12∧C3=c34→D=d2;
13)C1=c14∧C4=c41→D=d1;
14)C1=c12∧C5=c51→D=d1;
15)C1=c14∧C5=c51→D=d2;
16)C2=c23∧C3=c34→D=d1;
17)C2=c21∧C3=c34→D=d1;
18)C2=c23∧C4=c41→D=d1;
19)C2=c22∧C4=c41→D=d1;
20)C2=c23∧C5=c51→D=d2;
21)C3=c34∧C4=c41→D=d1;
22)C3=c32∧C4=c41→D=d1;
23)C4=c41∧C5=c51→D=d1。
可以看出,笔者提出的算法不仅可以得到决策表
所有的规则,而且得到的规则简单,规则没有冗余现
象。不考虑规则的冗余,常用的归纳学习方法得到的
规则集仅是本文算法得到结果的一个子集。
算法的复杂性:一般讲来,由三阶以上的幂集得到
的规则很少(决策表1三阶幂集得到的规则集为空)。
算法的时间复杂性大致为:O(m(C1n+C
2
n))=O(n2.
m),n为属性个数,m为例子个数,即算法可以以多项
式时间复杂性获得决策表的所有规则,易编程实现。
下面举例说明算法的简单性。
[例1]现在比较文献[4]和文章提出的算法取简
单的例子决策表2。
文献[4]的大致思想是:决策表的简化就是简化
决策表的条件属性。化简后的决策表在保持信息系统
决策能力的前提下,条件属性最少,这样就可以得到最
小决策规则集。决策表化简分两步:1决策表条件属
性的简化;2)消去决策规则的冗余条件属性值。在这
个过程中,要进行诸多的迭代和计算。具体的算法过
程请参考文献[4]。
表2 决策表2(检测与诊断实测数据)
U X1 X2 X3 X4 X5 y
1 0 1 1 1 1 1
2 1 1 0 1 1 1
3 1 2 1 2 2 1
4 1 2 1 0 2 1
5 1 0 1 0 0 2
6 1 1 2 0 1 2
7 2 1 1 1 1 2
8 2 1 2 0 1 2
两种方法都可以得到下列规则
1)如果(故障指示灯,不亮)且(过压指示,闪烁),
则(电源电压不正常);
2)如果(过压指示,闪烁)且(稳压输出,正常),则
(电源电压不正常);
3)如果(故障指示灯,闪烁)且(过压指示,常亮),
则(电源电压不正常);
4)如果(故障指示灯,闪烁)且(过压指示,不亮),
则(电路元件故障);
5)如果(过压指示,闪烁)且(稳压输出,高),则
(电路元件故障);
6)如果(故障指示灯,常亮)且(过压指示,闪烁),
则(电路元件故障)。
得到优化规则见表3
711第12期 李文生: 基于粗集理论的一种相容决策表的学习算法
U X1 X2 X3 y
1 0 1 × 1
2 × 1 0 1
3 1 2 × 1
4 1 0 × 2
5 × 1 2 2
6 2 1 × 2
比较两种算法,笔者的方法省去了决策表约简繁
琐的步骤,过程比较简单,对复杂的例子也是如此。
讨论:决策表的学习质量,与表中实例的质量有很
大关系。通常,决策表中会含有噪声,这样无论归纳学
习算法有多完善,得到的知识(规则)就不一定可信,
要由专家评判。笔者提出的算法,对噪声比较敏感,故
对样本的质量要求较高。在算法执行前,最好对决策
增加一个校验过程。
3 结 论
粗集理论作为一种新的分析和处理不精确和不确
定性知识的数学工具,由于其不需要预先给定某些特
征或属性的数量,可从现有的数据出发给出知识的简
化和相对简化,从决策表抽取规则是获取知识、辅助决
策的一种重要途径。运用粗糙集理论,对相容决策表
进行分析,提出了相应的发现算法。笔者采用的算法
简单,能够归纳出比较简洁、没有冗余的规则。而且最
重要的是,发现的规则比较全面,可以得到较高可信度
的规则。随着数据的动态变化,原有规则可能失效或
部分失效。若用原有算法重新导出新规则十分麻烦,
而基于动态数据的更新知识算法是对原有规则进行修
正,从而得出基于新数据的规则。知识的动态获取是
知识发现的难点,目前基于动态数据的更新知识算法
还不多见,需进一步研究。
参考文献:
[1]PAWLAKZ.Roughsets[J].InternationalJournalofComputer
andInformationSciences,1982,11:341356.
[2]PAWLAKZ.RoughSets[J].CommunicationofTheACM,
1995,38(11):8991
[3]曾黄麟.粗集理论及其应用[M].重庆:重庆大学出版社,
1998.
[4]李岩.基于粗集理论的规则知识获取[J].兵工自动化
网络信息技术,2003,22(3):2426.
[5]QUINLANJR.Inductionofdecisiontrees[J].Machine
Learning,1986,1(1):81106.
[6]HONGJR.AE1:Anextensionmatrixapproximatemethodfor
thegeneralcoveringproblem [J].InternationalJournalof
ComputerandInformationScience,1985,14(6):421437.
[7]BRODLEYCE,UTGOFFPE.Multivariatedecisiontrees[J].
MachineLearning,1995,19:4577.
[8]PAWLAKZ.RoughSetsTheoreticalAspectsofReasoning
AboutData[M].Dordrecht:KluwerAcademicPublishers,
1991.
AKindofCompatibilityDecisionmakingListLearning
MeansBasedonRoughSets
LIWensheng
(CollegeofEconomicsandBusinessAdministration,ChongqingUniversity,Chongqing400030,P.R.China)
Abstract:ThepaperintroducesbasicconceptofRoughSetTheory.Thecompatibilitydecisionmakinglistinductive
learningisanimportantfieldinwheretheroughsettheoryisused,Baseontoconsistentdecisionmakinglist,lodginga
newkindofdeducemeans.Anexampleillustratestheefficiencyofthosemethods.Contrasttooldmeans,themeansis
moreeasy,itcangaincompletelyrulesandnoanyredundancy.Moreover,isintroducedthestudyofincompatibility
decisionmakinglist,concludingtherulediggingprocessishighcredibility.
Keywords:roughsets;compatibility;decisionmakingrule;inductivelearning
(编辑 张小强)
811 重庆大学学报(自然科学版) 第30卷
CDZK200712 115
CDZK200712 116
CDZK200712 117
CDZK200712 118