决策树(二)属性选择度量之基尼系数详细讲解

在上篇文章中,已经介绍了属性选择度量的信息增益,接下来本篇文章将介绍最后一个常用属性选择度量:基尼系数(Gini)。

熵的计算涉及对数运算比较耗时,基尼系数在简化计算的同时还保留了熵的优点。基尼系数代表了模型的不纯度,基尼系数越小,纯度越高,选择该特征进行劈划也越好。这和信息增益(比)正好相反。

假设,用X表示随机变量,随机变量的取值为x1, x2 ,x3... 在n分类问题中便有n个取值,基尼系数的计算公式如下:

其中pi为类别i出现的频率,即类别为i的样本占总样本个数的比率,Σ为求和符号,即对所有的pi^2进行求和。

当引入某个用于分类的变量A,假设属性A有m个不同的值,则变量A划分后的基尼系数的计算公式为:

gini(Xi)为按属性A分划后的各子集的基尼系数,|X|为总样本个数,| Xi|为划分后的各类的样本量。

☀公式很复杂,这是什么意思呢?接下来,咱们把看起来高级的问题"低级化",解释一下gini(X)这个公式。

(1)基尼系数的目的是衡量不平等程度。当我们求pi^2并求和时,这个操作实际上是在给占比大的部分赋予更大的权重。

**例如:**在两个人分东西的例子中,A 占 90%,B 占 10%。当我们计算

时,占比大的 A(0.9)的平方 0.81 远大于占比小的 B(0.1)的平方 0.01。gini(x)=1-0.82=0.18

这种权重分配方式使得基尼系数在衡量不平等时,更侧重于占比大的部分对整体不平等的贡献。在一个社会或群体的资源分配中,占比大的部分的集中程度对整体的不平等感知有更大的影响。

相关推荐
FII工业富联科技服务8 小时前
Omniverse + Isaac Teleop + 合成数据:工业富联机器人大脑训练+执行落地闭环拆解
大数据·人工智能·深度学习·机器学习·机器人·制造·具身智能
phltxy9 小时前
C语言操作符详解
java·c语言·算法
aqiu1111119 小时前
【LeetCode 902】最大为 N 的数字组合 - 详细题解与数位组合思路
数据结构·算法·leetcode·蓝桥杯·数位dp
辰烨chenye10 小时前
LeetCode Hot 100 题解 · 哈希篇
算法·leetcode·哈希算法
罗西的思考10 小时前
DreamZero 与 DreamDojo:世界模型与策略的分层协同综合分析与对比
人工智能·算法·机器学习
玖玥拾11 小时前
LeetCode 219 存在重复元素 II
算法·leetcode·哈希算法·散列表
长江后浪博客12 小时前
YOLO目标检测模型调参入门:从训练参数到检测效果优化
yolo·目标检测·机器学习·yolov8·模型调参
一枚爱吃大蒜的程序员12 小时前
CSDN文章-注意力约束QLoRA教育大模型微调
人工智能·机器学习·语言模型·qlora·大模型微调·注意力约束
知无不研12 小时前
c语言中循环的介绍与简单应用
c语言·开发语言·算法·循环·for·while