CART树算法的剪枝算法

  • 输入是CART树建立算法得到的原始决策树T。
  • 输出是最优决策子树Tα。
  • 算法过程如下:
  • 1)初始化αmin=∞, 最优子树集合ω={T}。
  • 2)从叶子节点开始自下而上计算各内部节点t的训练误差损失函数Cα(Tt)(回归树为均方差,分类树为基尼系数), 叶子节点数|Tt|,以及正则化阈值α=min{(C(T)−C(Tt))/(|Tt|−1),αmin}, 更新αmin=α
  • 3) 得到所有节点的α值的集合M。
  • 4)从M中选择最大的值αk,自上而下的访问子树t的内部节点,如果(C(T)−C(Tt))/(|Tt|−1)≤αk时,进行剪枝。并决定叶节点t的值。如果是分类树,则是概率最高的类别,如果是回归树,则是所有样本输出的均值。这样得到αk对应的最优子树Tk
  • 5)最优子树集合ω=ω∪Tk, M=M−{αk}。
  • 6) 如果M不为空,则回到步骤4。否则就已经得到了所有的可选最优子树集合ω.
  • 7) 采用交叉验证在ω选择最优子树Tα
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值