吃透《西瓜书》第四章 决策树定义与构造、ID3决策树、C4.5决策树、CART决策树

这篇具有很好参考价值的文章主要介绍了吃透《西瓜书》第四章 决策树定义与构造、ID3决策树、C4.5决策树、CART决策树。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

目录

一、基本概念

1.1 什么是信息熵?

1.2 决策树的定义与构造

二、决策树算法

2.1 ID3 决策树

2.2 C4.5 决策树

2.3 CART 决策树 


一、基本概念

1.1 什么是信息熵?

信息熵:

熵是度量样本集合纯度最常用的一种指标,代表一个系统中蕴含多少信息量,信息量越大表明一个系统不确定性就越大,就存在越多的可能性,即信息熵越大

吃透《西瓜书》第四章 决策树定义与构造、ID3决策树、C4.5决策树、CART决策树,# 吃透西瓜书,决策树,算法,机器学习,人工智能

1.2 决策树的定义与构造

决策树是一种基于树形结构来进行决策的算法,它的主要原理是将数据集划分为一系列小的子集,每个子集称为一个决策树的“节点”,决策树的分支表示不同的决策路径,叶节点表示最终的决策结果。

在决策树的建立过程中,通常采用的是自顶向下的贪心策略,即每次选择最优的划分特征来进行节点的分裂,直到满足停止条件为止。

在选择最优的划分特征时,需要使用一些评估指标,如信息增益、基尼指数等来评估每个特征的划分能力,并选择具有最大划分能力的特征作为节点的分裂特征。

 文章来源地址https://www.toymoban.com/news/detail-676875.html

一般的,一棵决策树包含一个根结点、若干个内部结点和若干个叶结点;

叶结点对应于决策结果,其他每个结点则对应于一个属性测试:

每个结点包含的样本集合根据属性测试的结果被划分到子结点中

根结点包含样本全集.从根结点到每个叶结点的路径对应了一个判定测试序列,决策树学习的目的是为了产生一棵泛化能力强,即处理未见示例能力强的决策树,其基本流程遵循简单的“分而治之”

吃透《西瓜书》第四章 决策树定义与构造、ID3决策树、C4.5决策树、CART决策树,# 吃透西瓜书,决策树,算法,机器学习,人工智能

最关键的在第  8  行

如何选择最优划分属性

 

吃透《西瓜书》第四章 决策树定义与构造、ID3决策树、C4.5决策树、CART决策树,# 吃透西瓜书,决策树,算法,机器学习,人工智能

决策树的构造是一个递归的过程,有三种情形会导致递归返回:

(1) 当前结点包含的样本全属于同一类别,这时直接将该节点标记为叶节点,并设为相应的类别

对应第 2 行的 if 语句

(2) 当前属性集为空,或是所有样本在所有属性上取值相同,无法划分,这时将该节点标记为叶节点,并将其类别设为该节点所含样本最多的类别;

对应第 5 行的 if 语句

(3) 当前结点包含的样本集合为空,不能划分,这时也将该节点标记为叶节点,并将其类别设为父节点中所含样本最多的类别。

对应第 11 行的 if 语句

二、决策树算法

2.1 ID3 决策树

ID3 决策树使用信息增益为准则来选择划分属性

信息增益: 在已知属性 (特征)a的取值后的不确定性减少的量,也即纯度的提升

信息熵 度量随机变量 X 的不确定性  越大越不确定!

吃透《西瓜书》第四章 决策树定义与构造、ID3决策树、C4.5决策树、CART决策树,# 吃透西瓜书,决策树,算法,机器学习,人工智能

吃透《西瓜书》第四章 决策树定义与构造、ID3决策树、C4.5决策树、CART决策树,# 吃透西瓜书,决策树,算法,机器学习,人工智能

吃透《西瓜书》第四章 决策树定义与构造、ID3决策树、C4.5决策树、CART决策树,# 吃透西瓜书,决策树,算法,机器学习,人工智能

 吃透《西瓜书》第四章 决策树定义与构造、ID3决策树、C4.5决策树、CART决策树,# 吃透西瓜书,决策树,算法,机器学习,人工智能

信息增益越大,表示使用该属性划分样本集D的效果越好

因此ID3算法在递归过程中,每次选择最大信息增益的属性作为当前的划分属性

举例:

吃透《西瓜书》第四章 决策树定义与构造、ID3决策树、C4.5决策树、CART决策树,# 吃透西瓜书,决策树,算法,机器学习,人工智能

 吃透《西瓜书》第四章 决策树定义与构造、ID3决策树、C4.5决策树、CART决策树,# 吃透西瓜书,决策树,算法,机器学习,人工智能

吃透《西瓜书》第四章 决策树定义与构造、ID3决策树、C4.5决策树、CART决策树,# 吃透西瓜书,决策树,算法,机器学习,人工智能

 显然,属性“纹理”的信息增益最大,于是它被选为划分属性

划分结果:

吃透《西瓜书》第四章 决策树定义与构造、ID3决策树、C4.5决策树、CART决策树,# 吃透西瓜书,决策树,算法,机器学习,人工智能

2.2 C4.5 决策树

 

ID3算法存在一个问题,就是偏向于取值数目较多的属性,例如:如果存在一个唯一标识,这样样本集D将会被划分为|D|个分支,每个分支只有一个样本,这样划分后的信息熵为零,十分纯净,但是对分类毫无用处。

