加权基尼指数的计算过程示例

问题背景

假设我们有一个数据集 D D D,总共包含 12 个样本,分为两类:类别 A 和类别 B。我们有一个特征 X X X,它可以将数据集划分为三个子集 D 1 D_1 D1 D 2 D_2 D2 D 3 D_3 D3

具体数据如下:

  • 原始数据集 D D D

    • 类别 A:7 个样本
    • 类别 B:5 个样本
  • 特征 X X X 的划分结果

    • 子集 D 1 D_1 D1(特征 X X X 取值为 1 时):5 个样本,其中 4 个是类别 A,1 个是类别 B。
    • 子集 D 2 D_2 D2(特征 X X X 取值为 2 时):4 个样本,其中 2 个是类别 A,2 个是类别 B。
    • 子集 D 3 D_3 D3(特征 X X X 取值为 3 时):3 个样本,其中 1 个是类别 A,2 个是类别 B。

现在我们计算原始数据集的基尼指数,以及划分后的加权基尼指数。

1. 计算原始数据集 D D D 的基尼指数

原始数据集中,类别 A 的比例为 p A = 7 12 p_A = \frac{7}{12} pA=127,类别 B 的比例为 p B = 5 12 p_B = \frac{5}{12} pB=125

基尼指数 G ( D ) G(D) G(D) 的计算公式为:
G ( D ) = 1 − ∑ k = 1 K p k 2 G(D) = 1 - \sum_{k=1}^K p_k^2 G(D)=1k=1Kpk2

其中 K K K 是类别的数量。在我们的例子中:

G ( D ) = 1 − ( p A 2 + p B 2 ) G(D) = 1 - (p_A^2 + p_B^2) G(D)=1(pA2+pB2)

G ( D ) = 1 − ( ( 7 12 ) 2 + ( 5 12 ) 2 ) G(D) = 1 - \left( \left( \frac{7}{12} \right)^2 + \left( \frac{5}{12} \right)^2 \right) G(D)=1((127)2+(125)2)

G ( D ) = 1 − ( 0.3403 + 0.1736 ) = 1 − 0.5139 = 0.4861 G(D) = 1 - \left( 0.3403 + 0.1736 \right) = 1 - 0.5139 = 0.4861 G(D)=1(0.3403+0.1736)=10.5139=0.4861

因此,原始数据集 D D D 的基尼指数为 0.4861

2. 计算划分后子集的基尼指数

接下来,我们根据特征 X X X 的划分结果,分别计算三个子集 D 1 D_1 D1 D 2 D_2 D2 D 3 D_3 D3 的基尼指数。

子集 D 1 D_1 D1 的基尼指数:

子集 D 1 D_1 D1 中,类别 A 的比例为 p A = 4 5 = 0.8 p_A = \frac{4}{5} = 0.8 pA=54=0.8,类别 B 的比例为 p B = 1 5 = 0.2 p_B = \frac{1}{5} = 0.2 pB=51=0.2

基尼指数 G ( D 1 ) G(D_1) G(D1) 计算为:
G ( D 1 ) = 1 − ( p A 2 + p B 2 ) G(D_1) = 1 - (p_A^2 + p_B^2) G(D1)=1(pA2+pB2)

G ( D 1 ) = 1 − ( 0. 8 2 + 0. 2 2 ) G(D_1) = 1 - (0.8^2 + 0.2^2) G(D1)=1(0.82+0.22)

G ( D 1 ) = 1 − ( 0.64 + 0.04 ) = 1 − 0.68 = 0.32 G(D_1) = 1 - (0.64 + 0.04) = 1 - 0.68 = 0.32 G(D1)=1(0.64+0.04)=10.68=0.32

子集 D 2 D_2 D2 的基尼指数:

子集 D 2 D_2 D2 中,类别 A 和类别 B 的比例相同, p A = p B = 0.5 p_A = p_B = 0.5 pA=pB=0.5

基尼指数 G ( D 2 ) G(D_2) G(D2) 计算为:
G ( D 2 ) = 1 − ( p A 2 + p B 2 ) G(D_2) = 1 - (p_A^2 + p_B^2) G(D2)=1(pA2+pB2)

G ( D 2 ) = 1 − ( 0. 5 2 + 0. 5 2 ) G(D_2) = 1 - (0.5^2 + 0.5^2) G(D2)=1(0.52+0.52)

