一、说明

        基尼系数是信息熵的泰勒级数简化版。因此,信息熵和基尼系数所表述的内涵是一致的。而绝对纯净的事物,信息熵(或基尼系数)是零,不纯的事物,基尼系数增加,但也不会超过0.5,因此,基尼系数是范围在0到0.5的纯洁度度量。

二、基尼杂质

        想象一下,您有一大罐弹珠,您想知道弹珠的颜色有多混杂。基尼不纯度是衡量这一点的一种方法。它的工作原理如下:

基尼杂质与基尼重要性与平均减少杂质的讨论-LMLPHP

  1. 您首先一次查看一颗弹珠。对于每个弹珠,你会问:“我随机挑选与这种颜色不同的球的机会有多大?” 如果所有弹珠的颜色相同,则几率较低,因此基尼杂质较低。但如果弹珠的颜色不同且混合均匀,则几率就高,因而基尼杂质就高。
  2. 基尼杂质就像是衡量罐子里弹珠的混乱程度或混合程度的指标。如果它们都是相同的颜色,那么它就不是凌乱的(低基尼杂质),如果它们是多种颜色的混合,那么它就是凌乱的(高基尼杂质)。

        因此,基尼不纯度是衡量事物混合程度或不纯度程度的指标。在机器学习的背景下,它通常用于确定决策树将数据划分为不同类别的能力。目标是找到将数据分成尽可能纯净的组(低基尼杂质)的最佳方法,这使得更容易做出准确的预测。

三、基尼系数的重要性

        现在,考虑一下不同的情况。您有一群朋友,您想知道哪个朋友对决策影响最大。基尼系数的重要性可以帮助您弄清楚这一点。它的工作原理如下:

你有一份每个朋友擅长的事情的清单

  • 朋友A:唱歌好听
  • 朋友B:擅长打鼓
  • 朋友C:跳舞不错
  • 朋友D:足球不错

基尼杂质与基尼重要性与平均减少杂质的讨论-LMLPHP

        基尼重要性可帮助您确定哪个朋友的技能在做出决策时最重要。目前,该团体正在决定为一项活动表演一首歌曲,其中涉及歌唱和乐器。如果一个朋友的技能非常重要并且强烈影响团队的决策,那么他们的基尼重要性就很高(暗含:杂质大就是异质性大)。如果所有朋友都具有同等影响力,则基尼重要性较低(平庸程度大)。

        所以在这里我们可以看到朋友 A 和 B 具有很高的基尼重要性。

        基尼杂质和基尼重要性之间的主要区别在于它们测量的内容:

  • 基尼不纯度衡量事物的混合或混乱程度,就像陶罐中颜色球的多样性一样。
  • 基尼重要性衡量某件事在决策中的重要性或影响力,例如团队中哪个朋友的技能最重要。
  • 基尼不纯度面面向整体判断,整体越平庸基尼系数越小,如果每个个体都不平庸,基尼系数最大。
  • 基尼重要性面向个体,是单个体对全局基尼的“贡献量”。

注意:如果问你均匀分布是不是“平庸”的,答:均匀分布中,个体最不平庸。下图说话:

基尼杂质与基尼重要性与平均减少杂质的讨论-LMLPHP

四、平均减少杂质

        想象一下,您有与上一个示例相同的大盒子彩色弹珠,并且您想将它们组织成组

基尼杂质与基尼重要性与平均减少杂质的讨论-LMLPHP

        您可以通过询问有关弹珠特征的问题来做到这一点,例如颜色、大小或是否有条纹。这些问题可帮助您决定如何对弹珠进行分组。

        现在,假设您想找出哪个问题对组建最佳小组最有帮助。例如,如果你问“弹珠是红色的吗?” 这个问题帮助你建立了非常独特的群体,这是一个好问题。如果你问另一个问题,比如“弹珠有黄色条纹吗?”这也有助于建立良好的团队,这是另一个好问题。

        在数据和统计领域,当我们试图确定哪些特征(如颜色、尺寸或条纹)对于决策最重要时,会遇到与这些问题类似的问题。这就是“杂质平均减少”的用武之地。

        “平均减少杂质”是一种衡量每个问题(或特征)对组织数据有多大帮助的方法。“不纯”这个词的意思是事物的混杂或混乱。如果某个问题(或功能)有助于将数据分成更清晰、更有组织的组,则它会获得更高的“平均减少不纯度”分数。

