【机器学习】决策树

参考课程视频:https://www.icourse163.org/course/NEU-1462101162?tid=1471214452

1 概述

样子:

2 分裂

2.1 分裂原则

信息增益

信息增益比

基尼指数

3 终止 & 剪枝

3.1 终止条件

  • 无需分裂
    • 当前节点内样本同属一类
  • 无法分裂
    • 当前节点内所有样本的特征向量完全相同
    • 采用任何特征都无法将当前样本集分为多个子类
  • 无数据可分
    • 当前节点内没有样本

3.2 剪枝

剪枝的目的:解决决策树过拟合现象(决策树规模大),提高决策树的泛化性能。

剪枝方法

  • 前剪枝(预剪枝)
    • 在决策树的生成过程中同步进行剪枝
    • 在节点进行分裂前,对比节点分裂前后决策树的泛化性能指标,若泛化性能在分裂后得到提升,执行分裂;否则不执行分裂。
  • 后剪枝
    • 在决策树完全生成后逐步剪去叶子节点
    • 常采用启发式方法从最深层的叶子节点或具有最高不纯度的
      叶子节点开始剪枝
    • 通过对比剪枝前后的泛化指标,决定是否剪去该叶子节点。

前剪枝 & 后剪枝 策略对比:

策略 时间 拟合风险 泛化能力
前剪枝 训练时间较少、测试时间较少 过拟合风险较低 、欠拟合风险较高 泛化能力一般
后剪枝 训练时间较长、测试时间较少 过拟合风险较低、欠拟合风险稳定 泛化能力较好

通常后剪枝比前剪枝保留的决策树规模更大。

4 决策树算法

4.1 经典决策树算法

ID3

C4.5

CART(Classification And Regression Tree)

4.2 算法对比分析

算法 特征选择 剪枝 处理数据类型 树类型
ID3 信息增益 离散 多叉树
C4.5 信息增益比 前剪枝 离散、连续 多叉树
CART 基尼指数 后剪枝 离散、连续 二叉树

总结:

  • CART的功能更全:分类、回归
  • CART具有更好的泛化性能:二叉树,后剪枝。
  • CART训练时间较长,计算开销较大。
  • 信息增益、信息增益比和基尼指数各有利弊。
相关推荐
AI客栈9 分钟前
Go Channel 事件分发:K8s 控制器升级零中断实践
人工智能
Bruce_Liuxiaowei16 分钟前
Prompt注入_我的AI编码助手被策反了
人工智能·ai·prompt·提示词·智能体
CryptoPP34 分钟前
快速对接东京证券交易所API数据:实战指南与代码示例
开发语言·人工智能·windows·python·信息可视化·区块链
米小虾1 小时前
AI Agent 上下文管理实战:让你的智能体不再"失忆"
人工智能·agent
凌云拓界1 小时前
文件管理:让AI安全操作你的电脑 ——CogitoAgent开发实战(三)
javascript·人工智能·架构·开源·node.js
火山引擎开发者社区1 小时前
Viking AI 搜索 CLI 正式发布:会说话,就能做搜索推荐
人工智能
云烟成雨TD1 小时前
Spring AI 1.x 系列【51】可观测性技术选型
java·人工智能·spring
unicrom_深圳市由你创科技1 小时前
基于Spring AI框架的RAG应用
人工智能·spring·机器学习
凌云拓界2 小时前
联网能力:让AI看见更广阔的世界 ——CogitoAgent开发实战(四)
javascript·人工智能·架构·node.js·创业创新