BBYR Achieve
返回信息流
这是一条镜像帖。来源:北邮人论坛 / ml-dm / #29838同步于 2018/6/2
该镜像源已超过 30 天没有更新,可能在源站已被删除。
ML_DM机器人发帖

【问题】CART算法剪枝问题

H058911
2018/6/2镜像同步5 回复
看的是李航《统计学习方法》里边的剪枝,里边提到改变alpha,生成一个子树序列{T0, T1, ···, Tn},然后比较这些子树在验证集中的表现,选择最优子树作为剪枝结果。 我的问题是,为什么要如此费劲的生成子树序列呢? 直接从树的叶子节点开始往上判断,如果一组叶子节点回缩后在验证集上的表现更好,就回缩;否则不做处理。采用这样的剪枝策略也可以做到简化模型,而且运算量要小不少。
订阅后,新回复会通过你的通知中心匿名送达。
5 条回复
schiller机器人#1 · 2018/6/2
局部最优不一定是全局最优?
Blachat机器人#2 · 2018/6/2
剪枝分前剪枝和后剪枝,你说的是后剪枝
H058911机器人#3 · 2018/6/2
【 在 schiller 的大作中提到: 】 : 局部最优不一定是全局最优? 咦,有道理。我再看看
H058911机器人#4 · 2018/6/3
【 在 schiller 的大作中提到: 】 : 局部最优不一定是全局最优? 又看了一遍CART剪枝,觉得这种剪枝方法应该是对验证集不同的适应方法(对比后剪枝),好处应该是在适应验证集的基础上保留对训练集的适应。勉强说,后剪枝和CART的剪枝比起来,也是局部和全局的关系。 在迭代求T1, T2...的过程中,alpha值不断变大,也就意味着对树的简化越来越多,对训练集的拟合程度越来越差;而通过验证集从这一系列树中选择一颗,也就是通过验证集来选择对生成树的简化程度,而选择的同时也尽可能保证了简化后的树对训练集的拟合程度。 而后剪枝这种剪枝方法就比较暴力了,直接在生成树的基础上从底向上收,唯一的依据是生成树对验证集的预测准确度。这样的暴力剪枝虽然也减低了模型的复杂度,但没有考虑剪枝后的树对训练集的适应情况,对训练集的拟合程度下降的比较厉害。 瞎想了一通,有误之处还望指出
schiller机器人#5 · 2018/6/4
有点贪心和动态规划的意思?5.4节最后一句说“…其计算可以在局部进行。所以,决策树的剪枝算法可以由一种动态规划的算法实现。类似的动态规划算法可以参见文献[10]”。我也没有继续深究了。另外,楼主对习题5.3的证明有思路吗,看了参考文献也不会[ema1] 【 在 H058911 (下雨收衣服) 的大作中提到: 】 : 又看了一遍CART剪枝,觉得这种剪枝方法应该是对验证集不同的适应方法(对比后剪枝),好处应该是在适应验证集的基础上保留对训练集的适应。勉强说,后剪枝和CART的剪枝比起来,也是局部和全局的关系。 : 在迭代求T1, T2...的过程中,alpha值不断变大,也就意味着对树的简化越来越多,对训练集的拟合程度越来越差;而通过验证集从这一系列树中选择一颗,也就是通过验证集来选择对生成树的简化程度,而选择的同时也尽可能保证了简化后的树对训练集的拟合程度。 : 而后剪枝这种剪枝方法就比较暴力了,直接在生成树的基础上从底向上收,唯一的依据是生成树对验证集的预测准确度。这样的暴力剪枝虽然也减低了模型的复杂度,但没有考虑剪枝后的树对训练集的适应情况,对训练集的拟合程度下降的比较厉害。 : ...................