一种基于互信息的规则约简方法.docVIP

  • 15
  • 0
  • 约3.07千字
  • 约 2页
  • 2017-05-06 发布于广东
  • 举报
一种基于互信息的规则约简方法.doc

  一种基于互信息的规则约简方法 摘 要 粗糙集 理论 的主要 应用 是属性约简和规则提取,但由于应用粗糙集理论提取出的规则未必都是最佳规则,因此,本文提出一种基于互信息的规则约简 方法 。对确定性规则进行优化,挖掘出最简规则集,最后通过实例 分析 验证了该方法可行性和有效性。 关键词 粗糙集;信息熵;互信息1 引言 粗糙集理论[1]是由波兰学者Z. Pa}) 相对于知识(属性集合) U/ind(X)={ X1,X2,…,Xn}的条件熵:H(Y | X) 定义为: 定义7 互信息:设T = lt; U,R,V,f gt; 是一个决策表系统,其中R = C∪D,C 是条件属性集合,D = {d}是决策属性集合,且A C,对于任意属性a∈C P A的重要性定义为:SGF(a,A,D) = H(D| A) - H(D| A∪{a}) 。若A =Φ,则:SGF(a,A,D)=SGF(a,D) = H(D) - H(D| {a}),称为属性a 和决策D的互信息,记为I (a,D)。3 基于信息熵的规则约简 在信息表中,由于应用粗糙集理论提取的规则未必都是最简规则,即规则中可能存在某个属性值是不必要的,因此规则约简。由于在决策表中可以通过添加某个属性所引起互信息的变化大小作为该属性重要性的度量,互信息SGF(a,A,D) 值越大,说明在已知A 的条件下,属性a 对于决策D 就越重要。因此,基于论域上的不可分辨关系和信息熵的知识可以对确定性规则约简。 其方法如下: Step1:利用互信息公式计算约简中各属性的互信息,将结果值按降序排列。 Step2:对约简中每个属性(按互信息降序顺序)依次逐行考察确定性规则集中每条规则,若抽取到的规则与其后的规则产生冲突,则将发生冲突规则的该属性值标记为1,若产生重复记录,则将对应规则中的该属性值标记为3,既不产生冲突也不产生重复的规则的属性值标记为2。 Step3:对规则集中的规则进行逐行考察,首先判断是否能由属性值标记为1的属性做出正确决策,若不能将属性值标记为2的属性添加进来,若仍不能得出正确决策,则按互信息的大小依次把属性值标记为3的属性添加进来,直到做出正确决策为止,并将做出正确决策的对应的当前规则保存到新的规则集中。 Step4:将规则集中能利用step3得出的当前规则做出正确判断的规则删除。 Step5:如此循环直到规则集中规则为空为止,新规则集就是进行规则约简后的最优规则集。4 实例分析 设论域U={1,2,3,4,5,6,7,8 },条件属性集合C={ Solar energy,Volcanic activity,Residual CO2},决策属性D为Temperature,决策信息表如表1所示。决策信息表1[5]Fact countSolar energyVolcanic activityResidual CO2TemperatureDays1MediumHighLoLoHigh706MediumLo. 1) 计算 C的D约简 得到C0={solar,volcanic}是C的D约简。 2)提取规则: (1)通过计算决策属性等价类相对于 U/ C0 的下近似,得到不确定性规则。 ① (Solar Energy,medium) (Volcanic Activity,high) → (Temperature,high) /1; ② (Solar Energy,high) (Volcanic Activity,high) → (Temperature,high) /2,5; ③ (Solar Energy,high) (Volcanic Activity,loperature,high) /7; ④ (Solar Energy,loperature,loperature,loedium) (Volcanic Activity,loperature,high);/3 ② (Solar Energy,medium) (Volcanic Activity,loperature,loperature的信息熵 约简属性solar,volcanic的互信息: H(D)=-1* (130/270 * log2(130/270)+140/270* log2(140/270)) =0.999属性Solar Energy的条件熵: H(D|C1)=-1 * (110/270) * ( 110/110)* log2(110/110) -1 * (20/270)* 20/20* log2(20/20) -1*(140/270)*(140/140) * log2(140/140) =0属性Volcanic Activity的条件熵: H(D|C2)=-1 * 140/270 * (120/140 * log2(12

文档评论(0)

1亿VIP精品文档

相关文档