ID3算法
来源:互联网 发布:anything搜索软件 编辑:程序博客网 时间:2024/04/30 20:56
ID3是数据挖掘分类中的一种(是一种if-then的模式),其中运用到熵的概念,表示随机变量不确定性的度量
H(x)=-∑pi *log pi
信息增益是指特征A对训练数据集D的信息增益g(D,A),定义为集合D的经验熵H(D)与特征A给定条件下D的经验条件熵H(D|A)之差
g(D,A)=H(D)-H(D|A)
其中H(Y|X)=∑pi H(Y|X=xi)
Pi=P(x=xi)
ID3 是一种自顶向下增长树的贪婪算法,在每个结点选取能最好地分类样例的属性。继续这个过程直到这棵树能完美分类训练样例,或所有的属性都使用过了。
ID3算法流程
ID3(Examples,Target_attribute,Attributes)
Examples 即训练样例集。Target_attribute 是这棵树要预测的目标属性。Attributes
是除目标属性外供学习到的决策树测试的属性列表。返回能正确分类给定
Examples 的决策树。
创建树的 Root 结点
如果 Examples 都为正,那么返回 label =+ 的单结点树 Root
如果 Examples 都为反,那么返回 label =- 的单结点树 Root
如果 Attributes 为空,那么返回单结点树 Root,label=Examples 中最普遍的
Target_attribute 值
否则
A←Attributes 中分类 Examples 能力最好*的属性
Root 的决策属性←A
对于A的每个可能值v
在Root下加一个新的分支对应测试A= vi
令Examples vi 为Examples中满足A属性值为v i的子集
如果的子集Examples vi 为空在这个新分支下加一个叶子结点,结点的 label=Examples vi
中最普遍的 Target_attribute 值
否则在这个新分支下加一个子树 ID3(Examples vi ,Target_attribute, Attributes-{A})
结束
返回 Root
其主要代码如下
计算信息增益
若使用C4.5就会使用信息增益比
ID3 : 归纳偏置的更贴切近似:较短的树比较长的得到优先。那些信息增益高的属性
更靠近根结点的树得到优先
- id3算法
- ID3算法
- ID3算法
- ID3算法
- ID3算法
- ID3算法
- ID3算法
- ID3算法
- ID3算法
- ID3算法
- ID3算法
- ID3算法
- ID3算法
- ID3算法
- ID3算法
- ID3算法
- ID3算法
- ID3算法
- 搜集的一些task_struct结构示意图
- [leetcode] 188.Best Time to Buy and Sell Stock IV
- PHP导入Excel文件
- mysql 安时间分组 group by
- BZOJ 3105 [cqoi2013]新Nim游戏 拟阵
- ID3算法
- mybatis集成spring操作数据库(注解方式)
- LeetCode:Binary Tree Paths
- Qt之QGroupBox
- 大型网站技术架构
- tomcat处理图片资源
- jiffies HZ 秒的区别与联系
- 生活中的观察者模式——一壶水的故事
- 了解Hibernate中CRUD操作