欢迎来到天天文库
浏览记录
ID:34523976
大小:193.67 KB
页数:5页
时间:2019-03-07
《一种基于rough集的数据约简方法》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、第20卷第3期宁波大学学报(理工版)Vol.20No.32007年9月JOURNALOFNINGBOUNIVERSITY(NSEE)Sept.2007文章编号:1001-5132(2007)03-0350-05一种基于Rough集的数据约简方法刘财辉(赣南师范学院数学与计算机科学学院,江西赣州341000)摘要:在对Pawlak的属性约简数据分析方法和Skowron的分明矩阵方法进行深入研究后,通过引入排斥矩阵提出了一种新的数据约简方法,经过实践证明这种方法在对决策表进行数据约简时可以和Pawlak
2、的属性约简数据分析方法取得同样的效果.关键词:Rough集;约简;核;排斥矩阵中图分类号:TP18文献标识码:ARough集理论是20世纪80年代初波兰科学家的每一项c定义如下:ijPawlakZ提出的一种新的处理不精确、不完全数据⎧φ,若,ij=即是同一个个体,⎪⎪0(,若,∀∈aCdada有,)⊕()=0的数学方法,知识约简是Rough集理论的核心内容ij⎪[1,2]caa=⎨,若,∃∈!(Cd使得ad)⊕(aa)=,之一.经典的数据约简方法有Pawlak的属性约ijij⎪[1,2][3]∞,若
3、,∃∈≠abCab(),使得da()⊕简数据分析方法,Skowron的分明矩阵方法等.⎪i⎪daadbdbb()=⊕,且()().=本文提出了我们称之为排斥矩阵的约简方法.⎩jij定义3设SUACD=(,,,)是一个信息系统,1排斥矩阵及相关定义U是论域,C是条件属性集合,D是决策属性集合,CD∪=A且CD∩=φ,V是所有属性值的定义1对于TUA=(,,,CD)上2条决策规则集合,则称矩阵Wd=[]ijnn×为决策排斥矩阵,W中ddXY,,若∀∈aA,有dadaXY()=(),则daX()⊕的每一项
4、dij定义如下:⎧∀∈⎪0(,,aDdada有,)⊕()=0da()0=,否则dadaa()⊕=(),其中da()⊕ijYXYXd=⎨ij⎪1(,,∃aD∈⊕使得dadaa)()=.da()0=表示这2条决策规则的属性值是完全相⎩ijY同的,dadaa()⊕=()表示这2条决策规则的属XY性值对属性a是相异的.2排斥矩阵在决策表约简中的应用定义2设SUACD=(,,,)是一个信息系统,U是论域,C是条件属性集合,D是决策属性集决策表的约简一般可分为属性约简和属性值[1]合,CD∪=A且CD∩=φ,V
5、是所有属性值的约简,下面就讨论如何应用排斥矩阵对决策表进集合,则称矩阵Wc=[]为条件排斥矩阵,W中行约简.首先给出我们的算法描述,然后详细介绍.ijnn×收稿日期:2006-12-25.宁波大学学报(理工版)网址:http://3xb.nbu.edu.cn基金项目:江西省自然科学基金项目(Z01416).作者简介:刘财辉(1979-),男,江西于都人,硕士/讲师,主要研究方向:Rough集理论及其应用.email:liucaihui@gnnu.edu.cn第3期刘财辉:一种基于Rough集的数据约
6、简方法351算法利用排斥矩阵对决策表约简.}输入:决策表TReturn(C[i][j]和D[i][j])输出:经过属性和属性值约简的决策表T’}main()}/*Setup()定义结束*/{DividTable(T);/*属性约简开始*/例1设有决策表见表1,其中a,,bc为条件CountCore(所有的属性组);属性,d,e是决策属性,则建立其条件排斥矩阵和CountReduct();/*属性约简结束*/决策排斥矩阵,见表2和表3.Reduct();/*属性值的约简*/表1决策表UabcdeRet
7、urn(经过属性和属性值约简的决策表T’)u110210}u200121算法步骤可简单描述为:首先,通过对输入的u320210u400222决策表计算排斥矩阵,把决策表划分成为2个子u511210表:一致决策表和不一致决策表.然后计算决策表表2条件排斥矩阵的核集,进行属性约简.最后对经过属性约简的决Uu1u2u3u4u5u1φ∞aab策表计算排斥矩阵,进行属性值的约简.u2∞φ∞c∞以下是算法的详细论述.u3a∞φa∞Step1:根据给定决策表建立排斥矩阵.u4acaφ∞u5b∞∞∞φ输入:决策表表
8、3决策排斥矩阵输出:相应的排斥矩阵Uu1u2u3u4u5Setup(含有n个个体的决策表)/*Setup()定u101010u210111义开始*/u301010{inti,j,D[n][n];charC[n][n];/*C[n][n]是u411101定义中的c,D[n][n]是定义中的d*/u501010ijijfor(i=1;i<=n;i++)/*对C[n][n]step2:对给定决策表进行一致性判断,将不一和D[n][n]赋初值*/致决策表划分2个子表.for(
此文档下载收益归作者所有