G ( D 2 ) = 1 − ( 0.25 + 0.25 ) = 1 − 0.5 = 0.5 G(D_2) = 1 - (0.25 + 0.25) = 1 - 0.5 = 0.5 G(D2)=1(0.25+0.25)=10.5=0.5

子集 D 3 D_3 D3 的基尼指数:

子集 D 3 D_3 D3 中,类别 A 的比例为 p A = 1 3 p_A = \frac{1}{3} pA=31,类别 B 的比例为 p B = 2 3 p_B = \frac{2}{3} pB=32

基尼指数 G ( D 3 ) G(D_3) G(D3) 计算为:
G ( D 3 ) = 1 − ( p A 2 + p B 2 ) G(D_3) = 1 - (p_A^2 + p_B^2) G(D3)=1(pA2+pB2)

G ( D 3 ) = 1 − ( ( 1 3 ) 2 + ( 2 3 ) 2 ) G(D_3) = 1 - \left( \left( \frac{1}{3} \right)^2 + \left( \frac{2}{3} \right)^2 \right) G(D3)=1((31)2+(32)2)

G ( D 3 ) = 1 − ( 1 9 + 4 9 ) = 1 − 5 9 = 1 − 0.5556 = 0.4444 G(D_3) = 1 - \left( \frac{1}{9} + \frac{4}{9} \right) = 1 - \frac{5}{9} = 1 - 0.5556 = 0.4444 G(D3)=1(91+94)=195=10.5556=0.4444

3. 计算划分后的加权基尼指数

现在我们根据划分后的子集数量和基尼指数,计算划分后的加权基尼指数。公式如下:
G ( D ∣ X ) = ∑ i = 1 3 ∣ D i ∣ ∣ D ∣ G ( D i ) G(D|X) = \sum_{i=1}^3 \frac{|D_i|}{|D|} G(D_i) G(DX)=i=13DDiG(Di)

其中:

  • ∣ D i ∣ |D_i| Di 是子集 D i D_i Di 的样本数量, ∣ D ∣ |D| D 是原始数据集的样本数量(即 12 个样本)。
  • G ( D i ) G(D_i) G(Di) 是子集 D i D_i Di 的基尼指数。

我们计算每个子集的加权比例:

  • D 1 D_1 D1 的权重: 5 12 \frac{5}{12} 125
  • D 2 D_2 D2 的权重: 4 12 = 1 3 \frac{4}{12} = \frac{1}{3} 124=31
  • D 3 D_3 D3 的权重: 3 12 = 1 4 \frac{3}{12} = \frac{1}{4} 123=41

加权基尼指数的计算如下:
G ( D ∣ X ) = 5 12 × 0.32 + 4 12 × 0.5 + 3 12 × 0.4444 G(D|X) = \frac{5}{12} \times 0.32 + \frac{4}{12} \times 0.5 + \frac{3}{12} \times 0.4444 G(DX)=125×0.32+124×0.5+123×0.4444

逐项计算:

G ( D ∣ X ) = 0.4167 × 0.32 + 0.3333 × 0.5 + 0.25 × 0.4444 G(D|X) = 0.4167 \times 0.32 + 0.3333 \times 0.5 + 0.25 \times 0.4444 G(DX)=0.4167×0.32+0.3333×0.5+0.25×0.4444

G ( D ∣ X ) = 0.1333 + 0.1667 + 0.1111 = 0.4111 G(D|X) = 0.1333 + 0.1667 + 0.1111 = 0.4111 G(DX)=0.1333+0.1667+0.1111=0.4111

4. 比较划分前后的基尼指数

  • 原始数据集 D D D 的基尼指数是 0.4861
  • 划分后的加权基尼指数是 0.4111

划分后的加权基尼指数更小,说明通过特征 X X X 进行划分后,数据集的纯度有所提高。决策树会选择这个划分,因为它能够更好地区分数据类别。

总结

  • 基尼指数用于衡量数据集的不纯度,基尼指数越低,表示数据集越纯净。
  • 加权基尼指数用于评估特征划分的质量,通过对子集的基尼指数进行加权平均来衡量划分后数据集的纯度。
  • 当加权基尼指数比原始数据集的基尼指数更小时,表示划分后数据集的纯度得到了提升,这通常是我们在构建决策树时希望看到的结果。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值