【机器学习】决策树

参考课程视频: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训练时间较长,计算开销较大。
  • 信息增益、信息增益比和基尼指数各有利弊。
相关推荐
Quz7 分钟前
在 Obsidian 中嵌入 Claude Code 的实践记录
人工智能·claude
雪隐13 分钟前
个人电脑玩AI-10让5060 Ti给你打工——部署 Odysseus:终于有个能打的"AI管家"了
人工智能·后端
武子康14 分钟前
调查研究-209 Apptronik Robot Park 深度解析:人形机器人竞争,开始拼“真实世界数据工厂“
人工智能·google·llm
IT_陈寒1 小时前
Vite打包时踩的坑:静态资源为啥突然404了?
前端·人工智能·后端
一点一木2 小时前
🚀 2026 年 6 月 GitHub 十大热门项目排行榜 🔥
人工智能·github
aneasystone本尊2 小时前
学习 turbovec 的 SIMD 搜索内核
人工智能
阳光是sunny11 小时前
别再被 worktree 绕晕了!AI 编程时代你必须掌握的 Git 隔离神器
前端·人工智能·后端
冬奇Lab11 小时前
每日一个开源项目(第148篇):obsidian-skills - Obsidian CEO 亲写的 AI Agent 格式规范,让 Agent 不再破坏你的 Vault
人工智能·开源·资讯
ethantan11 小时前
AI Agent 组成:像人一样思考的智能体
人工智能·程序员·架构
冬奇Lab12 小时前
Workflow 系列(05):评测体系——三层测试结构与 Trace 追踪
人工智能·工作流引擎