当前位置: 首页 > news >正文

机器学习基础 - 分类模型之决策树

决策树


文章目录

  • 决策树
    • 简介
    • 决策树三要素
    • 1. 特征的选择
      • 1. ID3
      • 2. C4.5
      • 3. CART
    • 2. 剪枝处理
      • 0. 剪枝的作用
      • 1. 预剪枝
      • 2. 后剪枝
    • QA
      • 1. ID3, C4.5, CART 这三种决策树的区别
      • 2. 树形结构为何不需要归一化?
      • 3. 分类决策树与回归决策树的区别
      • 4. 为何信息增益会偏向多取值特征?
      • 4. 为何信息增益会偏向多取值特征?

算法划分标准
ID3信息增益
C4.5信息增益率
CART基尼系数

简介

决策树是一个分而治之的递归过程。

  • 开始,构建根节点,将所有训练数据都放在根节点。
  • 然后,选择一个最优特征,按照这一特征将训练数据集分割成子集,使得各个子集有一个在当前条件下最好的分类。
  • 如果子集未分类完毕,则在子集中选择一个最优特征,继续进行划分,直到所有训练数据子集都被正确分类或没有合适的特征为止。

决策树三要素

  • 特征选择: 从训练数据中众多的特征中选择一个特征作为当前节点的分裂标准,如何选择特征有着很多不同量化评估标准标准,从而衍生出不同的决策树算法。
  • **决策树生成:**根据选择的特征评估标准,从上至下递归地生成子节点,直到数据集不可分则停止决策树停止生长。
  • **决策树的修剪:**决策树容易过拟合,一般来需要剪枝,缩小树结构规模、缓解过拟合。剪枝技术有预剪枝和后剪枝两种。

1. 特征的选择

有三种方法进行特征选择:ID3: 信息增益,C4.5: 信息增益比,CART: 基尼系数

1. ID3

思想: 计算所有特征划分数据集D,得到多个特征划分数据集D的信息增益,从这些信息增益中选择最大的,因而当前结点的划分特征便是使信息增益最大的划分所使用的特征。

1.对当前例子集合,计算各属性的信息增益;
2.选择信息增益最大的属性Ak;
3.把在Ak处取值相同的例子归于同一子集,Ak取几个值就得几个子集;
4.对既含正例又含反例的子集,递归调用建树算法;
5.若子集仅含正例或反例,对应分枝标上P或N,返回调用处。

信息增益: 度量以某特征划分数据集前后的信息熵的差值。 信息熵能够表示样本集合的不确定性,因此我们能够通过前后集合信息熵的差值来衡量使用当前特征对于样本集合D划分效果的好坏。

假设划分前样本集合D的熵为 H ( D ) H(D) H(D)。使用某个特征A划分数据集D,计算划分后的数据子集的熵为 H ( D ∣ A ) H(D|A) H(DA)
信息熵: H ( D ) = − ∑ k = 1 k ∣ C k ∣ ∣ D ∣ l o g 2 ∣ C k ∣ ∣ D ∣ 条件熵: H ( D ∣ A ) = ∑ i = 1 n ∣ D i ∣ ∣ D ∣ H ( D i ) 信息增益: g ( D , A ) = H ( D ) − H ( D ∣ A ) 信息熵:H(D) = - \sum_{k=1}^k \frac{|C_k|}{|D|} log_2 \frac{|C_k|}{|D|} \\ 条件熵: H(D|A) = \sum_{i=1}^n \frac{|D_i|}{|D|} H(D_i) \\ 信息增益: g(D,A)=H(D)-H(D|A) 信息熵:H(D)=k=1kDCk

相关文章:

  • 【AI】SpringAI 第五弹:接入千帆大模型
  • FastText 模型文本分类实验:从零到一的实战探索
  • C# AppContext.BaseDirectory 应用程序的启动目录
  • django之数据的翻页和搜索功能
  • python 脚本引用django中的数据库model
  • L2-1、打造稳定可控的 AI 输出 —— Prompt 模板与格式控制
  • Python爬虫实战:获取xie程网敦煌酒店数据并分析,为51出行做参考
  • 火语言RPA--Ftp创建目录
  • 刷题之路:C++ 解题分享与技术总结
  • Mysql--基础知识点--79.1--双主架构如何避免回环复制
  • 设备预测性维护系统部署成本:技术架构与成本优化策略解析
  • JVM虚拟机-类加载器、双亲委派模型、类装载的执行过程
  • 【MySQL高级】锁,日志
  • 子网划分的学习
  • YOLOv8 优化创新:Damo-YOLO 配合 DyHead 检测头的性能突破
  • 【无人机】问题分析。查看电机转速时,四个电机转速不一致,QGC中检测到电机转速不均衡
  • 理解字符设备、设备模型与子系统:以 i.MX8MP 平台为例
  • Redis的数据持久化是怎么做的?
  • 飞算 JavaAI 与 Spring Boot:如何实现微服务开发效率翻倍?
  • dolphinscheduler实现(oracle-hdfs-doris)数据ETL
  • 比亚迪一季度日赚亿元,净利润同比翻倍至91.55亿元
  • 世联行:2024年营业收入下降27%,核心目标为“全面消除亏损公司和亏损项目”
  • 科克托是说真话的骗子,而毕加索是一言不发、让大家去猜的人
  • 加拿大财长:加拿大需要抗击美国关税
  • 限时离境、关闭领空、暂停贸易,巴基斯坦宣布一系列对印反制措施
  • 商务部召开外资企业圆桌会