决策树模型原理 决策树模型

决策树是什么东东? 小白自学路上的备忘记录 。。。
参考:
决策树(分类树、回归树)
决策树 :这个博客的图真好看 , 通俗易懂 。哈哈
决策树详解
决策树(DecisionTree)是一种有监督学习算法 , 常用于分类和回归 。本文仅讨论分类问题 。
决策树模型是运用于分类以及回归的一种树结构 。决策树由节点和有向边组成 , 一般一棵决策树包含一个根节点、若干内部节点和若干叶节点 。决策树的决策过程需要从决策树的根节点开始 , 待测数据与决策树中的特征节点进行比较 , 并按照比较结果选择选择下一比较分支 , 直到叶子节点作为最终的决策结果 。
简而言之 , 决策树是一个利用树的模型进行决策的多分类模型
为了找到最优的划分特征 , 我们需要先了解一些信息论的知识:
纯度 :
你可以把决策树的构造过程理解成为寻找纯净划分的过程 。数学上 , 我们可以用纯度来表示 , 纯度换一种方式来解释就是让目标变量的分歧最小
信息熵 :表示信息的不确定度
在信息论中 , 随机离散事件出现的概率存在着不确定性 。为了衡量这种信息的不确定性 , 信息学之父香农引入了信息熵的概念.
当不确定性越大时 , 它所包含的信息量也就越大 , 信息熵也就越高。
信息熵越大 , 纯度越低 。当集合中的所有样本均匀混合时 , 信息熵最大 , 纯度最低
经典的 “不纯度”的指标有三种 , 分别是信息增益(ID3 算法)、信息增益率(C4.5 算法)以及基尼指数(Cart 算法)
信息增益 :
信息增益指的就是划分可以带来纯度的提高 , 信息熵的下降 。它的计算公式 , 是父亲节点的信息熵减去所有子节点的信息熵 。
信息增益率
信息增益率 = 信息增益 / 属性熵
基尼指数
基尼指数(基尼不纯度):表示在样本集合中一个随机选中的样本被分错的概率 。
即 基尼指数(基尼不纯度)= 样本被选中的概率 * 样本被分错的概率
基尼系数的性质与信息熵一样:度量随机变量的不确定度的大小;
G 越大 , 数据的不确定性越高;
G 越小 , 数据的不确定性越低;
G = 0 , 数据集中的所有样本都是同一类别
详细参考: 机器学习——基尼指数
ID3 算法是建立在奥卡姆剃刀(用较少的东西 , 同样可以做好事情)的基础上:越是小型的决策树越优于大的决策树
ID3算法的核心是在决策树各个节点上根据信息增益来选择进行划分的特征 , 然后递归地构建决策树 。算法采用自顶向下的贪婪搜索遍历可能的决策树空间 。
具体方法 :
ID3的局限 :
C4.5与ID3相似 , 但大的特点是克服了 ID3 对特征数目的偏重这一缺点 , 引入信息增益率来作为分类标准 。
C4.5的实现基于ID3的改进 :
信息增益率对可取值较少的特征有所偏好(分母越小 , 整体越大) , 因此 C4.5 并不是直接用增益率最大的特征进行划分 , 而是使用一个 启发式方法 :先从候选划分特征中找到信息增益高于平均值的特征 , 再从中选择增益率最高的 。
C4.5的局限 :
ID3 和 C4.5 生成的决策树分支、规模都比较大 , CART 算法的二分法可以简化决策树的规模 , 提高生成决策树的效率 。
CART(classificationandregressiontree),分类回归树算法 , 既可用于分类也可用于回归 , 在这一部分我们先主要将其分类树的生成 。区别于ID3和C4.5,CART假设决策树是二叉树 , 内部节点特征的取值为“是”和“否” , 左分支为取值为“是”的分支 , 右分支为取值为”否“的分支 。这样的决策树等价于递归地二分每个特征 , 将输入空间(即特征空间)划分为有限个单元 。
CART的分类树用基尼指数来选择最优特征的最优划分点 , 具体过程如下
剪枝就是给决策树瘦身 , 这一步想实现的目标就是 , 不需要太多的判断 , 同样可以得到不错的结果 。之所以这么做 , 是为了防止“过拟合”(Overfitting)现象的发生 。
过拟合:指的是模型的训练结果“太好了” , 以至于在实际应用的过程中 , 会存在“死板”的情况 , 导致分类错误 。

秒懂生活扩展阅读