news 2026/6/10 13:05:19

决策树:划分规则、剪枝方法与适用场景

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
决策树:划分规则、剪枝方法与适用场景

决策树:划分规则、剪枝方法与适用场景

  • 决策树(Decision Tree)算法详细介绍
    • 一、 决策树的基本结构
    • 二、 决策树的核心问题:如何选择划分特征?
      • 1. 信息增益(ID3算法)
        • (1) 前置概念:信息熵
        • (2) 信息增益的定义
        • (3) 缺点
      • 2. 信息增益率(C4.5算法)
      • 3. 基尼系数(CART算法)
        • (1) 基尼系数的定义
        • (2) 特征的基尼指数
    • 三、 决策树的训练与剪枝
      • 1. 决策树的生成过程
      • 2. 决策树的剪枝:解决过拟合问题
        • (1) 预剪枝(Pre-pruning)
        • (2) 后剪枝(Post-pruning)
    • 四、 决策树的优缺点与适用场景
      • 优点
      • 缺点
      • 适用场景
    • 五、 决策树与逻辑回归的核心区别

决策树(Decision Tree)算法详细介绍

决策树是机器学习中经典的分类与回归算法,它的核心思想是模拟人类的决策过程——通过对数据特征的层层判断,最终得到分类或回归结果。决策树的结构直观易懂,就像一棵“判断树”,自上而下包含根节点、内部节点、叶节点,无需复杂的数学推导就能解释预测逻辑。

一、 决策树的基本结构

一棵完整的决策树由三类节点组成:

  1. 根节点:树的最顶端,是整个决策过程的起点,包含全部训练数据,并基于某个特征进行第一次划分。
    例:预测“是否购买电脑”,根节点可以是“年龄”。
  2. 内部节点:树的中间节点,代表一次特征判断,每个内部节点都会将数据划分为多个子集。
    例:根节点“年龄”划分为“青年、中年、老年”三个分支,每个分支对应一个内部节点,可继续用“收入”“信用等级”等特征划分。
  3. 叶节点:树的最底端,代表最终的决策结果(分类任务是类别,回归任务是连续值),叶节点不再划分数据。
    例:“购买电脑=是”“购买电脑=否”就是叶节点。

核心逻辑:从根节点出发,每一步根据特征的判断结果走不同分支,最终落到叶节点,得到预测结论。

二、 决策树的核心问题:如何选择划分特征?

决策树的训练过程,本质是选择最优特征对数据进行划分——让划分后的子集尽可能“纯净”(即子集内的数据属于同一类别)。衡量“纯净度”的指标有三种,对应不同的决策树算法。

1. 信息增益(ID3算法)

(1) 前置概念:信息熵

信息熵是衡量数据混乱程度的指标,熵越高,数据越混乱;熵越低,数据越纯净。
对于数据集D DD,假设包含K KK个类别,第k kk类样本占比为p k p_kpk,则信息熵公式为:
E n t ( D ) = − ∑ k = 1 K p k log ⁡ 2 p k Ent(D) = -\sum_{k=1}^K p_k \log_2 p_kEnt(D)=k=1Kpklog2pk

  • D DD中所有样本都是同一类别(完全纯净),E n t ( D ) = 0 Ent(D)=0Ent(D)=0
  • D DD中样本均匀分布在所有类别(最混乱),E n t ( D ) Ent(D)Ent(D)最大。
(2) 信息增益的定义

信息增益表示通过某个特征划分数据后,信息熵的减少量。减少量越大,说明这个特征的划分效果越好。
假设特征A AA将数据集D DD

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/5/31 4:58:43

Python复利计算器(按日复利)——输入本金、年化收益率和天数,自动计算总收益

本文介绍了一个使用 Python 编写的简易复利计算器,支持按日复利计算。用户只需输入本金、年化收益率(以百分比表示)和投资天数,程序即可自动计算出期末总金额与总收益。代码结构清晰、易于理解,适合理财初学者或编程爱好者参考使用,也可作为金融计算小工具快速估算投资回…

作者头像 李华
网站建设 2026/6/8 17:12:47

如何让老Mac焕发新生:OpenCore Legacy Patcher终极指南

如何让老Mac焕发新生:OpenCore Legacy Patcher终极指南 【免费下载链接】OpenCore-Legacy-Patcher 体验与之前一样的macOS 项目地址: https://gitcode.com/GitHub_Trending/op/OpenCore-Legacy-Patcher 您是否拥有一台性能依然强劲的老款Mac,却因…

作者头像 李华
网站建设 2026/5/10 4:35:51

5分钟快速掌握原神成就管理的完整方案

5分钟快速掌握原神成就管理的完整方案 【免费下载链接】YaeAchievement 更快、更准的原神成就导出工具 项目地址: https://gitcode.com/gh_mirrors/ya/YaeAchievement 还在为记录原神成就而烦恼吗?想要一个简单高效的解决方案来管理您的游戏成就数据吗&#…

作者头像 李华
网站建设 2026/5/30 20:59:29

Qwen2.5-0.5B金融轻应用:个人理财助手部署完整流程

Qwen2.5-0.5B金融轻应用:个人理财助手部署完整流程 1. 引言:为什么需要轻量级大模型做个人理财? 随着个人财务数据的快速增长,用户对智能化理财建议的需求日益提升。然而,传统基于云服务的大模型方案存在隐私泄露、响…

作者头像 李华
网站建设 2026/6/9 22:01:33

BetterNCM插件管理器终极使用指南:解锁网易云音乐的无限可能

BetterNCM插件管理器终极使用指南:解锁网易云音乐的无限可能 【免费下载链接】BetterNCM-Installer 一键安装 Better 系软件 项目地址: https://gitcode.com/gh_mirrors/be/BetterNCM-Installer BetterNCM插件管理器是一款专为网易云音乐PC客户端设计的革命性…

作者头像 李华
网站建设 2026/6/7 0:13:08

使用Image2Lcd生成单色位图:超详细版配置指南

如何用 Image2Lcd 高效生成单色位图?一位嵌入式工程师的实战全记录 在做STM32项目时,客户突然说:“启动画面能不能加个Logo?” 我点点头,心里却开始打鼓——这可不是直接把PNG拖进Keil就能搞定的事。我们用的是12864的…

作者头像 李华