【云计算】CART决策树的计算方法实例分享
小标 2018-12-24 来源 : 阅读 890 评论 0

摘要:本文主要向大家介绍了【云计算】CART决策树的计算方法实例分享,通过具体的内容向大家展现,希望对大家学习云计算有所帮助。

本文主要向大家介绍了【云计算】CART决策树的计算方法实例分享,通过具体的内容向大家展现,希望对大家学习云计算有所帮助。


数据集:



 

序号


 

 

是否有房


 

 

婚姻状况


 

 

年收入


 

 

是否拖欠贷款


 

 

1


 

 


 

 

单身


 

 

12.5


 

 


 

 

2


 

 


 

 

已婚


 

 

10


 

 


 

 

3


 

 


 

 

单身


 

 

7


 

 


 

 

4


 

 


 

 

已婚


 

 

12


 

 


 

 

5


 

 


 

 

离异


 

 

9.5


 

 


 

 

6


 

 


 

 

已婚


 

 

6


 

 


 

 

7


 

 


 

 

离异


 

 

22


 

 


 

 

8


 

 


 

 

单身


 

 

8.5


 

 


 

 

9


 

 


 

 

已婚


 

 

7.5


 

 


 

 

10


 

 


 

 

单身


 

 

9


 

 


 

基尼指数(Gini Index)


Gini(D)反映了从数据集中随机抽取两个样本,其类别标记不一致的概率。因此,Gini(D)越小,则数据集D的纯度越高。


属性a的基尼指数定义为:


Gini_index(D,a)=



比如我们上述的数据集中,有三个特征,对每个特征a中,计算其Gini_index。选择其中的Gini_index最小的那个作为我们拆分的节点。


利用基尼指数(Gini Index)选择划分特征


 

一、选择分支的特征


 

 

特征1:是否有房变量的Gini指数计算


 
 
 

是否拖欠


 
 

 

是否有房


 
 
 


 

 


 

 

sum


 

 


 

 

0


 

 

3


 

 

3


 

 


 

 

3


 

 

4


 

 

7


 

 

sum


 

 

3


 

 

7


 

 

10


 
     
 
 

有房的占比3/10


 

 

拖欠贷款的比例


 

 

0/3=0


 
 
  
 

未拖欠贷款的比例


 

 

3/3=1


 
 
 
 

有房的基尼指数0


 

 

1-(0/3)^2-(3/3)^2=0


 
  
     
 
 

无房的占比7/10


 

 

拖欠贷款的比例


 

 

3/7


 
 
  
 

未拖欠贷款的比例


 

 

4/7


 
 
 
 

无房的基尼指数0.4898


 

 

1-(3/7)^2-(4/7)^2=0.4898


 
  

 

是否有房的基尼指数


 

 

3/10*0+7/10*0.4898


 

 

0.34286


 
  
     

 

特征2:婚姻状况的Gini指数计算


 

 

由于婚姻状况有三种状态(已婚,单身,离异),而基尼系数只能计算两个随机抽取的样本不一致的概率。因此,这里要用其中一个类别,把总体分成两类。


 

 

(1)


 

 

按照{已婚,(单身,离异)},分成两组


 
   
     
  
 

是否拖欠


 
 
  
 


 

 


 

 

sum


 
 
 

已婚


 

 

0


 

 

4


 

 

4


 
 
 

(单身,离异)


 

 

3


 

 

3


 

 

6


 
 
 

sum


 

 

3


 

 

7


 

 

10


 
     
 
 

已婚的占比4/10


 

 

拖欠贷款的比例


 

 

0/4=0


 
 
  
 

未拖欠贷款的比例


 

 

4/4=1


 
 
 
 

已婚的基尼指数


 

 

1-(0/4)^2-(4/4)^2=0


 
  
     
 
 

(单身,离异)的占比6/10


 

 

拖欠贷款的比例


 

 

3/6


 
 
  
 

未拖欠贷款的比例


 

 

3/6


 
 
 
 

(单身,离异)基尼指数


 

 

1-(3/6)^2-(3/6)^2=0.5


 
  

 

故:


 

 

{已婚,(单身,离异)}的基尼系数为4/10*0+6/10*0.5=0.3


 
   
     

 

(2)


 

 

{单身,(已婚,离异)}


 
   
  
 


 

 


 
 
 
 

单身


 

 

2


 

 

2


 

 

4


 
 
 

(已婚,离异)


 

 

1


 

 

5


 

 

6


 
  
 

3


 

 

7


 

 

10


 
     
 
 

单身的占比4/10


 

 

拖欠贷款的比例


 

 

2/4


 
 
  
 

未拖欠贷款的比例


 

 

