粗糙集理论是一种研究不精确,不确定性知识的数学工具。

粗糙集理论的知识表达方式一般采用信息表或称为信息系统的形式,它可以表现为四元有序组K=(U,A,V,P)。其中U为对象的全体,即论域;A是属性全体;V是属性的值域;P为一个信息函数,反映了对象x在K中的完全信息。

粗糙集的思想为:

  一种类别对应一个概念(类别可以用集合表示,概念可以用规则描述),知识由概念组成;如果某个知识含有不精确概念,则该知识不精确。粗糙集对不精确概念的描述方法是通过下近似和上近似概念来描述。

  上近似包含了所有使用知识R可确切分类到X的元素。
  下近似包含了所有那些可能属于X的元素的最小集合。

粗糙集可以解决的问题可以如下一些:

  • 1,不确定或者不精确知识的表达
  • 2,经验学习并从经验中获取知识
  • 3,不一致信息的分析
  • 4,根据不完整得到,不确定的知识进行推理
  • 5,在保留信息的前提下进行数据化简
  • 6,识别并评估数据之间依赖关系

算法思想:

   粗糙集(RS)理论是一种刻画不完整性和不确定性的数学工具,能有效地分析和处理不精确、不一致和不完整等各种不完备信息,并从中发现隐含的知识,揭示潜在的规律。

优点

  • (1) 它能处理各种数据,包括不完整(incomplete) 的数据以及拥有众多变量的数据;
  • (2) 它能处理数据的不精确性和模棱两可(ambiguity),包括确定性和非确定性的情况;
  • (3) 它能求得知识的最小表达(reduct) 和知识的各种不同颗粒(granularity) 层次;
  • (4) 它能从数据中揭示出概念简单,易于操作的模式(pattern) ;
  • (5) 它能产生精确而又易于检查和证实的规则,特别适于智能控制中规则的自动生成.

基本概念

知识

  “知识”这个概念在不同的范畴内有多种不同的含义。在粗糙集理论中,“知识”被认为是一种分类能力。人们的行为是基于分辨现实的或抽象的对象的能力,如在远古时代,人们为了生存必须能分辨出什么可以食用,什么不可以食用;医生给病人诊断,必须辨别出患者得的是哪一种病。这些根据事物的特征差别将其分门别类的能力均可以看作是某种“知识”。 

不可分辨关系

  分类过程中,相差不大的个体被归于同一类,它们的关系就是不可分辨关系(indiscernibility relation). 假定只用两种黑白颜色把空间中的物体分割两类,{黑色物体},{白色物体},那么同为黑色的两个物体就是不可分辨的,因为描述它们特征属性的信息相同,都是黑色.
  如果再引入方,圆的属性,又可以将物体进一步分割为四类: {黑色方物体},{黑色圆物体},{白色方物体},{白色圆物体}. 这时,如果两个同为黑色方物体,则它们还是不可分辨的. 不可分辨关系是一种等效关系(equivalence relationship),两个白色圆物体间的不可分辨关系可以理解为它们在白,圆两种属性下存在等效关系.

基本集

  基本集(elementary set) 定义为由论域中相互间不可分辨的对象组成的集合,是组成论域知识的颗粒. 不可分辨关系这一概念在粗糙集理论中十分重要,它深刻地揭示出知识的颗粒状结构,是定义其它概念的基础. 知识可认为是一族 等效关系,它将论域分割成一系列的等效类。

集合

  粗糙集理论延拓了经典的集合论,把用于分类的知识嵌入集合内,作为集合组成的一部分. 一个对象a 是否属于集合X 需根据现有的知识来判断,可分为三种情况:
⑴ 对象a 肯定属于集合X ;
⑵ 对象a 肯定不属于集X ;
⑶ 对象a 可能属于也可能不属于集合X 。
  集合的划分密切依赖于我们所掌握的关于论域的知识,是相对的而不是绝对的.给定一个有限的非空集合U 称为论域,I 为U 中的一族等效关系,即关于U 的知识,则二元对 K = (U,I) 称为一个近似空间(approximation space). 设x 为U 中的一个对象,X为U 的一个子集,I (x) 表示所有与x 不可分辨的对象所组成的集合,换句话说,是由x 决定的等效类,即I (x) 中的每个对象都与x 有相同的特征属性(attribute)。

参考链接:

http://blog.csdn.net/chl033/article/details/3240500
http://blog.sina.com.cn/s/blog_65aba7b70100h5s0.html

