【机器学习】决策树

参考课程视频: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训练时间较长,计算开销较大。
  • 信息增益、信息增益比和基尼指数各有利弊。
相关推荐
火山引擎开发者社区32 分钟前
火山引擎发布《企业级 ArkClaw 安全白皮书》
人工智能
阿里云大数据AI技术1 小时前
Hologres AI Function 文本分类实战:从提示词设计到 KV-Cache 调优,全程 SQL 搞定
人工智能·sql
code_pgf2 小时前
AI-Agent记忆机制分析
大数据·人工智能
阿拉斯攀登3 小时前
安全与可控性:输出校验、权限控制
人工智能·chatgpt·agent·memory·claude·知识库·向量数据库
冬奇Lab3 小时前
每日一个开源项目(第152篇):SAG - 用 SQL JOIN 代替 PageRank 做多跳 RAG 检索
人工智能·开源
冬奇Lab3 小时前
Workflow 系列(09):主流框架对比——Prompt-based、LangGraph、Temporal、n8n 如何选
人工智能·工作流引擎
程序员老猫4 小时前
vide coding 个人产品,那就从博客开始吧
人工智能·程序员·全栈
geo搜搜果数据4 小时前
实测5大AI平台品牌排名:复现GEO监测流程
人工智能·langchain·搜搜果