datawhale-吃瓜教程(西瓜书+南瓜书)-决策树

datawhale-吃瓜教程-决策树

Task01:概览西瓜书+南瓜书第1、2章
Task02:详读西瓜书+南瓜书第3章
Task03:详读西瓜书+南瓜书第4章
Task04:详读西瓜书+南瓜书第5章
Task05:详读西瓜书+南瓜书第6章


文章目录

  • datawhale-吃瓜教程-决策树
  • 基本形式
  • 一、术语及符号解释
  • 二、公式推导
  • 总结


基本形式

`

决策树是基于树结构进行决策的机器学习方法。
datawhale-吃瓜教程(西瓜书+南瓜书)-决策树_第1张图片
datawhale-吃瓜教程(西瓜书+南瓜书)-决策树_第2张图片


一、术语及符号解释

决策树结构:一般地,一棵决策树包含一个根节点、若干个内部节点、若干个叶节点;叶节点对应决策结果,其它每个节点对应一个属性测试。
信息增益:
信息熵:度量样本集合纯度最常用的一种指标。D为样本集合,k表示样本类别,pk表示第k类样本所占比例。
datawhale-吃瓜教程(西瓜书+南瓜书)-决策树_第3张图片
信息增益:在信息论中也称为互信息,表示已知一个随机变量的信息后使得另一个随机变量的不确定性减少的程度。
a为离散属性,有V个可能的取值(a1,a2……an,),v表示对应属性a不同取值的分支节点,Dv表示D中所有在a属性上取值为av的样本。
datawhale-吃瓜教程(西瓜书+南瓜书)-决策树_第4张图片
上面这个公式可以理解为在属性a的取值已知后,样本类别这个随机变量的不确定性减小的程度。(思考:Ent(D)已知,通过不同的属性a进行代入,存在一个或多个属性使得Gain(D,a)最大,对应的 ∑ v = 1 V \sum_{v =1}^V v=1VDv/D*Ent(Dv)最小,此时分支纯度最高)
增益率:信息增益准则对可取值数目较多的属性有所偏好,为减少这种偏好可能带来的不利影响提出的,使用增益率来选择划分最优属性(C4.5决策树算法)。
datawhale-吃瓜教程(西瓜书+南瓜书)-决策树_第5张图片

注意:增益率准则对可取数值数目较少的属性有所偏好,因此C4.5算法使用启发式:先从候选划分属性中选出信息增益高于平均水平的属性,再从中选择增益率最高的。
剪枝处理:避免决策树分支过多,主动去掉一些分支来降低过拟合风险。
预剪枝:在决策树生成过程中,对每个节点划分前先进性估计(基于信息增益准则等),若当前节点划分不能带来决策树泛化性能提升则停止划分,并把当前节点作为叶节点。优点:降低过拟合风险,减少训练时间和测试时间开销。缺点:有欠拟合风险
后剪枝:先从训练集生成一颗完整的二叉树,然后自底向上对非叶节点进行考察,若将该节点对应的子树替换为叶节点能带来决策树性能的提升,则将该子树替换为叶节点。
优点:欠拟合风险很小,泛化性能优于遇见直接决策树。缺点:训练时间开销大。
连续值处理之二分法:假定a为连续属性,在D上有n个不同取值a1,a2,……,an,我们选取划分点集合Ta={(ai+ai+1)/2 | 1=< i <=n}
datawhale-吃瓜教程(西瓜书+南瓜书)-决策树_第6张图片
选取Ta中使信息增益最大的划分点(划分点将属性a分为两部,即小于等于划分点数值和大于划分点数值两区间)
缺失值处理

  • 在属性值缺失情况下进行属性划分选择:比如属性a中某些值缺失,那么可构建样本集D中在属性a上没有缺失值的样本子集 D ~ \tilde{D} D~,根据 D ~ \tilde{D} D~判断属性a的优劣。

  • 给定样本属性,样本在该属性上的值缺失情况下进行样本划分:若样本x在划分属性a上的取值已知,则将x划入与其取值对应的子节点。若样本x在划分属性a上的取值位置,将x以不同概率划入到子节点中。
    多变量决策树:普通的决策树根据单个属性依次进行划分,可视为每个属性对应坐标空间中的一个坐标轴,所形成的的分类边界特点是轴平行。
    多变量决策树中,非叶节点不再是仅对某个属性,而是对属性的线性组合进行测试,如下图示例
    datawhale-吃瓜教程(西瓜书+南瓜书)-决策树_第7张图片
    注意:算法的多变性和灵活性:决策树划分选择的准则有信息增益、增益率、基尼指数等,多变量决策树的每个叶节点也可引入最小二乘法、感知机、多层神经网络等算法。

二、公式推导

datawhale-吃瓜教程(西瓜书+南瓜书)-决策树_第8张图片

总结

参考文献:
周志华.机器学习[M].北京:清华大学出版社,2016.01
谢文睿 / 秦州. 机器学习公式详解. 北京:人民邮电出版社,2021.03.

你可能感兴趣的:(决策树,机器学习,算法)