决策树一CART算法(第二部分)

CART分类树算法


CART分类树算法解读

输入:数据集 D,特征集 A,停止条件阈值ϵ\epsilonϵ

输出:CART分类决策树

步骤:

  1. 从根节点出发,进行操作,构建操作二叉树

  2. 计算现有特征下对数据集 基尼指数,选择最优特征。

    ——在特征Ag下,对其可能取的每个值g,根据样本点对Ag=g的测试为“是”我“否”,
    将D分制成D1和D2两部分,计算Ag=g时的基尼指数。
    ——选择基尼指数最小的那个值作为该特征下的最优切分点。
    ——计算每个特征下的最优切分点,并比较在最优切分下的每个特征的基尼指数, 选择基尼指数最小的那个特征,即最优特征。

  3. 根据最优特征和最优切分点,生成两个子节点,并将数据集分配到对应的子节点中

     按照最优切分点来分成二叉树
    
  4. 分别对两个子节点继续递归调用上面的步骤,直到满足条件,即生成CART分类决策树。

    这里条件一般是阈值 ,当基尼指数小于这个阈值时,
    样本基本属于同一类,或者就是没有更多的特征了,则CART分类决策树的生成


CART分类树真题讲解**

训练集D ,「特征集」分别是 年龄A1A_1A1 , 是否有工作A2A_2A2 , 是否有自己的房子 A3A_3A3, 信贷情况A4A_4A4

类别为:Y1Y_1Y1=是,Y2=否Y_2=否Y2=

在这里插入图片描述
用基尼指数的最小化来选出最优特征」

对于特征A条件下,样本集D的基尼指数为:
Gini⁡(D,A)=∣D1∣∣D∣Gini⁡(D1)+∣D2∣∣D∣Gini⁡(D2) \operatorname{Gini}(D, A)=\frac{\left|D_{1}\right|}{|D|} \operatorname{Gini}\left(D_{1}\right)+\frac{\left|D_{2}\right|}{|D|} \operatorname{Gini}\left(D_{2}\right) Gini(D,A)=DD1Gini(D1)+DD2Gini(D2)
第一种 特征:年龄

三个特征值: 青年A11A_{11}A11 、中年 A12A_{12}A12和老年A13A_{13}A13

CART算法是二叉树,所以数据集分为两类,有以下几种情况

  1. 以青年和非青年分类
    Gini⁡(D1)=2×25×35=1225 \operatorname{Gini}\left(D_{1}\right)=2 \times \frac{2}{5} \times \frac{3}{5}=\frac{12}{25} Gini(D1)=2×52×53=2512
    权重W1=515W_1=\frac{5}{15}W1=155
    Gini⁡(D1)=2×310×710=42100 \operatorname{Gini}\left(D_{1}\right)=2 \times \frac{3}{10} \times \frac{7}{10}=\frac{42}{100} Gini(D1)=2×103×107=10042
    权重W2=1015W_2=\frac{10}{15}W2=1510
    Gini⁡(D,A)=∣D1∣∣D∣Gini⁡(D1)+∣D2∣∣D∣Gini⁡(D2) \operatorname{Gini}(D, A)=\frac{\left|D_{1}\right|}{|D|} \operatorname{Gini}\left(D_{1}\right)+\frac{\left|D_{2}\right|}{|D|} \operatorname{Gini}\left(D_{2}\right) Gini(D,A)=DD1Gini(D1)+DD2Gini(D2)

    Gini⁡(D,A11)=515×1225+1015×42100=0.44 \operatorname{Gini}\left(D, A_{11}\right)=\frac{5}{15} \times \frac{12}{25}+\frac{10}{15} \times \frac{42}{100}=0.44 Gini(D,A11)=155×2512+1510×10042=0.44

  2. 以中年和非中年分类
    Gini⁡(D1)=2×25×35=1225 \operatorname{Gini}\left(D_{1}\right)=2 \times \frac{2}{5} \times \frac{3}{5}=\frac{12}{25} Gini(D1)=2×52×53=2512
    权重D1=515D_1=\frac{5}{15}D1

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值