2/4


 
 
 
 

单身的基尼指数


 

 

1-(2/4)^2-(2/4)^2=0.5


 
  
     
 
 

(已婚,离异)的占比6/10


 

 

拖欠贷款的比例


 

 

1/6


 
 
  
 

未拖欠贷款的比例


 

 

5/6


 
 
 
 

(已婚,离异)基尼指数


 

 

1-(1/6)^2-(5/6)^2=0.2778


 
  
     

 

故:


 

 

{单身,(已婚,离异)}的基尼指数为4/10*0.5+6/10*0.2778=0.36668


 
   
     

 

(3)


 

 

{离异,(已婚,单身)}


 
   
  
 


 

 


 
 
 
 

离异


 

 

1


 

 

1


 

 

2


 
 
 

(已婚,单身)


 

 

2


 

 

6


 

 

8


 
  
 

3


 

 

7


 

 

10


 
     
 
 

离异的占比2/10


 

 

拖欠贷款的比例


 

 

1/2


 
 
  
 

未拖欠贷款的比例


 

 

1/2


 
 
 
 

离异的基尼指数


 

 

1-(1/2)^2-(1/2)^2=0.5


 
  
     
 
 

(已婚,单身)的占比8/10


 

 

拖欠贷款的比例


 

 

2/8


 
 
  
 

未拖欠贷款的比例


 

 

6/8


 
 
 
 

(已婚,单身)基尼指数


 

 

1-(2/8)^2-(6/8)^2=0.375


 
  

 

故:


 

 

{单身,(已婚,离异)}的基尼指数为2/10*0.5+8/10*0.375=0.4


 
 
 
 

婚姻状况的基尼指数为上述三项计算中的最小的,故选择{已婚,(单身,离异)},基尼指数为0.3


 
 


特征3:选择收入作为分割


 

原始值排序


 

 

6


 

 

7


 

 

7.5


 

 

8.5


 

 

9


 

 

9.5


 

 

10


 

 

12


 

 

12.5


 

 

22


 

 

分割值(取原始值的平均数)


 
 
 

6.5


 

 

7.25


 

 

8


 

 

8.75


 

 

9.25


 

 

9.75


 

 

11


 

 

12.25


 

 

17.25


 




 

(1)选择6.5计算基尼指数


 
  
 
 


 

 


 

 

<6.5


 

 

0


 

 

1


 

 

>6.5


 

 

3


 

 

6


 

 

<6.5的的占比1/10


 

 

拖欠贷款的比例


 

 

0


 
 
 

未拖欠贷款的比例


 

 

1


 

 

<6.5的基尼指数


 

 

1-0^2-1^2=0


 
 
   

 

>6.5的占比9/10


 

 

拖欠贷款的比例


 

 

3/9


 
 
 

未拖欠贷款的比例


 

 

6/9


 

 

>6.5的基尼指数


 

 

1-(3/9)^2-(6/9)^2=0.4444


 
 

 

以6.5作为区分的基尼指数


 

 

1/10*0+9/10*0.444=0.3996


 


 

(2)选择7.25基尼指数


 
  
 
 


 

 


 

 

<7.25


 

 

0


 

 

2


 

 

>7.25


 

 

3


 

 

5


 
   

 

<7.25的的占比2/10


 

 

拖欠贷款的比例


 

 

0


 
 
 

未拖欠贷款的比例


 

 

1


 

 

<7.25的基尼指数


 

 

1-0^2-1^2=0


 
 
   

 

>7.25的占比8/10


 

 

拖欠贷款的比例


 

 

3/8


 
 
 

未拖欠贷款的比例


 

 

5/8


 

 

>7.25的基尼指数


 

 

1-(3/8)^2-(5/8)^2=0.4688


 
 

 

以7.25作为区分的基尼指数


 

 

2/10*0+8/10*0.4688=0.375


 
 

 

(3)选择8基尼指数


 

 


 

 


 

 

<8


 

 

0


 

 

3


 

 

>8


 

 

3


 

 

4


 

 

<8的的占比3/10


 

 

拖欠贷款的比例


 

 

0


 
 
 

未拖欠贷款的比例


 

 

1


 

 

<8的基尼指数


 

 

1-0^2-1^2=0


 
 
   

 

>8的占比7/10


 

 

拖欠贷款的比例


 

 

3/7


 
 
 

未拖欠贷款的比例


 

 

4/7


 

 

>8的基尼指数


 

 

1-(3/7)^2-(4/7)^2=0.4898


 
 

 

以8作为区分的基尼指数


 

 

3/10*0+7/10*0.4898=0.34286


 
 




 