因此C4.5算法使用了“增益率”(gain ratio)来选择划分属性,来避免这个问题带来的困扰。 

吃透《西瓜书》第四章 决策树定义与构造、ID3决策树、C4.5决策树、CART决策树,# 吃透西瓜书,决策树,算法,机器学习,人工智能

C4.5决策树并未完全使用“增益率”代替“信息增益”,而是采用一种启发式的方法先选出信息增益高于平均水平的属性,然后再从中选择增益率最高的。

首先使用ID3算法计算出信息增益高于平均水平的候选属性,接着C4.5计算这些候选属性的增益率。

2.3 CART 决策树 

CART决策树使用“基尼指数”(Gini index)来选择划分属性,基尼指数反映的是从样本集D中随机抽取两个样本,其类别标记不一致的概率,因此Gini(D)越小越好,越小表明碰到的异类的概率越小,纯度就越高

吃透《西瓜书》第四章 决策树定义与构造、ID3决策树、C4.5决策树、CART决策树,# 吃透西瓜书,决策树,算法,机器学习,人工智能吃透《西瓜书》第四章 决策树定义与构造、ID3决策树、C4.5决策树、CART决策树,# 吃透西瓜书,决策树,算法,机器学习,人工智能

基尼指数越小,表明集合越纯 

选择基尼指数最小的属性作为最优划分属性

 

到了这里,关于吃透《西瓜书》第四章 决策树定义与构造、ID3决策树、C4.5决策树、CART决策树的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 在西瓜数据集上用Python实现ID3决策树算法完整代码

    在西瓜数据集上用Python实现ID3决策树算法完整代码 1、决策树算法代码ID3.py 2、可视化决策树代码visual_decision_tree.py 3、贴几张运行结果图 1、生成的可视化决策树 2、代码运行结果 输出每次划分的每个属性特征的信息增益以及最后的决策树 3、记事本上手动跑程序的草图

    2024年02月08日
    浏览(34)
  • 第四章-边界安全

    1)什么是防火墙 墙,始于防,忠于守。从古至今,墙予人以安全之意。 防御外网对内网的入侵 防火墙是一种 网络安全设备或系统 ,用于监控和控制网络流量,防止未经授权的访问和攻击。防火墙可以根据预定的规则和策略,过滤入站和出站数据包,保护网络的安全性和完

    2024年01月19日
    浏览(40)
  • 第四章网关

    Spring Cloud Gateway 是 Spring Cloud 的一个全新项目,该项目是基于 Spring 5.0,Spring Boot 2.0 和 Project Reactor 等响应式编程和事件流技术开发的网关,它旨在为微服务架构提供一种简单有效的统一的 API 路由管理方式。 Gateway网关是我们服务的守门神,所有微服务的统一入口。 网关的核

    2024年02月10日
    浏览(38)
  • 第四章 路由基础

    目录 4.1 路由器概述 4.1.1 路由器定义 4.1.2 路由器工作原理 4.1.3 路由表的生成方式 (1)直连路由 (2)静态路由 (3)动态路由 4.1.4 路由器的接口 (1)配置接口 (2)局域网接口 (3)广域网接口 4.1.5 路由器的硬件连接 (1)局域网线缆:双绞线 (2)广域网接口 (3)配置专

    2024年02月08日
    浏览(53)
  • linux第四章(网络)

    在配置前首先查看本机的ensXX信息:cat ens160.nmconnection 看本机配置:cd /etc/NetworkManager/                       cd  system-connextions/    ls 一。接口管理命令:ip命令/nmcli命令/nmtui命令 1.对IP地址进行操作: ip的命令: IP link:显示网络设备的运行状态 ip -s show ens160:查看设备(en

    2024年01月19日
    浏览(34)
  • 四,Eureka 第四章

           2.3.4修改主启动类 标注为Eureka客户端           springcloud-eureka-sever-7001 springcloud-eureka-sever-7001   springcloud-eureka-sever003           5.25编写PaymentMapper接口   5.    

    2024年02月15日
    浏览(74)
  • 第四章 数组

    可以多看几遍视频 把上课的代码,自己加加注释,在自己写之前,可以画一个流程图 照着流程图把代码自己实现一遍 不要怀疑自己,不要遇到困难就觉得自己不行,遇到困难就解决困难,编程初学者都是这样一步一步走过来的。 在指针阶段会演示整型、浮点型、字符型传递

    2024年02月12日
    浏览(35)
  • 第四章,登录注册

    目录 4.1 添加注册页面 4.2 注册表单验证 4.3提交注册信息 4.4 完善注册功能

    2024年02月12日
    浏览(27)
  • 第四章 单例模式

    代码示例 优缺点:可能会造成内存的浪费,但也只能浪费内存 代码示例 代码示例 缺点:多线程不安全 缺点效率太低 在类加载时,静态内部类没有调用是不会进行类加载的,当被调用时才会被加载,而且只加载一次,加载时线程安全 优缺点

    2023年04月21日
    浏览(39)
  • 第四章 Text

    在本章中,您将学习如何在页面上绘制文本。 绘图文本是 PDF 图形中最复杂的部分,但它也是帮助 PDF 击败竞争对手成为当今国际标准的原因。 当其他原始播放器将文本转换为光栅图像或矢量路径(以保持视觉完整性)时,PDF 的发明者知道用户需要可以搜索和复制的文本,而

    2024年02月06日
    浏览(34)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包