机器学习算法 22 决策树算法到集成学习思想(02 决策树常用的分裂条件基尼系数Gini、信息增益、信息增益率、MSE )

1 总结:

决策树的生成说白了就是数据不断分裂的递归过程,每一次分裂,尽可能让类别一样的数据在树的一边,当树的叶子节点的数据都是一类的时候,则停止分裂

2 分割的条件

问题:分割的条件是什么?

如下图所示,那种分割方式更好:怎样衡量?纯度

2.1 常用分裂条件:

对于分类问题: 常用的分割条件有 Gini系数,信息增益 信息增益率;分割的好坏一般采用 纯度进行度量。

对于回归问题:常用的分割条件是MSE

2.1.1 Gini系数(CART)

     基尼系数是指国际上通用的、用以衡量一个国家或地区居民收入差距的常用指标。

    基尼系数最大为“1”,最小等于“0”。基尼系数越接近0表明收入分配越是趋向平等。国际惯例把0.2以下视为收入绝对平均,0.2-0.3视为收入比较平均;0.3-0.4视为收入相对合理;0.4-0.5视为收入差距较大,当基尼系数达到0.5以上时,则表示收入悬殊。

    基尼指数最早由意大利统计与社会学家Corrado Gini在1912年提出。

    其具体含义是指,在全部居民收入中,用于进行不平均分配的那部分收入所占的比例。基尼系数最大为“1”,最小等于“0”。前者表示居民之间的收入分配绝对不平均,即100%的收入被一个单位的人全部占有了;而后者则表示居民之间的收入分配绝对平均,即人与人之间收入完全平等,没有任何差异。但这两种情况只是在理论上的绝对化形式,在实际生活中一般不会出现。因此,基尼系数的实际数值只能介于0~1之间,基尼系数越小收入分配越平均,基尼系数越大收入分配越不平均。国际上通常把0.4作为贫富差距的警戒线,大于这一数值容易出现社会动荡。

        

        基尼指数通常把0.4作为收入分配差距的“警戒线”,根据黄金分割律,其准确值应为0.382。一般发达国家的基尼指数在0.24到0.36之间,美国偏高,为0.52。中国国家统计局公布基尼系数2012年为0.474,2013年为0.473,2014年为0.469,2015年为0.462,2016年为0.465。 

公式

Gini系数越小,代表D集合中的数据越纯,所有我们可以计算分裂前的值 

在按照某个维度对数据集进行划分,然后可以去计算多个节点的Gini系数:

尝遍百草,哪根草最甜,就选哪根!

第一步选用 petal length<=2.45 进行分割

        分割前的样本:

                此时的样本数量为150 分了三类[50,50,50]

                此时的基尼系数1-[(50/150)**2+(50/150)**2+(50/150)**2]=0.667

                定义为setosa类别

根据判定条件

                为True :   

                        分割得到的样本中共50个,

                        基尼系数1-[(0/100)**2+(50/100)**2+(50/100)**2]=0.5

                        分割的这50个样本类别为setosa 所以定义为setosa类

                False :

                        分割得到的样本中共100个,

                        基尼系数1-[(50/50)**2+(0/50)**2+(0/50)**2]=0

                        分割的这100个样本各类别各占50 ,类别为versicolor

第二步 对上一步为  False de 100个样本,

选用 petal weight<=1.75 进行分割

根据判定条件

                为True :

                        分割得到的样本中共54个,

                        基尼系数1-[(0/54)**2+(49/54)**2+(5/50)**2]=0.168

                        分割的这54个样本各类别各中49个为versicolor ,类别为versicolor

                False :  

                        分割得到的样本中共46个,

                        基尼系数1-[(0/46)**2+(1/46)**2+(45/46)**2]=0.0425

                        分割的这46个样本各类别各中45个为virginica,类别为virginica

2.1.2 信息增益ID3

      

        熵的概念:

         在信息论里熵叫作信息量,即熵是对不确定性的度量。从控制论的角度来看,应叫不确定性。信息论的创始人香农在其著作《通信的数学理论》中提出了建立在概率统计模型上的信息度量。他把信息定义为“用来消除不确定性的东西”。在信息世界,熵越高,则能传输越多的信息,熵越低,则意味着传输的信息越少。还是举例说明,假设Kathy在买衣服的时候有颜色,尺寸,款式以及设计年份四种要求,而North只有颜色和尺寸的要求,那么在购买衣服这个层面上Kathy由于选择更多因而不确定性因素更大,最终Kathy所获取的信息更多,也就是熵更大。所以信息量=熵=不确定性,通俗易懂。在叙述决策树时我们用表示不纯度(Impurity)。

       熵  公式:

        

        J 样本类别

         信息增益计算公式:

         信息增益=分割前的信息熵 - 分割后的信息熵

         一个分裂导致的信息增益越大,代表这次分裂提升的纯度越高(选用那个分裂的依据)

 

 

         熵和交叉熵的区别

                熵是反应一个组中的不确信性。是一个组中类别的不确定性。

                交叉熵是反应类别之间的不确定性。是y_hat跟y是否一样还是不一样。

2.1.3 信息熵与Gini系数的关系

首先看二者的定义:

上面公式我们查看不同的部分:即-lnx和1-x的区别

将 f(x) = −lnx 在 x = 1 处进行一阶泰勒展开(忽略高阶无穷小) 

 因此,熵可近似转化为:

      基尼指数是信息熵中﹣logP 在P = 1处一阶泰勒展开后的结果!所以两者都可以用来度量数据集的纯度,用于节点描述决策树的纯度!

2.1.4 信息增益率(C4.5)

本质:通过信息增益率防止分的叉过多

对于多叉树,如果不限制分裂多少支,一次分裂就可以将信息熵降为0,比如ID

如何平衡分裂情况与信息增益?

信息增益率:信息增益 除以 类别本身的熵

 

 

 我们发现类别越多 信息增益率越小

2.1.5 MSE

用于回归树

  • 0
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值