树类算法之---决策树Cart树Gini系数就算原理。

博客介绍了ID3树与CART树的区别,指出CART树用GINI系数做特征选择可简化运算。详细阐述了GINI系数的计算公式及意义,以是否出门数据集为例,展示了计算各特征GINI系数的过程,最后通过排序选择GINI系数最小的特征进行分裂建树。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.介绍

  • ID3树与CART树的区别:
    • ID3算法中,选择的是信息增益来进行特征选择,信息增益大的特征优先选择。
    • 而在C4.5中,选择的是信息增益比来选择特征,以减少信息增益容易选择特征值多的特征的缺点。
    • 但是无论是ID3还是C4.5,都是基于熵的模型,里面会涉及到大量的对数运算,能不能简化一下?
  • GINI系数的计算公式:
    • 假设有数据集D,定义GINI指数:
      G I N I ( D ) =    ∑ i = 1 k p k ⋅ ( 1 − p k ) = 1 − ∑ i = 1 k p k 2 GINI\left( D \right)=\; \sum_{i=1}^{k}{p_{k}}\cdot \left( 1-p_{k} \right)=1-\sum_{i=1}^{k}{p_{k}}^{2} GINI(D)=i=1kpk(1pk)=1i=1kpk2
  • 记住上面的公式我们会在后面计算的时候用到
  • 简单分析:
    • 从公式中可以看出来,基尼指数的意义是从数据集D中随机抽取两个样本类别标识不一致的概率。基尼指数越小,数据集的纯度越高。
    • 相比于信息增益,信息增益比等作为特征选择方法,基尼指数省略了对数计算,运算量比较小,也比较容易理解,所以CART树选择使用基尼系数用来做特征选择。

2.GINI系数计算过程

  • 首先给出一个数据集D,这是一个关于是否出门的数据集,最后一列是决策列,即标签列,我们希望通过前面的一系列特征来决策最终会不会出去玩。
  • 下面我们就逐个计算每个特征的GINI系数。从而来决定选用哪个特征来作为第一个分支节点。
  • 值得注意的是,Cart树是一个二叉树,所以在计算Gini系数的时候,还要考虑,要以哪个特征值作为切分。这个也是区别于ID3 和C4.5算法的一点。
  • 假设我们按顺序计算。
Day Outlook Temp. Humidity Wind Decision
1 Sunny Hot High Weak No
2 Sunny Hot High Strong No
3 Overcast Hot High Weak Yes
4 Rain Mild High Weak Yes
5 Rain Cool Normal Weak Yes
6 Rain Cool Normal Strong No
7 Overcast Cool Normal Strong Yes
8 Sunny Mild High Weak No
9 Sunny Cool Normal Weak Yes
10 Rain Mild Normal Weak Yes
11 Sunny Mild Normal Strong Yes
12 Overcast Mild High Strong Yes
13 Overcast Hot Normal Weak Yes
14 Rain Mild High Strong No

2.1 计算OutLook的Gini系数

  • 首先我们在D数据集中选择出OutLook列的一些数据情况。
  • 看下面的表是经过统计得来的:
    • 每个特征值对应的累呗的个数,以及总的个数,我们需要这个。
    • 回忆一下计算公式: G i n i = 1
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值