基于相似矩阵折半属性约简算法.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基于相似矩阵折半属性约简算法

基于相似矩阵折半属性约简算法   摘 要 针对大多数属性约简算法时间复杂度比较高的问题,利用粗糙集理论提出了一种新的解决办法,该方法基于相似矩阵概念,利用属性在相似矩阵中出现的频率给出了属性重要性的计算公式,以此作为启发式知识来约间决策表中的冗余属性,并将折半查询的思想运用到算法中以加快约简的速度。实验表明该算法是简单有效的。   关键词 粗糙集;相似矩阵;折半属性约简   中图分类号:TP18 文献标识码:A 文章编号:1671-7597(2013)16-0051-01   粗糙集理论是一种能有效地分析不精确、不一致、不完整等各种不完备信息、揭示潜在规律的处理不确定性和模糊性数据的工具。属性约简是粗糙集理论研究的核心内容之一,到目前为止,已经提出了多种改进型的属性约简算法。   本文提出了一种新的属性约简算法,在文中给出了相似矩阵的定义,从另一个角度来计算属性的重要性,并且将折半查找的思想运用到算法中,加快了筛选候选属性的速度。   1 基于相似矩阵的折半属性约简算法   1.1 算法的基本思想   可辨识矩阵主要是从对象与对象之间的差别来研究属性约简。   1.1.1 相似矩阵的定义   cij= {a∈C | xi(a)=xj(a)},xi(d)≠xj(d);   cij=|,其他   Cij代表两个对象之间的相似点,也就是不能辨别对象的属性集。根据相似矩阵的定义,得到下面的结论:属性在相似矩阵中出现的次数越多,在相似矩阵中的项长度越短,则代表该属性在反映对象相似性上起的作用越大,因此在区别对象时,重要性就越小。根据上述观点,本文基于相似矩阵的属性频率给出了属性重要性的计算公式:   F(a)= -   其中,当a时,=0;否则=1。card()表示包含属性的个数。   推论1:当且仅当card()=card(c)-1时,C-属于核属性。   1.1.2 折半约简概述   现在很多约简算法都是从R=核(core(c))开始,判断R是否为一个约简,是则终止,否则根据属性的重要性定义,将重要性最大的一个加入到R中,再次测试是否为约简,若是则终止,否则,继续上述过程。   1.2 算法过程描述   本文提出具体过程描述:   输入:一致决策表S=(U,C∪D,V,F),其中C = {a1,a2,…,an}   输出:决策表的约简集合R   Step 1:决策表S转换为相应的相似矩阵M,求出核属性core(C),并计算剩余属性的属性重要度,然后将剩余属性根据重要度由大到小进行排序,放进数组Z.   Step 2:初试化R=core(c),如果=,则执行步骤step4,否则执行步骤step3。   Step 3:初试化min=1;max=card(C)-card(core(C))   while(true){   Tempt=R; //保存改变前的R   Mid=min+max/2;   将数组z中第min个到第mid个加入到R中, 计算;   If(){   If(max-mid=1){   ① 将数组z中第max个加入R中;   ② 退出循环; //退出位置一   }   else {   min=mid+1;   } }   Else if(=){   If(max-mid=1){   ③ 退出循环;//退出位置二   }   Else{   ④ max=mid;   R=tempt; //将R还原为本次改变前的状态   }}}   Step4:程序结束,R就是要求的约简。   1.3 算法时间复杂度分析   该算法step1所需的时间复杂度为O(|C|*|U?|*|U|),进入是step2后,关键的步骤是求取属性的近似精度,求取近似精度的时间复杂度为O(|u|*|u|*|u|)。由于采用了折半查找的思想,使得在最坏的情况下,不需要遍历整个条件属性集,只需遍历log|C|次,故时间复杂度为O(log|C|*|u|*|u|*|u|)。   2 算法实例分析   给定一致信息表S=(U,A,V,F),其中U={x1,x2,x3,x4,x5,x6,x7,x8,x9,x10},A = {a,b,c,d,e,f,g,h},其中条件属性C={a,b,c,d,e,f,g},决策属性D={h},由表1给出。   首先执行step1与step2,得到相似矩阵,并求出核属性core(C)={A},及C/core(C)属性的重要性,得到:f(b)、f(c)、f(d)、f(e)、f(f)、f(g),将候选属性按重要性的定义由到大到小排序放进数组Z.={a,b,e,f,d,c,g},直至max-mid=1,则将第max个加入到R中,退出循环,R={a

文档评论(0)

189****7685 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档