CART决策树-基尼指数(全网最详解)

文章目录

  • 一、基尼指数的定义
  • 二、基尼指数在CART决策树中的应用
  • 三、基尼指数与CART决策树的构建
    • 1.计算每个子集的基尼系数:
    • 2.计算基尼指数
    • 3.选择最优特征
    • 4.其余基尼指数
    • 5.构建决策树
  • 四、总结

CART决策树基尼指数是CART(Classification And Regression Tree)算法中用于分类任务的一种评估指标,主要用于衡量数据集的不纯度或不确定性。以下是关于CART决策树基尼指数的详细解释:

一、基尼指数的定义

基尼指数(Gini Index)表示从数据集中随机抽取两个样本,它们类别标记不一致的概率。对于一个包含K个类别的数据集D,其基尼指数的计算公式为:

G i n i 系数 ( D ) = ∑ k = 1 K p k ( 1 − p k ) = 1 − ∑ k = 1 K p k 2 Gini系数(D)= \sum_{k=1}^{K} p_k(1-p_k)=1-\sum_{k=1}^{K} p^{2}_k Gini系数(D)=k=1Kpk(1pk)=1k=1Kpk2
G i n i 指数 ( D , A ) = ∣ D 1 ∣ ∣ D ∣ G i n i 系数 ( D 1 ) + ∣ D 2 ∣ ∣ D ∣ G i n i 系数 ( D 2 ) Gini指数(D,A)=\frac{|D_1|}{|D|}Gini系数(D_1)+\frac{|D_2|}{|D|}Gini系数(D_2) Gini指数(D,A)=DD1Gini系数(D1)+DD2Gini系数(D2)

其中, p k p_k pk表示类别k在数据集D中的比例。基尼指数的取值范围在[0, 1]之间,值越小表示数据集的纯度越高,即属于同一类别的样本占比越大。

二、基尼指数在CART决策树中的应用

在构建CART分类树时,算法会根据基尼指数来选择最优的特征进行数据集的分割。具体步骤如下:

  • 计算基尼指数:对于每个特征,算法会尝试所有可能的切分点,并计算切分后左右子集的基尼指数。
  • 选择最佳切分:选择使得划分后基尼指数加权和最小的那个特征和切分点作为最优划分。加权和是根据子集大小(样本数量)来计算的。
  • 递归构建树:以选定的特征和阈值进行数据集的分割,然后对每个子集重复上述过程,直至满足停止条件(如节点中的样本都属于同一类别、达到预设的最大深度、节点中的样本数低于某个阈值等)。

三、基尼指数与CART决策树的构建

CART决策树的构建过程是一个递归的过程,通过不断选择最优特征和切分点来分割数据集,直到满足停止条件。基尼指数在这个过程中起到了关键作用,它帮助算法选择出能够最大程度降低数据集不纯度的特征和切分点。下面我们举例说明。
例:
在这里插入图片描述

1.计算每个子集的基尼系数:

首先计算各特征的基尼指数,选择最优特征以及其最优切分点。分别以 A 1 A_1 A1 A 2 A_2 A2 A 3 A_3 A3 A 4 A_4 A4表示年龄、有工作、有自己的房子和信贷情况4个特征,并以1,2,3表示年龄的值为青年、中年和老年,以1,2表示有工作和有自己的房子的值为是和否,以1,2,3表示信贷情况的值为非常好、好和一般.
对于子集 A 1 A_1 A1,我们计算其基尼指数Gini( A 1 A_1 A1),这涉及到计算 A 1 A_1 A1中每个类别的比例,并代入基尼指数公式。
同理,对于子集 A 2 A_2 A2 A 3 A_3 A3 A 4 A_4 A4,我们计算Gini( A 2 A_2 A2 A 3 A_3 A3 A 4 A_4 A4)。
特征 A 1 A_1 A1(年龄)的基尼系数:
首先我们代入公式:
G i n i ( D ) = ∑ k = 1 K p k ( 1 − p k ) = 1 − ∑ k = 1 K p k 2 Gini(D)= \sum_{k=1}^{K} p_k(1-p_k)=1-\sum_{k=1}^{K} p^{2}_k Gini(D)=k=1Kpk(1pk)=1k=1Kpk2
G i n i 指数 ( D , A ) = ∣ D 1 ∣ ∣ D ∣ G i n i 系数 ( D 1 ) + ∣ D 2 ∣ ∣ D ∣ G i n i 系数 ( D 2 ) Gini指数(D,A)=\frac{|D_1|}{|D|}Gini系数(D_1)+\frac{|D_2|}{|D|}Gini系数(D_2) Gini指数(D,A)=DD1Gini系数(D1)+DD2Gini系数(D2)
青年(5人,2人贷款)的基尼系数:
G i n i 系数 ( D 1 ) = 2 5 ∗ ( 1 − 2 5 ) + 3 5 ∗ ( 1 − 3 5 ) = 0.48 Gini系数(D_1)=\frac{2}{5}*(1-\frac{2}{5})+\frac{3}{5}*(1-\frac{3}{5})=0.48 Gini系数(D1)=52(152)+53(153)=0.48
G i n i 系数 ( D 1 ) = 2 ∗ 2 5 ∗ ( 1 − 2 5 ) = 0.48 Gini系数(D_1)=2*\frac{2}{5}*(1-\frac{2}{5})=0.48 Gini系数(D1)=252(152)=0.48
如果是类别是二分类,则基尼系数:
p ( 1 − p ) + ( 1 − p ) p = 2 p ( 1 − p ) p(1-p)+(1-p)p=2p(1-p) p(1p)+(1p)p=2p(1p)
非青年(10人,7人贷款)的基尼系数:
G i n i 系数 ( D 2 ) = 2 ∗ 7 10 ∗ ( 1 − 7 10 ) = 0.42 Gini系数(D_2)=2*\frac{7}{10}*(1-\frac{7}{10})=0.42 Gini系数(D2)=2107(1107)=0.42

