决策树(decisions tree)和ID3算法

来源:互联网 发布:nfc世界网络银行商城 编辑:程序博客网 时间:2024/05/22 07:57

决策树和决策规则是解决实际应用中分类问题的强大的数据挖掘方法。


首先,介绍一下分类的基本原理:

分类是一个学习函数的过程,该函数把数据项映射到其中一个预定义的类中。若一个样本包含属性值向量和一个相应的类,则基于归纳学习算法的每个分类就指定为该样本集的输入。归纳学习的目标是构建一个分类模型,也成为分类器,它可以根据有效的属性输入值预测某个实体所属的类。


决策树定义:每一个结点是一个decision,叶子结点是最终的决定。

如图简单示意,决策树可以被用来作为分类器


决策树易于被理解,即使对于非技术人员

在一元树中,对于每个内部节点,检验函数都只使用一个属性进行检验。结点的输出分支对应于该节点的所有可能的检验结果。

那么我们如何能够从一个数据集中构造决策树?


初步思路为用随机的splitting plane来分割数据集中的点

如右图


找到更智能的分割方法


引入entropy熵其中n是需要分成的类个数

fS (yi )是第yi的类在S中的频率。


ID3算法使分割后的子集的熵尽可能小,使entrogy gain尽可能大


其中fS (Ai )是Ai占S的频率,SAi是S的按A分割的子集之一


ID3算法的缺点:由ID3构建成的决策树对噪音敏感


进阶的算法还有C4.5和C5算法等


对于这种自上而下的决策树生成算法,最重要的决策是树节点属性的选择。

ID3和C4.5算法的属性选择基准都是使样本中的信息熵最小化。