(4)选择8.75基尼指数


 

 


 

 


 

 

<8.75


 

 

1


 

 

3


 

 

>8.75


 

 

2


 

 

4


 

 

<8.75的的占比4/10


 

 

拖欠贷款的比例


 

 

1/4


 
 
 

未拖欠贷款的比例


 

 

3/4


 

 

<8.75的基尼指数


 

 

1-(1/4)^2-(3/4)^2=0.375


 
 
   

 

>8.75的占比6/10


 

 

拖欠贷款的比例


 

 

2/6


 
 
 

未拖欠贷款的比例


 

 

4/6


 

 

>8.75的基尼指数


 

 

1-(2/6)^2-(4/6)^2=0.4444


 
 

 

以8.75作为区分的基尼指数


 

 

4/10*0.375+6/10*0.4444=0.00336


 
 

 

(5)选择9.25基尼指数


 

 


 

 


 

 

<9.25


 

 

2


 

 

3


 

 

>9.25


 

 

1


 

 

4


 

 

<9.25的的占比5/10


 

 

拖欠贷款的比例


 

 

2/5


 
 
 

未拖欠贷款的比例


 

 

3/5


 

 

<9.25的基尼指数


 

 

1-(2/5)^2-(3/5)^2=0.48


 
 
   

 

>9.25的占比5/10


 

 

拖欠贷款的比例


 

 

1/5


 
 
 

未拖欠贷款的比例


 

 

4/5


 

 

>9.25的基尼指数


 

 

1-(1/5)^2-(4/5)^2=0.32


 
 

 

以9.25作为区分的基尼指数


 

 

5/10*0.48+5/10*0.32=0.4


 
 

 

(6)选择9.75基尼指数


 

 


 

 


 

 

<9.75


 

 

3


 

 

3


 

 

>9.75


 

 

0


 

 

4


 

 

<9.75的的占比6/10


 

 

拖欠贷款的比例


 

 

3/6


 
 
 

未拖欠贷款的比例


 

 

3/6


 

 

<9.75的基尼指数


 

 

1-(3/6)^2-(3/6)^2=0.5


 
 
   

 

>9.75的占比4/10


 

 

拖欠贷款的比例


 

 

0/4


 
 
 

未拖欠贷款的比例


 

 

4/4


 

 

>9.75的基尼指数


 

 

1-(0/4)^2-(4/4)^2=0


 
 

 

以9.75作为区分的基尼指数


 

 

6/10*0.5+4/10*0=0.3


 
 

 

(7)选择11基尼指数


 

 


 

 


 

 

<11


 

 

3


 

 

4


 

 

>11


 

 

0


 

 

3


 

 

<11的的占比7/10


 

 

拖欠贷款的比例


 

 

3/7


 
 
 

未拖欠贷款的比例


 

 

4/7


 

 

<11的基尼指数


 

 

1-(3/7)^2-(4/7)^2=0.4898


 
 
   

 

>11的占比3/10


 

 

拖欠贷款的比例


 

 

0/3


 
 
 

未拖欠贷款的比例


 

 

3/3


 

 

>11的基尼指数


 

 

1-(0/3)^2-(3/3)^2=0


 
 

 

以11作为区分的基尼指数


 

 

7/10*0.4898+3/10*0=0.34286


 
 

 

(8)选择12.25基尼指数


 

 


 

 


 

 

<12.25


 

 

3


 

 

5


 

 

>12.25


 

 

0


 

 

2


 

 

<12.25的的占比8/10


 

 

拖欠贷款的比例


 

 

3/8


 
 
 

未拖欠贷款的比例


 

 

5/8


 

 

<12.25的基尼指数


 

 

1-(3/8)^2-(5/8)^2=0.4688


 
 
   

 

>12.25的占比2/10


 

 

拖欠贷款的比例


 

 

0/2


 
 
 

未拖欠贷款的比例


 

 

2/2


 

 

>12.25的基尼指数


 

 

1-(0/2)^2-(2/2)^2=0


 
 

 

以12.25作为区分的基尼指数


 

 

8/10*0.4688+2/10*0=0.375


 
 

 

(9)选择17.25基尼指数


 

 


 

 


 

 

<17.25


 

 

3


 

 

6


 

 

>17.25


 

 

0


 

 

1


 

 

<17.25的的占比9/10


 

 

拖欠贷款的比例


 

 

3/9


 
 
 

未拖欠贷款的比例


 

 

6/9


 

 

<17.25的基尼指数


 

 

1-(3/9)^2-(6/9)^2=0.4444


 
 
   

 

>17.25的占比1/10


 

 

拖欠贷款的比例


 

 

0/1


 
 
 

