1.基本流程
在做决策树的时候,会经历两个阶段:构造和剪枝。
构造
构造就是生成一棵完整的决策树。简单来说,构造的过程就是选择什么属性作为节点的过程,那么在构造过程中,会存在三种节点:
根节点:就是树的最顶端,最开始的那个节点。
内部节点:就是树中间的那些节点
叶节点:就是树最底部的节点,也就是决策结果。
剪枝
剪枝就是给决策树瘦身,这一步想实现的目标就是,不需要太多的判断,同样可以得到不错的结果。之所以这么做,是为了防止“过拟合”(Overfitting)现象的发生。
剪枝的方法:
预剪枝:在决策树构造时就进行剪枝。方法是,在构造的过程中对节点进行评估,如果对某个节点进行划分,在验证集中不能带来准确性的提升,那么对这个节点进行划分就没有意义,这时就会把当前节点作为叶节点,不对其进行划分。
后剪枝:在生成决策树之后再进行剪枝。通常会从决策树的叶节点开始,逐层向上对每个节点进行评估。如果剪掉这个节点子树,与保留该节点子树在分类准确性上差别不大,或者剪掉该节点子树,能在验证集中带来准确性的提升,那么就可以把该节点子树进行剪枝。方法是:用这个节点子树的叶子节点来替代该节点,类标记为这个节点子树中最频繁的那个类。
2.划分选择
信息熵::越小越纯,越大越混乱(ID3决策树)
信息增益(ID3决策树):,D位数据集,v为以某个维度划分的数据,id3决策树通过信息增益选出节点上以什么维度进行划分。
增益率(C4.5决策树):信息增益会对能划分更多种类的属性更加偏好,为了减少这种影响,C4.5决策树采用了增益率作为划分准则,增益率准则可能更偏好划分数目少的属性,所以C4.5决策树采用了启发式的策略:现在候选划分属性中找出信息增益高于平均水平的属性,在在其中选择增益率高的
a为属性
IV为属性熵,是衡量的是某一个变量的信息量,与信息熵的不同:信息熵变量Pk为不同类别占比,IV变量Dv/D为根据属性不同划分的变量类别占比
基尼值和基尼指数(Giniindex)(CART决策树):
直观的看,基尼值表示随机抽取两个数据,类别不一样的概率,因此基尼值越小,纯度越高
在划分时,选择划分后Giniindex最低的属性作为最优划分属性
3.连续值与缺失值处理
连续值处理:(c4.5)排序后以相邻值中点为节点进行二分划分
缺失值处理:
1:如何选择划分属性?
根据无缺失的数据子集进行指数计算,选择最优划分属性,并给每个样本一个权重w
2:若划分属性缺失,如何划分?
如果取值已知,划分进对应的子节点,权重保持不变,如果未知,按照属性占比的权重划入所有子节点