聊一聊粗糙集

Posted gedanke

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了聊一聊粗糙集相关的知识,希望对你有一定的参考价值。

本节我们将继续介绍粗糙集有关的概念。


上节我们介绍了知识粒度的矩阵表示形式,本节将介绍基于知识粒度属性约简定义和算法。

基于粗糙特征选择算法亦称为属性约简,其旨在保持数据集分类能力不变的前提下,通过约简冗余属性,最后得到问题的决策或分类规则。

相关定义

设决策信息系统(S=(U,A=C igcup D,V,f))(B subseteq C),如果(B)(S)的最小属性约简,则:
[ GP_{U}(D mid B)=GP_{U}(Dmid C) ]

[ forall a in B,quad GP_{U}(D mid B -{a}) ot= GP_{U}(D mid B) ]

第一个式子保证了约简集(B)有着与全体条件属性集(C)相同的划分能力;而第二个条件保证了约简集(B)内没有冗余属性。

近似分类精度的定义如下:
设决策信息系统(S=(U,A=C igcup D,V,f))(forall X subseteq U)(R)是一个等价关系,则集合(X)关于等价关系(R)的近似分类精度为:
[ alpha_{R}(X)=frac{|underline{R}X|}{|overline{R}X|} ]

其粗糙度为:
[ ho_{R}(X)=1-alpha_{R}(X) ]

近似分类质量的定义如下:
设决策信息系统(S=(U,A=C igcup D,V,f))(forall X subseteq U)(R)是一个等价关系,则集合(X)关于等价关系(R)的近似分类质量为:
[ gamma_{R}(X) =frac{|underline{R}X|}{|U|} ]
或者说
决策信息系统(S=(U,A=C igcup D,V,f))(forall X subseteq U)(R={X_{1},X_{2},...,X_{m}})是论域(U)的一个划分,将(R)的上近似和下近似分别定义为:
[ overline{R}X={overline{R}X_{1},overline{R}X_{2},...,overline{R}X_{m} } ]

[ underline{R}X={underline{R}X_{1},underline{R}X_{2},...,underline{R}X_{m} } ]

(R)的近似分类精度:
[ alpha_{R}(X)=frac{sum^{m}_{i=1}|underline{R}X_{i}|}{sum_{i=1}^{m}|overline{R}X_{i} |} ]

近似分类质量:
[ gamma_{R}(X) =frac{sum_{i=1}^{m}|underline{R}X_{i}|}{|U|} ]

特别地,若等价关系(R)是被决策属性集(D)划分的,(U/D={X_{1},X_{2},...,X_{m} })(forall X subseteq U),则(D)的近似分类精度为:
[ alpha_{R}(D)=frac{POS_{R}(D)} {sum_{i=1}^{m}|overline{R}X_{i} |} ]

近似分类质量:
[ gamma_{R}(D) =frac{POS_{R}(D)}{|U|} ]

对于这种情况,我们先看一个例子,若
[ U/D={X_1,X_2 }={{e_{1},e_{4},e_{5},e_{8}},{e_2,e_3,e_6,e_7 } } ]

考虑论域(U)对条件属性集(C)划分的等价关系(R)
[ U/C={{e_1},{e_2},{e_3},{e_4},{e_5,e_7},{e_6,e_8} } ]

下近似:
[ underline{R}X_1={e_1,e_4} ]

[ underline{R}X_2={e_2,e_3 } ]

近似分类质量:
[ gamma_{R}(D)=frac{|underline{R}X_1|+|underline{R}X_2|}{|U|}=frac{4}{8}=frac{1}{2} ]

再来看之前的一个例子
(S=(U,A=C igcup D,V,f))是一个决策信息系统,考虑条件属性(C)对论域(U)划分的等价关系(R)(U/C={{e_{3},e_{6} },{e_{2},e_{5} },{e_{1},e_{4} } }),集合(X={e_{1},e_{2},e_{4}}),显然(X)是一个粗糙集,则:
[ underline{R}X={e_{1},e_{4}} quad overline{R}X={e_{1},e_{2},e_{4},e_{5}} ]

近似分类精度:
[ alpha_{R}(X)=frac{|underline{R}X|}{|overline{R}X|}=frac{2}{4}=frac{1}{2} ]

粗糙度:
[ ho_{R}(X)=1-alpha_{R}(X)=1-frac{1}{2}=frac{1}{2} ]

近似分类质量:
[ gamma_{R}(X) = frac{|underline{R}X|}{|U|} = frac{2}{6} = frac{1}{3} ]


基于知识粒度的属性约简算法

在介绍完经典粗糙集模型一些基本的相关概念后,我们将给出粗糙集里面的一个经典算法,基于知识粒度非动态属性约简算法。


算法:基于知识粒度的经典启发式属性约简算法


输入:决策信息系统(S=(U,A=C igcup D,V,f))
输出:论域(U)上的约简集(RED_{U})

(begin)

(quad RED_{U} leftarrow varnothing)

(quad for quad 1leq j leq |C| quad do)

(quad quad Calculate quad Sig_{U}^{inner}(a_{j},C,D);)

(quad quad quad if quad Sig_{U}^{inner}(a_{j},C,D)>0 quad then)

(quad quad quad quad RED_{U} leftarrow (RED_{U} igcup {a_{j}});)

(quad quad quad end)

(quad quad end)

(quad Let quad B leftarrow RED_{U};)

(quad while quad GP_{U}(D mid B) eq GP_{U}(D mid C) quad do)

(quad quad for quad each quad a_{i}in (C-B) quad do)

(quad quad quad Calculate quad Sig_{U}^{outer}(a_{i},B,D);)

(quad quad quad a_{0}=max{Sig_{U}^{outer}(a_{i},B,D),a_{i} in (C-B)};)

(quad quad quad Bleftarrow (B igcup {a_{0} });)

(quad quad end)

(quad end)

(quad for quad each quad a_{i} in B quad do)

(quad quad if quad GP_{U}(D mid (B-{a_{i} }))=GP_{U}(D mid C) quad then)

(quad quad quad B leftarrow (B-{a_{i}});)

(quad quad end)

(quad end)

(quad RED_{U} leftarrow B;)

(quad return quad reduction quad RED_{U})

(end)


这就是基于知识粒度非动态属性约简算法的流程了,算法的流程虽然较多,但关键点在于等价类的划分,这点解决后,它的实现就不难了。

那么粗糙集有关的内容就暂告一段落了,系列博客介绍的也只是冰山一角,这里面还有很多很多的学问呢,有兴趣的可以查阅更多资料和文献。



本文参考了:

  • 景运革. 基于知识粒度的动态属性约简算法研究[D].西南交通大学,2017.

以上是关于聊一聊粗糙集的主要内容,如果未能解决你的问题,请参考以下文章

聊一聊粗糙集

聊一聊粗糙集

SQL开发实战技巧系列(二十二):数仓报表场景☞ 从分析函数效率一定快吗聊一聊结果集分页和隔行抽样实现方式

南京TSMC 16nm量产出货,聊一聊TSMC的崛起之路

聊一聊MR过程

聊一聊hadoop小文件合并成大文件