机器学习第十五讲:决策树全面讲解:像玩"20个问题"游戏猜身份🎮

资料取自《零基础学机器学习》
查看总目录:学习大纲

关于DeepSeek本地部署指南可以看下我之前写的文章:DeepSeek R1本地与线上满血版部署:超详细手把手指南


认识决策树:人脑思维的数据画法

决策树就像一个智能版的流程图,通过层层提问把复杂问题拆解成简单判断。就像玩猜人游戏时不断问"是男生吗?""戴眼镜吗?"逐步缩小范围1

graph TD
    A[贷款申请额度>5万?] -->|Yes| B[收入证明完整?]
    A -->|No| C[直接批准]
    B -->|Yes| D[查询信用良好?]
    B -->|No| E[拒绝]
    D -->|Yes| F[批准]
    D -->|No| G[补充抵押材料]

银行放贷实战案例💰

银行用历史数据训练决策树模型:

  1. 根节点决策:首先看贷款额度是否超过5万1

    • ≤5万:直接批准(低风险)
    • >5万:进入第二步审核
  2. 分支判断:检查申请人收入证明是否齐全

    • 不齐全:拒绝申请
    • 齐全:查信用记录
  3. 叶节点结论

    • 信用良好 ➔ 批准
    • 信用差 ➔ 要求抵质押

3大核心部件解析

节点类型

  • 根节点:起始问题(最重要特征)
  • 内部节点:中间判断
  • 叶节点:最终结论

分裂标准
基尼系数衡量"数据纯度",像考试作弊检测:

  • 全班50%作弊 ➔ 混乱值最高(基尼=0.5)
  • 全班作弊0% ➔ 最纯净(基尼=0)1

停止条件
当出现以下情况停止生长:

  • 所有样本分类完成 ✅
  • 进一步分裂无法降低混乱值 🚫
  • 达到预设最大深度 (防过度复杂)

鸢尾花分类实战🌺

书中案例用花瓣长度/宽度识别花朵品种:

flowchart TD
    Q1{花瓣长度<2.45cm?}
    Q1 -->|Yes| 结论1[山鸢尾]
    Q1 -->|No| Q2{花瓣宽度<1.75cm?}
    Q2 -->|Yes| 结论2[变色鸢尾]
    Q2 -->|No| 结论3[维吉尼亚鸢尾]

仅通过两个问题就能准确分类三种花,准确率达95%1

四大独特优势

🌟 白盒模型:决策过程像解题步骤清晰可见
🌟 兼容混合数据:能处理金额(数值型)和婚姻状况(类别型)
🌟 自动特征选择:优先用区分度最高的特征提问1
🌟 抗噪声能力:允许部分数据缺失(不像线性回归需要完整数据)

需要注意的坑🕳

  • 防止过拟合:树太深会背答案,遇到新题就蒙圈(解决方法:剪枝)
  • 样本均衡:如果90%的数据都是"拒绝贷款",模型会倾向全选拒绝
  • 连续特征处理:年龄分段要合理(如20-30岁 vs 31-40岁)

通过这种"剥洋葱式"的层层追问,决策树让复杂判断变得像走迷宫一样直观。配合书中Kaggle实战案例动手练习,你会深刻理解这种算法的智慧1


目录:总目录
上篇文章:机器学习第十四讲:线性回归 → 画最佳趋势线预测明日气温



  1. 《零基础学机器学习》 第五章第三节树模型

kovli
13 声望8 粉丝