数据挖据十大算法之ID3算法(1)
来源:互联网 发布:nginx 域名访问不了 编辑:程序博客网 时间:2024/05/21 18:19
1、引言
ID3算法是用来干什么的?主要用来解决类似于这样的问题:今天天气晴朗、气温适中、湿度高且无风,我应该去打高尔夫球吗?
ID3算法是一种贪心算法,用来构造决策树。ID3算法起源于概念学习系统(CLS),以信息熵的下降速度为选取测试属性的标准,即在每个节点选取还尚未被用来划分的具有最高信息增益的属性作为划分标准,然后继续这个过程,直到生成的决策树能完美分类训练样例。
2、背景知识
ID3算法最早是由罗斯昆(J. Ross Quinlan)于1975年在悉尼大学提出的一种分类预测算法,算法的核心是“信息熵”。ID3算法通过计算每个属性的信息增益,认为信息增益高的是好属性,每次划分选取信息增益最高的属性为划分标准,重复这个过程,直至生成一个能完美分类训练样例的决策树。
决策树是对数据进行分类,以此达到预测的目的。该决策树方法先根据训练集数据形成决策树,如果该树不能对所有对象给出正确的分类,那么选择一些例外加入到训练集数据中,重复该过程一直到形成正确的决策集。决策树代表着决策集的树形结构。
决策树由决策结点、分支和叶子组成。决策树中最上面的结点为根结点,每个分支是一个新的决策结点,或者是树的叶子。每个决策结点代表一个问题或决策,通常对应于待分类对象的属性。每一个叶子结点代表一种可能的分类结果。沿决策树从上到下遍历的过程中,在每个结点都会遇到一个测试,对每个结点上问题的不同的测试输出导致不同的分支,最后会到达一个叶子结点,这个过程就是利用决策树进行分类的过程,利用若干个变量来判断所属的类别。
3、以一个实例来讲解ID3算法
题目:表1中给出了一个关于配眼镜的一个决策分类所需要的数据。数据集包含5属性。
(1)age:{young,pre-presbyopic,presbyopic};
(2)astigmatism:{no,yes};
(3)spectacle-prescrip:{myope,hypermetrope};
(4)tear-prod-rate:{reduced,normal};
(5) contact-lenses: {soft,none,hard};
contact-lenses是决策属性,通过手动模拟ID3算法来实现决策过程。
表1训练数据集
解:
- 数据挖据十大算法之ID3算法(1)
- 数据挖据十大算法之ID3算法
- 【数据挖掘】决策树之ID3算法
- 数据挖掘--分类之决策树算法ID3
- 数据挖掘:id3 算法
- 数据挖掘 ID3算法
- 数据挖掘:id3 算法
- 数据挖掘回顾二:分类算法之 决策树 算法 (ID3算法)
- 决策树之id3算法
- 决策树之ID3算法
- 决策树之ID3算法
- 决策树之ID3算法
- 决策树之 ID3 算法
- 决策树之ID3算法
- 决策树之ID3算法
- 决策树之ID3算法
- 决策树之ID3算法
- 决策树之ID3算法
- Tomcat中HttpServletResponse的实现类
- PHP实现同一个帐号不允许多人同时重复登陆
- hdu1104 BFS + 数论
- bootstrap的选项卡和选项卡的内容
- 矢量的概念
- 数据挖据十大算法之ID3算法(1)
- 一致性hash算法
- Ant构建Java项目
- DES与AES加密算法
- AsyncTask简单实例
- error undefined reference to '__android_log_print'
- BZOJ2957 楼房重建(线段树)
- 排行榜设计
- 【书评】人月不必再相望,嫦娥已然在身旁——人月神话(40周年纪念版)