五、平均减少杂质背后的数学原理

5.1 问题

        让我们看另一个例子来理解平均减少杂质。想象一下,您是一名老师,您想了解哪些因素会影响学生在数学测试中的表现。您拥有有关他们的学习时间、睡眠时间以及测试当天是否吃早餐的数据。您想要找出这些因素中哪一个对于决定学生的考试成绩最重要。

基尼杂质与基尼重要性与平均减少杂质的讨论-LMLPHP

        以下是“平均减少杂质”的帮助:

  1. 学习时间(特征 1):你首先要问一个问题:“学习时间越长,考试成绩越好吗?”
  2. 睡眠时间(特征 2):接下来,你会问:“睡眠时间越多,考试成绩越好吗?”
  3. 早餐(特色3):最后,你问,“考试当天吃早餐有影响吗?”

        这是它的数据集:

基尼杂质与基尼重要性与平均减少杂质的讨论-LMLPHP

        这里,我们有8名学生的信息。我们想要找出哪个特征(学习时间、睡眠时间或早餐)对于预测考试成绩最重要。

5.2 解决方案:

        在决策树中,您将根据这些不同的特征做出一系列决策,以达成最终决策或预测。每个决定都是为了减少数据中的不确定性或“杂质”。杂质衡量数据的混合程度或不确定程度。

        构建决策树时,您可以选择在每个步骤中分割数据的特征(或问题)。当您分割数据时,最大程度地减少杂质的功能被认为是最重要的。

        现在,“平均减少杂质”的工作原理如下:

        1.从树顶部的整个数据集开始

        根据测试分数计算初始数据集的基尼杂质 (I)。

        基尼初始 = 1 — [(3/8)² + (5/8)²] = 1 — [9/64 + 25/64] = 1–34/64 = 30/64 = 0.46875

        2.计算每个特征的杂质减少量

F1、F2 和 F3 的杂质减少量是使用基尼杂质或熵 等杂质度量来计算的

对于功能 1(学习时间):

  • 将数据分为两个子集:一个子集的学习时间小于或等于 2.5,另一个子集的学习时间大于 2.5。
  • 计算每个子集的基尼杂质。
  • 计算分割后的加权基尼杂质。
  • F1 杂质减少(研究时间):

步骤1: Gini_initial = 0.46875(我们已经找到了)

步骤 2:计算 Weighted_Gini_After_Split

Weighted_Gini_After_Split = (3/8) * Gini_left + (5/8) * Gini_right
Gini_left (Study Hours <= 2.5) = 1 - [(2/3)² + (1/3)²] = 0.4444 
Gini_right (Study Hours > 2.5) = 1 - [(1/5)² + (4/5)²] = 0.32

        分割后加权基尼系数 = (3/8) * 0.4444 + (5/8) * 0.32 = 0.36055

步骤 3:计算研究时间的杂质减少量

Reduction in Impurity for Study Hours = Gini_initial - Weighted_Gini_After_Split

        F1 杂质减少 = Gini_initial — Weighted_Gini_After_Split = 0.46875–0.36055 = 0.1082

对于功能 2(睡眠时间):

        F2 的杂质减少量(睡眠时间)= 0.12(使用相同的步骤计算)

特色 3(早餐):

        F3(早餐)的杂质减少量 = 0.09(使用相同的步骤计算)

5.3 计算平均减少杂质

        “杂质平均减少量”是所有特征的杂质减少量的平均值。

        平均杂质减少量 =(F1 杂质减少量 + F2 杂质减少量 + F3 杂质减少量)/ 特征数量

计算后:

Mean Decrease Impurity = (0.1082 + 0.12 + 0.09) / 3 = 0.3182 / 3 = 0.1061

        因此,该数据集的平均减少杂质约为 0.1061。该值表示特征在减少杂质和在决策树中做出决策方面的总体重要性

        杂质减少最高的特征对平均杂质减少贡献最大,被认为是决策最重要的特征。平均杂质减少帮助我们发现学习时间(0.1082)和睡眠时间(0.12)都很重要使考试成绩更具可预测性和组织性的因素,而早餐对此目的并不那么重要。

02-18 07:18