决策树(decisions tree)和ID3算法
2014-11-07 19:44
531 查看
决策树和决策规则是解决实际应用中分类问题的强大的数据挖掘方法。
首先,介绍一下分类的基本原理:
分类是一个学习函数的过程,该函数把数据项映射到其中一个预定义的类中。若一个样本包含属性值向量和一个相应的类,则基于归纳学习算法的每个分类就指定为该样本集的输入。归纳学习的目标是构建一个分类模型,也成为分类器,它可以根据有效的属性输入值预测某个实体所属的类。
决策树定义:每一个结点是一个decision,叶子结点是最终的决定。
![](https://oscdn.geek-share.com/Uploads/Images/Content/201908/28/823c8598cc3c9d7346260cfa642f391a)
如图简单示意,决策树可以被用来作为分类器
决策树易于被理解,即使对于非技术人员
在一元树中,对于每个内部节点,检验函数都只使用一个属性进行检验。结点的输出分支对应于该节点的所有可能的检验结果。
那么我们如何能够从一个数据集中构造决策树?
初步思路为用随机的splitting plane来分割数据集中的点
如右图
![](https://oscdn.geek-share.com/Uploads/Images/Content/201908/28/8b1f9e4a00cbfba7fb953c1e74b0c4c7)
![](https://oscdn.geek-share.com/Uploads/Images/Content/201908/28/1591bbe5457363d3dad27d68c5ff2212)
找到更智能的分割方法
引入entropy熵
![](https://oscdn.geek-share.com/Uploads/Images/Content/201908/28/3364d6d2a2ecca858c3f8ae97473b32e)
其中n是需要分成的类个数
fS (yi )是第yi的类在S中的频率。
ID3算法使分割后的子集的熵尽可能小,使entrogy gain尽可能大
![](https://oscdn.geek-share.com/Uploads/Images/Content/201908/28/7c4844da2332badd008deb443785d281)
其中fS (Ai )是Ai占S的频率,SAi是S的按A分割的子集之一
进阶的算法还有C4.5和C5算法等
对于这种自上而下的决策树生成算法,最重要的决策是树节点属性的选择。
ID3和C4.5算法的属性选择基准都是使样本中的信息熵最小化。
首先,介绍一下分类的基本原理:
分类是一个学习函数的过程,该函数把数据项映射到其中一个预定义的类中。若一个样本包含属性值向量和一个相应的类,则基于归纳学习算法的每个分类就指定为该样本集的输入。归纳学习的目标是构建一个分类模型,也成为分类器,它可以根据有效的属性输入值预测某个实体所属的类。
决策树定义:每一个结点是一个decision,叶子结点是最终的决定。
如图简单示意,决策树可以被用来作为分类器
决策树易于被理解,即使对于非技术人员
在一元树中,对于每个内部节点,检验函数都只使用一个属性进行检验。结点的输出分支对应于该节点的所有可能的检验结果。
那么我们如何能够从一个数据集中构造决策树?
初步思路为用随机的splitting plane来分割数据集中的点
如右图
找到更智能的分割方法
引入entropy熵
其中n是需要分成的类个数
fS (yi )是第yi的类在S中的频率。
ID3算法使分割后的子集的熵尽可能小,使entrogy gain尽可能大
其中fS (Ai )是Ai占S的频率,SAi是S的按A分割的子集之一
进阶的算法还有C4.5和C5算法等
对于这种自上而下的决策树生成算法,最重要的决策是树节点属性的选择。
ID3和C4.5算法的属性选择基准都是使样本中的信息熵最小化。
相关文章推荐
- 决策树(decisions tree)和ID3算法
- sklearn决策树 DecisionTreeClassifier建立模型, 导出模型, 读取
- 3_1决策树(Decision_Tree_ID3)——calcShannonEnt_3_1
- 决策树分类Decision tree classifier
- Spark上的决策树(Decision Tree On Spark)
- Spark上的决策树(Decision Tree On Spark)
- 利用平行坐标轴分类的决策树分类器DecisionTreeClassifier进行二类分类(复习5)
- Spark上的决策树(Decision Tree On Spark)
- DataMing Papers:<The alternating decision tree learning algorithm>
- 数据挖掘之决策树ID3算法
- 《机器学习实战》学习笔记(2)—— 使用ID3算法构造决策树
- 机器学习技法实现(一):AdaBoost- Decision Stump (AdaBoost - 决策树的基于Matlab的实现)
- Gradient Boost Decision Tree(模型测试报告)
- 决策树(Decision Trees)
- 决策树(一)ID3算法
- 机器学习算法(分类算法)—决策树之ID3算法
- GBDT(Gradient Boost Decision Tree)
- 机器学习算法初识—决策树ID3算法
- 决策树ID3算法C++代码及测试用例(bug版)
- ID3算法(决策树)