【机器学习】粗糙集(Rough Set Approach)的更多相关文章

  1. 机器学习(Machine Learning)&深度学习(Deep Learning)资料(Chapter 2)

    ##机器学习(Machine Learning)&深度学习(Deep Learning)资料(Chapter 2)---#####注:机器学习资料[篇目一](https://github.co ...

  2. 【深度学习Deep Learning】资料大全

    最近在学深度学习相关的东西,在网上搜集到了一些不错的资料,现在汇总一下: Free Online Books  by Yoshua Bengio, Ian Goodfellow and Aaron C ...

  3. Bayesian Personalized Ranking 算法解析及Python实现

    1. Learning to Rank 1.1 什么是排序算法 为什么google搜索 ”idiot“ 后,会出现特朗普的照片? “我们已经爬取和存储了数十亿的网页拷贝在我们相应的索引位置.因此,你输 ...

  4. 粗糙集理论(Rough Set Theory)

    粗糙集理论(Rough Set Theory) 一种数据分析处理理论. <粗糙集—关于数据推理的理论>. 数据挖掘(Data Mining)和知识发现(KDD). 集合近似定义的基本思想及 ...

  5. 【机器学习】粗糙集属性约简算法与mRMR算法的本质区别

    1. 粗糙集属性约简算法仅仅选出属性重要度大的条件加入约减中,没有考虑约简中条件属性相互之间的冗余性,得到的约简往往不是都必要的,即含有冗余属性. 2. mRMR算法则除了考虑特征与类别之间的相关性, ...

  6. 【机器学习】粗糙集属性约简—Attribute Reduction

    介绍 RoughSets算法是一种比较新颖的算法,粗糙集理论对于数据的挖掘方面提供了一个新的概念和研究方法.本篇文章我不会去介绍令人厌烦的学术概念,就是简单的聊聊RoughSets算法的作用,直观上做 ...

  7. 机器学习资源汇总----来自于tensorflow中文社区

    新手入门完整教程进阶指南 API中文手册精华文章TF社区 INTRODUCTION 1. 新手入门 1.1. 介绍 1.2. 下载及安装 1.3. 基本用法 2. 完整教程 2.1. 总览 2.2.  ...

  8. 【机器学习Machine Learning】资料大全

    昨天总结了深度学习的资料,今天把机器学习的资料也总结一下(友情提示:有些网站需要"科学上网"^_^) 推荐几本好书: 1.Pattern Recognition and Machi ...

  9. paper 118:计算机视觉、模式识别、机器学习常用牛人主页链接

    牛人主页(主页有很多论文代码) Serge Belongie at UC San Diego Antonio Torralba at MIT Alexei Ffros at CMU Ce Liu at ...

随机推荐

  1. java 实现二分法

    http://www.cnblogs.com/vanezkw/archive/2012/06/29/2569470.html JDK里面的二分法实现.二分法的实现有多种今天就给大家分享两种.一种是递归 ...

  2. 安装samba脚本

    Ubuntu_samba.sh #!/bin/sh echo "Ubuntu 14.04 文件服务器--samba的安装和配置" echo "更新源列表" su ...

  3. Ubuntu菜鸟入门(十二)—— 主题美化

    一.unity-tweak-tool 1.软件介绍 调整 Unity 桌面环境,还是推荐使用Unity Tweak Tool,这是一个非常好用的 Unity 图形化管理工具,可以修改工作区数量.热区等 ...

  4. Android-- ArrayAdapter用法举例(转载)

    近期很多Android开发者来函表示对ArrayAdapter和BaseAdapter的区别不是很清楚,这里Android123简单说下他们的关系和用处,ArrayAdapter是从BaseAdapt ...

  5. Oracle 12C -- 在相同的列的集合上创建多个索引

    在12C中,可以在相同的列的集合上创建多个索引,但是多个索引的类型要不同.同一时刻,只有一个是可见的. SQL> create table emp_tab as select * from em ...

  6. ERROR: No query specified

    mysql中执行show命令的时候,提示以下信息: mysql> show variables like 'datadir'\G; *************************** 1. ...

  7. @property与@synthesize的差别

    上一篇文章我有讲到self.与_的差别,往往和这个问题相伴随的是我困惑的问题是"@property与@synthesize的差别" @property的使用方法 @interfac ...

  8. CListCtrl选中某行

    原文链接: http://blog.csdn.net/wxq1987525/article/details/7461461 1.设置CListCtrl选中行 m_list.SetItemState( ...

  9. 一个Demo带你彻底掌握View的滑动冲突

    本文已授权微信公众号:鸿洋(hongyangAndroid)在微信公众号平台原创首发. 近期在又一次学习Android自己定义View这一块的内容.遇到了平时开发中常常碰到的一个棘手问题:View的滑 ...

  10. Knockout: 实践CSS绑定和afterkeydown事件, 给未通过校验的输入框添加红色边框突出显示; 使用afterkeydown事件自动将输入转大写字母.

    目的: 实践一下Knockout提供的CSS绑定功能和afterkeydown事件. 步骤: 先在htm中添加.error的css样式, 并在输入框中绑定css: { error: !firstNam ...