决策树(Decision Tree)

决策树模型(Decision Tree) P1P_1P1​:表一种类别的数据占总数居的比例。P01−P1P0​1−P1​:表示除了P1P_1P1​类别以外的其他数据占总数据的比例。 阅读详情

 决策树的生成过程主要分为:特征选择、决策树生成、剪枝(预防过拟合)等。

特征选择的参数依据主要有信息增益、增益率、基尼指数等,来度量数据的纯度。

信息增益:

熵是随机变量不确定性的度量单位,取值越大,不确定性越大,数据纯度越低,从样本数据中随机抽取二个样本,其标签不同的概率越大。信息增益的计算方式为 “ 熵 - 条件熵”,反映为在一个条件下,信息不确定性减少的程度,数值越大越好,即为:

                                                      Gain(D,a) = Ent(D) - \sum \frac{|D^{v}|}{|D|}Ent(D^{_{v}}) 

以下为17条训练样本数据:

色泽    根蒂    敲声    纹理    脐部    触感    好瓜
青绿    蜷缩    浊响    清晰    凹陷    硬滑    是
乌黑    蜷缩    沉闷    清晰    凹陷    硬滑    是
乌黑    蜷缩    浊响    清晰    凹陷    硬滑    是
青绿    蜷缩    沉闷    清晰    凹陷    硬滑    是
浅白    蜷缩    浊响    清晰    凹陷    硬滑    是
青绿    稍蜷    浊响    清晰    稍凹    软粘    是
乌黑    稍蜷    浊响    稍糊    稍凹    软粘    是
乌黑    稍蜷    浊响    清晰    稍凹    硬滑    是
乌黑    稍蜷    沉闷    稍糊    稍凹    硬滑    否
青绿    硬挺    清脆    清晰    平坦    软粘    否
浅白    硬挺    清脆    模糊    平坦    硬滑    否
浅白    蜷缩    浊响    模糊    平坦    软粘    否
青绿    稍蜷    浊响    稍糊    凹陷    硬滑    否
浅白    稍蜷    沉闷    稍糊    凹陷    硬滑    否
乌黑    稍蜷    浊响    清晰    稍凹    软粘    否
浅白    蜷缩    浊响    模糊    平坦    硬滑    否
青绿    蜷缩    沉闷    稍糊    稍凹    硬滑    否

当选择“色泽”后,

Ent(D)= -(\frac{8}{17}log_{2}\frac{8}{17} + \frac{9}{17}log_{2}\frac{9}{17}) = 0.998

Ent(green) = -(\frac{3}{6}log_{2}\frac{3}{6} + \frac{3}{6}log_{2}\frac{3}{6}) = 1.000

Ent(black) = -(\frac{4}{6}log_{2}\frac{4}{6} + \frac{2}{6}log_{2}\frac{2}{6}) = 0.918

Ent(white) = -(\frac{1}{5}log_{2}\frac{1}{5} + \frac{4}{5}log_{2}\frac{4}{5}) = 0.722

Gain(D,color) = 0.998-(\frac{6}{17} * 1.000 + \frac{6}{17}* 0.918 + \frac{5}{17}* 0.722) = 0.109

增益率:

信息增益准则对可取值数目较多的属性有所偏好,增益率准则对可取值数目较少的属性有所偏好。

基尼指数:

 基尼指数原本是指在全部居民收入中,用于进行不平均分配的那部分收入所占的比例,0值代表剧名收入的绝对平均,正常值介于0~1之间。

Gini(D,a) = \sum \frac{|D^{v}|}{|D|}Gini(D^{_{v}})

Gini(D^{_{v}}) = 1 - \sum p^{_{k}}

以上述训练样本为例,先衡量属性“色泽”:

Gini(green) = 1 - (\frac{3}{6})^{^{2}} - (\frac{3}{6})^{^{2}}

Gini(black) = 1 - (\frac{2}{6})^{2}- (\frac{4}{6})^{2}

Gini(white) = 1 - (\frac{1}{5})^{2} - (\frac{1}{5})^{2}

