主要是根据下面列出的参考资料对决策树进行了一些总结,主要用于自己复习,有不对的地方欢迎指正。西瓜书上有一些计算的举例可以参考理解。
- 参考资料
- https://www.cnblogs.com/pinard/p/6050306.html
- https://www.cnblogs.com/pinard/p/6053344.html (CART的剪枝部分是直接粘过来的,想要完整公式请看此链接)
- 西瓜书第四章
- 基本概念
- 组成
- 根节点,叶节点,内部节点
- 每个叶节点对应一个决策结果,其他节点对应一个属性测试。
- 根节点包含样本全集,其他节点(子节点)包含的样本集根据父节点属性测试的结果分配到子节点中。
- 从根节点到每个叶节点的路径对应一个判定测试序列。
- 目标:选择最优划分属性。随着划分过程的不断进行,希望决策树的分支节点所包含的样本尽可能属于同一类别,即纯度purity越来越高。划分完成的三种标志:
- 当前节点包含的样本全属于同一类别,无需划分
- 当前属性集为空(即数据集已经根据所有的特征划分过了,已无属性可再划分)
- 所有样本在所有属性上取值相同,无法划分
- 当前节点包含的样本集合为空,无法划分
- 根节点,叶节点,内部节点
- 组成
- 特征划分算法:
- ID3
- 划分指标:信息增益
- 定义:
- a为选定的下一步进行划分的属性,V为分支节点个数,即a属性的V种取值,信息增益即为划分前数据的混乱度与按照属性a划分后的混乱度之差。信息增益越大,意味着使用a属性划分提升的纯度越高,对提升纯度最有帮助的属性则为下一步划分的属性。其中,划分后某一取值自身的信息熵Ent(D^v)需乘以分支节点的权重D^v/D,样本数越多的节点影响力越大。
- Ent(D)为上一层划分结束后的信息熵,p为样本中分类为正/负例的概率。Ent(D<sup>v</sup>)为以属性a中取值v的信息熵,p为取值v下分类为正/负样本的概率。Ent(D^v)的权重为
- 信息熵定义:
- 定义:
- 划分指标:信息增益
- ID3