第四章 决策树

定义:监督学习方法,树状结构递归划分特征空间,最终实现分类和回归。

4.1基本流程

在出现以下三种情形会出现递归返回:
当前节点所有样本属于同一类别
当前可用特征集为空
样本划分结果为空,直接用原划分集合作为该结果

4.2划分选择

下三种计算方法是衡量决策树属性划分有效性的指标,但衡量标准不一样。

4.2.1信息增益

熵、噪音的定义
重点记住信息熵定义的计算公式。
下图为信息增益的概念理解:计算二层划分对于第一层直接算的熵值(需要消耗值)的提升。
上图详细给出信息增益的公式。在ID3决策树中,就是每次选择信息增益最大的属性进行划分,训练速度更快,成本更低。

4.2.2增益率

其中分母IV(a)起到了规范化的作用,方便进行数据比较。优化了信息增益对可取值数目较多属性的偏好。

4.2.3基尼指数

4.3剪枝处理

剪枝是缓解决策树过拟合的主要方法。
预剪枝:基于贪心算法,自上而下,当划分后验证集精度下降,就需要避免此划分。好处:不仅降低过拟合风险,还减少决策树的训练时间和测试时间开销。坏处:贪心算法,可能带来欠拟合风险。
后剪枝:根据生成后的决策树,好处:欠拟合风险小,泛化性能好于预剪枝。坏处:训练时间开销大于未剪枝和预剪枝。

4.4连续与缺失值

4.4.1连续值处理

就是每个间隔处都视为分割点,依次算出最大的信息增益,作为该属性的信息增益

4.4.2缺失值处理

只有最后算数据集信息增益时,需要乘以ρ,只算无缺失值的权重。

算增益率时,注意各样本权重的赋予。

4.5多变量决策树

在多变量决策树中,不是为每个非叶子节点寻找一个最优划分属性,而是试图找到一个合适的线性分类器
相关推荐
Liu628885 小时前
C++中的工厂模式高级应用
开发语言·c++·算法
AI科技星5 小时前
全尺度角速度统一:基于 v ≡ c 的纯推导与验证
c语言·开发语言·人工智能·opencv·算法·机器学习·数据挖掘
条tiao条6 小时前
KMP 算法详解:告别暴力匹配,让字符串匹配 “永不回头”
开发语言·算法
干啥啥不行,秃头第一名6 小时前
C++20概念(Concepts)入门指南
开发语言·c++·算法
星空下的月光影子6 小时前
一维CNN在工业过程信号处理与故障预警中的应用
人工智能·机器学习
zzh940776 小时前
Gemini 3.1 Pro 硬核推理优化剖析:思维织锦、动态计算与国内实测
算法
2301_807367197 小时前
C++中的解释器模式变体
开发语言·c++·算法
愣头不青7 小时前
617.合并二叉树
java·算法
MIUMIUKK8 小时前
双指针三大例题
算法
灵感__idea8 小时前
Hello 算法:复杂问题的应对策略
前端·javascript·算法