2.计算基尼指数

A 1 = 1 A_1=1 A1=1(青年)条件下,D的基尼指数:
G i n i 指数 ( D , A 1 = 1 ) = 5 15 ∗ 0.48 + 10 15 ∗ 0.42 = 0.44 Gini指数(D,A_1=1)=\frac{5}{15}*0.48+\frac{10}{15}*0.42=0.44 Gini指数(D,A1=1)=1550.48+15100.42=0.44
总公式为:
G i n i 指数 ( D , A 1 = 1 ) = 5 15 ∗ [ 2 ∗ 2 5 ∗ ( 1 − 2 5 ) ] + 10 15 ∗ [ 2 ∗ 7 10 ∗ ( 1 − 7 10 ] = 0.44 Gini指数(D,A_1=1)=\frac{5}{15}*[2*\frac{2}{5}*(1-\frac{2}{5})]+\frac{10}{15}*[2*\frac{7}{10}*(1-\frac{7}{10}]=0.44 Gini指数(D,A1=1)=155[252(152)]+1510[2107(1107]=0.44
A 1 = 2 A_1=2 A1=2(中年)条件下,D的基尼指数:
G i n i 指数 ( D , A 1 = 2 ) = 5 15 ∗ [ 2 ∗ 3 5 ∗ ( 1 − 3 5 ) ] + 10 15 ∗ [ 2 ∗ 6 10 ∗ ( 1 − 6 10 ] = 0.48 Gini指数(D,A_1=2)=\frac{5}{15}*[2*\frac{3}{5}*(1-\frac{3}{5})]+\frac{10}{15}*[2*\frac{6}{10}*(1-\frac{6}{10}]=0.48 Gini指数(D,A1=2)=155[253(153)]+1510[2106(1106]=0.48
A 1 = 3 A_1=3 A1=3条件下,D的基尼:
G i n i 指数 ( D , A 1 = 3 ) = 5 15 ∗ [ 2 ∗ 4 5 ∗ ( 1 − 4 5 ) ] + 10 15 ∗ [ 2 ∗ 5 10 ∗ ( 1 − 5 10 ] = 0.44 Gini指数(D,A_1=3)=\frac{5}{15}*[2*\frac{4}{5}*(1-\frac{4}{5})]+\frac{10}{15}*[2*\frac{5}{10}*(1-\frac{5}{10}]=0.44 Gini指数(D,A1=3)=155[254(154)]+1510[2105(1105]=0.44

3.选择最优特征

由于 G i n i 指数 ( D , A 1 = 1 ) Gini指数(D,A_1=1) Gini指数(D,A1=1) G i n i 指数 ( D , A 1 = 3 ) Gini指数(D,A_1=3) Gini指数(D,A1=3)相等,且最小,所以 A 1 = 1 A_1=1 A1=1 A 1 = 3 A_1=3 A1=3都可以选作 A 1 A_1 A1的最优切点。

4.其余基尼指数

同理:
求特征 A 2 A_2 A2 A 3 A_3 A3的基尼指数:
G i n i ( D , A 2 = 1 ) = 0.32 Gini(D, A_2=1)=0.32 Gini(D,A2=1)=0.32
G i n i ( D , A 3 = 1 ) = 0.27 Gini(D,A_3=1)=0.27 Gini(D,A3=1)=0.27
由于 A 2 A_2 A2 A 3 A_3 A3只有一个切分点,所以它们就是最优切分点。
求特征 A 4 A_4 A4的基尼指数:
G i n i ( D , A 4 = 1 ) = 0.36 Gini(D,A_4=1)=0.36 Gini(D,A4=1)=0.36
G i n i ( D , A 4 = 2 ) = 0.47 Gini(D,A_4=2)=0.47 Gini(D,A4=2)=0.47
G i n i ( D , A 4 = 3 ) = 0.32 Gini(D, A_4=3)=0.32 Gini(D,A4=3)=0.32
G i n i ( D , A 4 = 3 ) Gini(D,A_4=3) Gini(DA4=3)最小,所以 A 4 = 3 A_4=3 A4=3为A的最优切分点。

5.构建决策树

A 1 A_1 A1 A 2 A_2 A2 A 3 A_3 A3 A 4 A_4 A4几个特征中, G i n i ( D , A 3 = 1 ) = 0.27 Gini(D,A_3=1)=0.27 Gini(DA3=1)=0.27最小,所以选择特征 A 3 A_3 A3为最优特征, A 3 = 1 A_3=1 A3=1为其最优切分点,于是根结点生成两个子结点,一个是叶结点.对另一个结点继续使用以上方法在 A 1 A_1 A1 A 2 A_2 A2 A 4 A_4 A4中选择最优特征及其最优切分点,结果是 A 2 = 1 A_2=1 A2=1依此计算得知,所得结点都是叶结点.

四、总结

基尼指数是CART决策树中用于分类任务的重要评估指标,它通过衡量数据集的不纯度来帮助算法选择最优的特征和切分点进行数据集的分割。在构建CART分类树时,基尼指数起到了关键作用,确保了决策树的准确性和泛化能力。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/52078.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

[C语言]-基础知识点梳理-文件管理

前言 各位师傅们好,我是qmx_07,今天给大家讲解文件管理的相关知识,也就是常见的 读取,删除一类的操作 文件 为什么要使用文件? 程序的数据是存储在电脑的内存中,如果程序退出,内存回收&…

Godot自定义快捷键(配置视图快捷键)

如图 这个没啥技术,但是配置快捷键的时候有讲究如图 选择万国码并且将前后左右下上(顶底)分别配置为123456。汝等自管记好,今后自有妙用(哈哈)效果如图

解决电脑突然断网没网,以太网无网络访问权限,本地连接时出错:地址仍未与网络终结点关联

帮同事处理网络问题,尝试了拔插网线,重启电脑,禁用启用以太网,都没有解决。 于是在**命令提示符(cmd)**中执行命令: ipconfig /release 按回车执行后,返回提示:本地连接时出错:地址…

什么是GD32 MCU读保护?

如今电子产品市场风云变幻,暗流汹涌,有没有小伙伴遇到自己费了大力气写出来的代码,很容易就被别人“借鉴”了,真的是让闻者伤心,听着落泪啊。 那有没有什么方法可以防止别人将你的代码从MCU读出来呢?答案当…

大众点评2024年6月全国全分类店铺基础信息数据库

大众点评的采集在2023年之前还是比较好采集的,很多接口不需要登录,即使登录一个帐号也可以采集很多,所以大约2023年8月以前的大众点评店铺字段非常丰富,几乎所有常见店铺字段都能采集。 2023年8月以后,大量接口权限变…

网安新声 | 网易云音乐崩了:网络安全如何守护在线体验

网安加社区【网安新声】栏目,汇聚网络安全领域的权威专家与资深学者,紧跟当下热点安全事件、剖析前沿技术动态及政策导向,以专业视野和前瞻洞察,引领行业共同探讨并应对新挑战的策略与可行路径。 8月19日,#网易云音乐崩…

企业高性能web服务器【Nginx详解】

一.Web 服务基础介绍 1.1 互联网发展历程 1993年3月2日,中国科学院高能物理研究所租用AT&T公司的国际卫星信道建立的接入美国SLAC国家实 验室的64K专线正式开通,成为我国连入Internet的第一根专线。 1995年马云开始创业并推出了一个web网站 中国黄页…

VAuditDemo安装漏洞

目录 VAuditDemo安装漏洞 index.php header.php config.php lib.php install.php 分析结果 漏洞利用 第一步:删除install.lock文件,访问 install.php 抓包 第二步:通过审计构造payload 第三步:修改抓包请求内容&#x…

异常在代码中的两个作用

一.异常的作用: 作用一:异常是用来查询bug的关键参考信息。 作用二:异常可以作为方法内部的一种特殊返回值,以便通知调用者底层的执行情况。 二.举例: 例1: 一个JavaBean类: package com.itheima.a01MyExpection;public class Student { private String name; private int…

【极限性能,尽在掌控】ROG NUC:游戏与创作的微型巨擘

初见ROG NUC,你或许会为它的小巧体型惊讶。然而,这看似不起眼的机身内,蕴藏着游戏、创意的强大能量。 掌中风暴,性能无界 ROG NUC搭载英特尔高性能处理器,配合高速NVMe SSD固态硬盘以及可选的高端独立显卡&#xff08…

“解决Windows电脑无法投影到其他屏幕的问题:尝试更新驱动程序或更换视频卡“

目录 背景: 解决方法1: 解决方法2: 什么是驱动程序: 背景: 今天在日常的工作中, 我想将笔记本分屏到另一个显示屏,我这电脑Windows10系统,当我按下Windows键P键,屏幕信息上提示我"你的电脑不能投影到其他屏幕…

mybatis-plus使用saveOrUpdateBatch函数时数据库中已存在对应id数据,但报错插入时出现重复键

1. 问题背景 ProgramLang pl4 new ProgramLang(); // pl4.setId(100L).setLangName("YY").setDescription("Drama2");pl4.setId(100L);pl4.setLangName("YY");pl4.setDescription("Drama2");List<ProgramLang> updatedE…

调研在深度学习中如何读代码

这里调研了四个up主的内容&#xff0c;对他们讲的内容摘了一下主要的内容。想要看原文的画可以看原篇。 1.如何学习别人的代码&#xff08;代码量较大时&#xff09;_怎么学习别人的代码-CSDN博客 想要掌握的好&#xff0c;光阅读是不够的&#xff0c;一定要动手写、训练模型…

STM32学习9

USART串口协议 通信接口 通信的目的&#xff1a;将一个设备的数据传送到另一个设备&#xff0c;扩展硬件系统 通信协议&#xff1a;制定通信的规则&#xff0c;通信双方按照协议规则进行数据收发 串口通信 串口是一种应用十分广泛的通讯接口&#xff0c;串口成本低、容易使…

python 可迭代,迭代器,生成器,装饰器

1. 可迭代&#xff08;Iterable&#xff09; 可迭代 是指一个对象可以返回一个迭代器的对象。也就是说&#xff0c;它实现了 __iter__() 方法或 __getitem__() 方法。常见的可迭代对象有列表、元组、字符串、字典和集合。 from collections.abc import Iterablei 100 s &qu…

[Qt][Qt 文件]详细讲解

目录 1.输入输出设备类2.文件读写类3.文件和目录信息类 1.输入输出设备类 在Qt中&#xff0c;⽂件读写的类为QFile&#xff0c;其⽗类为QFileDevice QFileDevice提供了⽂件交互操作的底层功能QFileDevice的⽗类是QIODevice&#xff0c;其⽗类为QObject QIODevice是Qt中所有I/O…

统一待办集成方案:优化工作流,实现高效协作

在现代企业中&#xff0c;待办事项的管理往往分散在多个系统和工具中&#xff0c;这不仅导致信息孤岛&#xff0c;还可能影响工作效率和协作效果。为了解决这些问题&#xff0c;统一待办集成方案应运而生&#xff0c;它通过整合不同的待办事项管理系统&#xff0c;实现统一的任…

做无效私域,比不做还可怕!

这几年&#xff0c;市场上几乎80%的企业都在做同一件事&#xff1a;“私域”营销。 公众号、私域社群、企业微信、视频号……大家用的工具和平台都差不多&#xff0c;但运营效果却是天差地别。为什么很多企业的私域都做不起来&#xff0c;有的企业却做的风生水起&#xff0c;今…

图像识别,图片线条检测

import cv2 import numpy as np # 读取图片 img cv2.imread(1.png)# 灰度化 gray cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)# 边缘检测 edges cv2.Canny(gray, 100, 200) 当某个像素点的梯度强度低于 threshold1 时&#xff0c;该像素点被认为是非边缘&#xff1b;当梯度强度…

未设置辅助手机的谷歌账号停用,申诉回来后登录需要手机验证,验证两次后成功恢复。

谷歌账号被停用后怎么办&#xff1f;果断申诉&#xff0c;申诉方法和模板等见我前面的文章或视频。 通常申诉以后1-2天会反馈结果&#xff0c;而且大部分&#xff08;80%以上&#xff09;会第一次就被审批通过&#xff0c;如下图所示&#xff1a; 当收到上面这样的邮件&#x…