Gini(D,color) = \frac{6}{17}Gini(green) + \frac{6}{17}Gini(black) + \frac{5}{17}Gini(white)

机器学习(三)决策树算法Decision Tree 上面两篇博客对机器学习有了简单的介绍,并介绍了机器学习中的一些基本的概念;下面我们来介绍机器学习中的第一个算法决策树算法DT(Decision Tree)。         介绍Decision Tree之前我先来引入一些经典的小例子来说明什么是决策树。如下面的图:                         在当今这个社会尤其是我们这群程序员对象是一个很头疼的问题 阅读详情

相关推荐

决策树模型(decision tree)

决策树是奠定机器学习基础的一类算法,著名的算法有ID3、C4.5、CART。模型理解起来较为简单,跟我们日常做决定类似。例如,你想要去商场买衣服,首先确定预算,这会过滤掉一大部分情况,随后确定款式,这又会导致你的选择范围更加小更加精确,接着,确定颜色等等,最终完成购买;当然决策树更常用的地方在分类上,就如同西瓜书上的西瓜判断一般,根据西瓜的特征一步一步去确定当前西瓜是否是好瓜。

Lonery的博客 718

『机器学习』 —— 决策树算法(Decision Tree)

决策树(Decision Tree) 1、机器学习算法中分类和预测算法的评估 准确率 速度 强壮性 可规模性 可解释性 2、什么是决策树(Decision Tree)? 决策树是一种类似流程图的树形结构,每个结点表示一个属性测试,每条边表示一个属性输出,每个树叶结点表示类或者类分布。决策树的决策过程需要从决策树的根节点开始,待测数据与决策树中的特征节...

Peter_Huang0623的博客 862

颜色分类leetcode-decision-tree:从零开始实现决策树引擎

颜色分类leetcode 决策树 从零开始实现决策树引擎 简单的演示 安装 从下载dec_tree_demo.jar 从命令行启动演示: java -jar dec_tree_demo.jar out.png 对于开发者 语言:Java 构建:Maven git 克隆 git://github.com/lagodiuk/decision-tree.git mvn -f 决策树/pom.xml 安装 将此项目作为 maven 依赖项添加到您的项目中。 简单的演示,它试图对圆内的点进行分类: 来源: import java.awt.Color ; import java.awt.image.BufferedImage ; import java.io.File ; import java.io.IOException ; import java.util.ArrayList ; import java.util.List ; import java.util.Map ; import java.util.Random ; import java.util.logging.Logger ;

递归&回溯&剪枝-子集

深搜&回溯&剪枝

weixin_69417428的博客 692

C语言实现的决策树算法

c语言实现的决策树算法,处理离散数据 实现得有点简单,附PPT介绍

Springboot项目中使用邮箱验证码注册登录的代码实现

本文介绍了在Spring Boot应用中实现邮箱验证码注册和登录功能的完整方案。文章首先概述了三种用户认证方式(邮箱验证码注册/登录和传统密码登录),然后详细说明了实现所需的技术栈(Spring Boot、Spring Security、JWT等)。重点阐述了邮件服务配置、验证码生成与存储的核心实现,包括QQ邮箱授权码获取、Thymeleaf邮件模板处理以及验证码缓存管理。最后展示了发送验证码和用户注册的API实现,为开发者提供了完整的参考方案。该方案兼顾安全性和用户体验,适合现代Web应用的用户认证需求。

BXCQ_xuan的技术专栏 | 实战干货·实践教程·学习笔记 1341

用递归算法解锁「子集」问题 —— LeetCode 78题解析

题目链接: 78. 子集 - LeetCode题目描述:给定一个整数数组 nums,返回该数组所有可能的子集(幂集)。示例:输入: nums = [1,2,3]输出: [[], [1], [2], [3], [1,2], [1,3], [2,3], [1,2,3]]

2301_80541270的博客 2116

Axure原型模板与元件库APP交互设计素材(附资料)

在Axure中,手机模型是展示APP或小程序界面效果的重要工具。通过导入手机模型元件,设计师可以更加直观地模拟真实设备的显示效果,从而更准确地评估设计的可行性和用户体验。Axure官方及第三方资源库中提供了多种品牌和型号的手机模型,如iPhone、Android等,设计师可以根据项目需求选择合适的模型进行使用。Axure作为一款强大的原型设计工具,为APP和小程序的设计与开发提供了丰富的界面组件元件库和交互设计素材。