未拖欠贷款的比例


 

 

1/1


 

 

>17.25的基尼指数


 

 

1-(0/1)^2-(1/1)^2=0


 
 

 

以17.25作为区分的基尼指数


 

 

9/10*0.4444+1/10*0=0.39996


 
 

 

按照年收入计算的基尼指数如下:


 
  

 

1


 

 

以6.5作为区分的基尼指数


 

 

1/10*0+9/10*0.444=0.3996


 

 

2


 

 

以7.25作为区分的基尼指数


 

 

2/10*0+8/10*0.4688=0.375


 

 

3


 

 

以8作为区分的基尼指数


 

 

3/10*0+7/10*0.4898=0.34286


 

 

4


 

 

以8.75作为区分的基尼指数


 

 

4/10*0.375+6/10*0.4444=0.41664


 

 

5


 

 

以9.25作为区分的基尼指数


 

 

5/10*0.48+5/10*0.32=0.4


 

 

6


 

 

以9.75作为区分的基尼指数


 

 

6/10*0.5+4/10*0=0.3


 

 

7


 

 

以11作为区分的基尼指数


 

 

7/10*0.4898+3/10*0=0.34286


 

 

8


 

 

以12.25作为区分的基尼指数


 

 

8/10*0.4688+2/10*0=0.375


 

 

9


 

 

以17.25作为区分的基尼指数


 

 

9/10*0.4444+1/10*0=0.39996


 

 

本特征中选取9.75作为最优划分,因为基尼指数最小。


 



 

每个特征的计算:


 

 

特征名称


 

 

基尼指数


 
 
 

是否有房


 

 

3/10*0+7/10*0.4898=0.34286


 
 
 

{已婚,(单身,离异)}


 

 

4/10*0+6/10*0.5=0.3


 
 
 

年收入(9.75)


 

 

6/10*0.5+4/10*0=0.3


 
 
 

故选择基尼指数最小的:{已婚,(单身,离异)}特征


 


 

分支一的数据


 

 

序号


 

 

是否有房


 

 

婚姻状况


 

 

年收入


 

 

是否拖欠贷款


 

 

2


 

 


 

 

已婚


 

 

10


 

 


 

 

4


 

 


 

 

已婚


 

 

12


 

 


 

 

6


 

 


 

 

已婚


 

 

6


 

 


 

 

9


 

 


 

 

已婚


 

 

7.5


 

 


 


由于分支一的结果为同一个类别(均为:否),故这些数据不必再分支,直接作为叶节点。


 

分支二的数据


 

 

序号


 

 

是否有房


 

 

婚姻状况


 

 

年收入


 

 

是否拖欠贷款


 

 

1


 

 


 

 

单身


 

 

12.5


 

 


 

 

3


 

 


 

 

单身


 

 

7


 

 


 

 

5


 

 


 

 

离异


 

 

9.5


 

 


 

 

7


 

 


 

 

离异


 

 

22


 

 


 

 

8


 

 


 

 

单身


 

 

8.5


 

 


 

 

10


 

 


 

 

单身


 

 

9


 

 


 


分支二的数再按照上述方法,计算分支。


最终:1.如果都是同一类(如分支一数据),直接将类对应的值作为叶节点的值,不再按特征拆分。


2.特征都使用完了,按照占比最多的类对应的值,作为叶节点的值。


          

本文由职坐标整理并发布,希望对同学们有所帮助。了解更多详情请关注职坐标大数据云计算大数据安全频道!

本文由 @小标 发布于职坐标。未经许可,禁止转载。
喜欢 | 0 不喜欢 | 0
看完这篇文章有何感觉?已经有0人表态,0%的人喜欢 快给朋友分享吧~
评论(0)
后参与评论

您输入的评论内容中包含违禁敏感词

我知道了

助您圆梦职场 匹配合适岗位
验证码手机号,获得海同独家IT培训资料
选择就业方向:
人工智能物联网
大数据开发/分析
人工智能Python
Java全栈开发
WEB前端+H5

请输入正确的手机号码

请输入正确的验证码

获取验证码

您今天的短信下发次数太多了,明天再试试吧!

提交

我们会在第一时间安排职业规划师联系您!

您也可以联系我们的职业规划师咨询:

小职老师的微信号:z_zhizuobiao
小职老师的微信号:z_zhizuobiao

版权所有 职坐标-一站式IT培训就业服务领导者 沪ICP备13042190号-4
上海海同信息科技有限公司 Copyright ©2015 www.zhizuobiao.com,All Rights Reserved.
 沪公网安备 31011502005948号    

©2015 www.zhizuobiao.com All Rights Reserved

208小时内训课程