决策树中的相关概念

ops/2025/1/12 5:10:24/

目录

算法介绍

基本概念:

节点

信息熵(Information Entropy)

条件熵(Conditional Entropy)

python中计算对数

分类标准

信息增益(ID3(Iterative Dichotomiser 3)算法的评估标准)

信息增益率(C4.5 算法的评估标准)

基尼系数(CART(Classification and Regression Tree)算法的评估标准)


算法介绍

决策树是一种非常直观且易于理解的机器学习算法

决策树通过对数据特征的一系列判断来进行分类或预测。

基本概念:
节点
  • 根节点:第一个节点,决策树的开始节点。

  • 非叶子节点(内部节点):中间节点,基于特征进行条件判断的节点。

  • 叶节点:最终结果节点,表示最终的分类或预测结果。

信息熵(Information Entropy)

信息熵是信息论中的一个概念,用于度量随机变量的不确定性。

决策树算法机器学习场景中,信息熵通常用于衡量数据集的混乱程度或不确定性。

计算公式:

举个例子:以下两个集合的熵值谁更大呢

条件熵(Conditional Entropy)

条件熵是在给定某个条件下,随机变量的不确定性。

假设随机变量X 和 Y,条件熵H(Y|X) 表示在已知随机变量X 的取值的情况下,随机变量 Y的不确定性。

联合概率密度的计算公式:

条件熵的计算公式:

举个例子:

假设有两个随机变量 X 和 Y,X 表示天气(晴、雨),Y 表示是否适合运动(是、否)。它们的联合概率分布如下:

X\Y
0.30.2
0.40.1
python中计算对数

如何计算这个式子的答案呢

在 Python 中,可以使用math 库来计算对数。上面的式子可以这么写

import math
result=-9/14*math.log(9/14,2)-5/14*math.log(5/14,2)

分类标准

构建决策树的关键在于选择合适的特征和划分点,一般而言,随着划分过程的不断进行,我们自然希望决策树各分支结点所包含的样本尽可能属于同一类别,即结点的 “纯度” (purity) 越来越高。本篇文章将介绍几类较为主流的衡量指标(信息增益、信息增益率、基尼系数)。

我们以一个分类问题为例,贯穿在接下来要讲的计算 ID3、C4.5 和 CART 算法的特征选择过程。

天气温度湿度是否出去玩
信息增益(ID3(Iterative Dichotomiser 3)算法的评估标准)

信息增益基于信息熵的概念,选择使信息熵减少最多的特征进行分裂。

  1. 特征选择标准:使用信息增益来选择特征。信息增益是基于信息熵的概念,它衡量了使用某个特征进行划分后,数据集的信息不确定性减少的程度。

  2. 局限性:倾向于选择具有较多取值的特征,可能导致过拟合。对于连续型特征,需要先进行离散化处理。

  3. 优点:算法简单直观,易于理解和实现。

信息增益为:1-0.693=0.307

同理计算 “温度” 和 “湿度” 特征的信息增益。

假设 “温度” 特征的信息增益为 0.2,“湿度” 特征的信息增益为 0.1。

由于 “天气” 特征的信息增益最大,所以 ID3 算法会选择 “天气” 特征作为根节点进行分裂。

信息增益率(C4.5 算法的评估标准)

信息增益比则对信息增益进行了归一化处理,克服了信息增益偏向取值较多的特征的问题。

  1. 特征选择标准:是 ID3 算法的改进,采用信息增益比来选择特征。信息增益比克服了 ID3 中信息增益偏向选择取值多的特征的不足。

  2. 处理连续属性:能够直接处理连续型特征,通过对连续特征进行排序和离散化来构建决策树

  3. 优点:在特征选择和防止过拟合方面比 ID3 更优,生成的决策树更加准确和稳健。

基尼系数(CART(Classification and Regression Tree)算法的评估标准)

基尼系数反映了从数据集中随机抽取两个样本,其类别不一致的概率。

  1. 用途:既可以用于分类问题,也可以用于回归问题。

  2. 特征选择标准:对于分类问题使用基尼系数,对于回归问题使用平方误差最小化。

  3. 生成结构:生成的是二叉树,即每次分裂都将数据集分为两部分。

  4. 优点:在处理复杂数据和大型数据集时表现较好,并且在分类和回归任务中都有不错的效果。


http://www.ppmy.cn/ops/149355.html

相关文章

MySQL 5.7 全解析:从新手小白到进阶高手

一、MySQL 5.7 入门指南 MySQL 是一款广受欢迎的开源关系型数据库管理系统,由 Oracle 公司维护并开发。MySQL 5.7 版本在性能、功能和稳定性方面都有显著提升,为用户提供了高效可靠的数据存储与管理解决方案。无论是小型项目的快速开发,还是…

sql server cdc漏扫数据

SQL Server的CDC指的是“变更数据捕获”(Change Data Capture)。这是SQL Server数据库提供的一项功能,能够跟踪并记录对数据库表中数据所做的更改。这些更改包括插入、更新和删除操作。CDC可以捕获这些变更的详细信息,并使这些信息…

基于人脸识别和 MySQL 的考勤管理系统实现

在现代企业和机构中,考勤管理系统是日常运营中不可或缺的一部分。传统的考勤方式(如打卡、指纹识别等)有时会因为各种原因导致管理效率低下或员工作弊。然而,随着人脸识别技术的飞速发展,基于人脸识别的考勤管理系统正…

mac使用 —— win转mac的记录

文件管理 mac沿用了unix的文件树设计,每个文件都有其父文件,最终父文件为根目录。 mac的应用以资源库的方式管理文件,资源库本质也是一个文件夹 常用命令: cd dirname: ~当前用户根目录, ..退回 pwd:当前路径,ls目…

微信小程序获取图片使用session(上篇)

概述&#xff1a; 我们开发微信小程序&#xff0c;从后台获取图片现实的时候&#xff0c;通常采用http get的方式&#xff0c;例如以下代码 <image class"user_logo" src"{{logoUrl}}"></image>变量logoUrl为ur图片l的请求地址 但是对于很多…

ZYNQ初识10(zynq_7010)UART通信实验

基于bi站正点原子讲解视频&#xff1a; 系统框图&#xff08;基于串口的数据回环&#xff09;如下&#xff1a; 以下&#xff0c;是串口接收端的波形图&#xff0c;系统时钟和波特率时钟不同&#xff0c;为异步时钟&#xff0c;&#xff0c;需要先延时两拍&#xff0c;将时钟同…

ReLU激活函数在卷积神经网络中的作用

引言 想象一下&#xff0c;你正在玩一个拼图游戏&#xff0c;需要把许多小图片拼成一幅大画。在这个过程中&#xff0c;有些小图片是亮色的&#xff0c;有些是暗色的。为了让拼好的大画更清晰、更漂亮&#xff0c;你需要把那些太暗的小图片变得更亮一些&#xff0c;同时保持亮…

单向循环链表的约瑟夫环问题

编号为1到n的n个人围成一圈。从编号为1的人开始报数&#xff0c;报到m的人离开。下一个人继续从1开始报数。n-1轮结束以后&#xff0c;只剩下一个人&#xff0c;问最后留下的这个人编号是多少&#xff1f; typedef struct ListNode {int val;struct ListNode* next; }ListNode…