招风的黑耳优快云 1984

leetcode 决策树

剑指 Offer II 047. 二叉树剪枝 给定一个二叉树 根节点 root ,树的每个节点的值要么是 0,要么是 1。请剪除该二叉树中所有节点的值为 0 的子树。 节点 node 的子树为 node 本身,以及所有 node 的后代。 class Solution { public TreeNode pruneTree(TreeNode root) { return afterOrder(root); } public TreeNode afterOr

wangaimin5的博客 715

ZLMediaKit源码分析(二)推流创建

ZLMediaKit推流结构体创建是在RtspSession::onRecv()之后。如何触发onRecv()请参考上一篇文章这里不在赘述。

cliffordl的专栏 5079

python特征选择pso_【来点干货】机器学习中常用的特征选择方法及非常详细的Python实例...

花费了很长时间整理编辑,转载请联系作者授权,违者必究。特征选择(Feature selection)是在构建预测模型的过程中减少输入变量的一个过程。它是机器学习中非常重要的一步并在很大程度上可以提高模型预测精度。这里我总结了一些机器学习中常见的比较有用的特征选择方法并附上相关python实现code。希望可以给大家一些启发。首先,我们为什么要进行特征选择呢?它有以下几个优点:减少过拟合:冗余数据常...

weixin_39927158的博客 1166

决策树分类器(DecisionTreeClassifier)

决策树 决策树是一种树型结构,其中每个内部节结点表示在一个属性上的测试,每一个分支代表一个测试输出,每个叶结点代表一种类别。 决策树学习是以实例为基础的归纳学习 决策树学习采用的是自顶向下的递归方法,其基本思想是以信息熵为度量构造一棵熵值下降最快的树。到叶子节点的处的熵值为零,此时每个叶结点中的实例都属于同一类。 最近在学习决策树的分类原理(DecisionTreeClassifier),决策树的划分依据之一是信息增益。 决策树的criterion可以选择’gini‘或者是’entropy‘。 基尼系数:

m0_52032201的博客 1万+

Containerd容器运行时的私有仓库镜像推送push和镜像拉取问题解决

向/etc/containerd/config.toml配置添加如下配置,然后重启containerd。向/etc/containerd/config.toml配置添加如下配置,然后重启containerd。通过crictl为k8s拉取镜像如下所示。可以通过ctr命令进行镜像推送。往私有仓库推送镜像如下。

Bulut0907 1万+

Decision Tree Model|决策树模型

本文介绍了决策树模型的基本概念和应用实例。决策树通过一系列条件判断对数据进行分类或回归预测,以猫分类为例,展示了决策树从根节点到叶节点的分类过程。文章还比较了四种基于相同特征集但结构不同的决策树,分析其差异原因(数据划分、特征重要性、随机性等),并指出评估决策树优劣的标准包括准确率、泛化能力和解释性。最后建议实践中可采用集成学习方法提升模型性能。更多计算机知识欢迎访问作者博客网站rn.berlinlian.cn。

m0_74462934的博客 1936

03. 线性规划与混合整数规划 (LP/MIP)

本文介绍了OR-Tools中的线性规划(LP)和混合整数规划(MIP)求解器。主要内容包括:1) LP/MIP的基本概念和数学形式,对比了LP、MIP、ILP和BIP的区别;2) OR-Tools支持的求解器类型,如GLOP、SCIP等,以及它们各自的特点和适用场景;3) 详细展示了如何使用GLOP求解器进行线性规划求解,包括变量定义、约束添加和目标函数设置;4) 介绍了SCIP求解器的配置和使用方法;5) 讨论了变量类型、约束类型、多目标优化等进阶功能。文章通过Java代码示例演示了如何实现一个完整的优化

智慧是做事用的 158

华为OD机考2025C卷 - 高矮个子排队(Java & Python& JS & C++ & C)

华为OD机考2025C卷 - 高矮个子排队。提供在线OJ刷题。Java、C++、Python、C语言、JavaScript题解,并提供完整思路讲解。

算法大师! 1683

决策树 Decision Tree

本文主要简单介绍了决策树的基本概念,优缺点,应用场景,决策树建模时的注意事项,python的实现方法,案例和模型参数等。

JasonH2021的博客 5396

STM32Cube高效开发教程<高级篇><FreeRTOS>(十八)-----软件定时器

一、 软件定时器概述声明:本人水平有限,博客可能存在部分错误的地方,请广大读者谅解并向本人反馈错误。本专栏博客参考《STM32Cube高效开发教程(高级篇)》,有意向的读者可以购买正版书籍辅助学习,本书籍由王维波老师、鄢志丹老师、王钊老师倾力打造,书籍内容干货满满。在FreeRTOS中,自动创建的任务有空闲任务和定时器服务任务。FreeRTOS可以通过定时器服务任务提供软件定时器功能。在某些对定时精度要求不太高,无须使用硬件定时器的情况下,我们可以使用FreeRTOS的软件定时器。

我的博客 157

决策树(Decision Tree,DT)

决策树(decision tree)是一种基本的分类与回归方法。 分类问题中,基于特征对实例进行分类的过程。 优点:模型具有可读性,分类速度快。 学习:利用训练数据,根据损失函数最小化的原则建立决策树模型。 预测:对新的数据,利用决策树模型进行分类。 决策树学习通常包括3个步骤:特征选择、决策树生成、决策树修剪。 Quinlan在1986年提出的ID3算法、1993年提出的C4.5算法 Breiman等人在1984年提出的CART算法

Michael是个半路程序员 5191

迈瑞BS系列全自动生化分析仪LIS协议接口手册(内含HL7和ASTM)

迈瑞BS系列全自动生化分析仪LIS协议接口手册,内含HL7和ASTM)

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

决策树(Decision Tree)

决策树(Decision Tree)算法应用案例: 1. 什么是决策树/判定树? 决策树是一个类似于流程图的树状结构。其中,每个内部结点表示在一个属性上的测试,每个分支代表一个属性输出,而每一个树叶结点代表类或类分布。树的最顶层是根结点。 2. 熵(Entropy)的概念: 抽象的“信息”该如何来度量? 1948年,香农提出了“信息熵”的概念。 一条信息的信息量大小和它的不确定...

Harrytsz的博客 6126

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

rapidminer decision tree(决策树)手册

决策树是类似于节点集合的树,旨在创建有关与类的值隶属关系或数字目标值估计值的决策。每个节点表示一个特定属性的拆分规则。对于分类,此规则将属于不同类的值分开,对于回归,它将它们分开,以便以最佳方式减少所选参数条件的误差。...

m0_56134806的博客 2666

Data-Structures-and-Algorithm-Analysis-in-Java.pdf

作者: Weiss, Mark A. 出版社: Addison Wesley Data Structures and Algorithm Analysis in Java is an “advanced algorithms” book that fits between traditional CS2 and Algorithms Analysis courses. In the old ACM Curriculum Guidelines, this course was known as CS7. This text is for readers who want to learn good programming and algorithm analysis skills simultaneously so that they can develop such programs with the maximum amo...

机器学习——决策树(Decision Tree)

决策树是一种模仿人类决策过程的机器学习算法,它通过学习简单的决策规则来预测目标变量的值。决策树模型由节点和边组成,形成一个树状结构。树的每个内部节点表示一个特征上的判断,每个边代表判断的结果,而每个叶子节点代表一个类别或决策结果。今天由我来向大家介绍决策树的相关算法以及如何构造和实现决策树。决策树(Decision Tree)是从一组无次序、无规则,但有类别标号的样本集中推导出的、树形表示的分类规则。一般的,一棵决策树包含一个根结点、若干个内部结点(中间结点)和若干个叶子结点。

zdx2585503940的博客 5482
上一篇: SVM(Support Vector Machine)
下一篇: 二个链表的第一个公共节点
云水谣CS
博客等级 码龄9年 8粉丝 268原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值