成本复杂度剪枝:最弱连接和子树序列

一棵长满的树怎么一步步剪小?给定惩罚 α,代价 R(T) + α|T| 最小的是哪棵子树?

SOA SRMSOA PACAS MAS-II
对过的标准答案
2 条
覆盖的考试公式
1 个
参数
9 个
开源库
1 个

01当场运行

改一个参数,当场重算

正在用默认参数运行,计算量大的方法最多要 20 秒。

04出处和说明

公式从哪里来,有什么限制

列出参考的教材、论文和考试公式条目。方法的限制和实现上的说明也写在这里。

参考

  • James、Witten、Hastie、Tibshirani:An Introduction to Statistical Learning(第 2 版)8.1 决策树的基础
  • Breiman、Friedman、Olshen、Stone:Classification and Regression Trees(1984)第 3 章 最弱连接剪枝
  • Hastie、Tibshirani、Friedman:The Elements of Statistical Learning(第 2 版)9.2 Tree-based methods

覆盖的考试公式

  • SML-005成本复杂度剪枝SRMPAMAS-II

公式条目按精算考试的公式表整理,编号和中文名是平台自己的。

这个方法算什么

长一棵大树,按最弱连接算出剪枝的序列:每一步剪掉 g(t) = (R(t) − R(T_t)) / (|T_t| − 1) 最小的内部节点,得到 α_1 < α_2 < … 和嵌套的子树。对给定的 α 列出每棵子树的代价 R(T) + α|T|,标出最小的那棵。

说明和限制

  • R(t) 是节点 t 作叶子时的风险(回归树是残差平方和,车险频率是泊松偏差),T_t 是以 t 为根的子树。
  • 同一个 α 下几个节点的 g(t) 相等时一起剪掉。α 从 α_k 到 α_{k+1} 之间,最优的子树都是 T_k(Breiman 等 1984 定理 3.10)。
  • 这里只算剪枝的序列。用交叉验证选 α 见 statistical_learning.regression_tree。

数据

看参数里选的数据:选平台的数据集时是真实数据或公开样例,填自己的数时只用输入的数。上面运行的输出里写明这一次用的是哪种。

开源库和版本

  • numpy2.4.6BSD-3-Clause数值计算

05同族的方法

统计学习,还有 9 个方法

同一个方法族里的其他方法。在智能体里,用一句话就能调用这些方法。

在智能体里这样问“一棵长满的树怎么一步步剪小?给定惩罚 α,代价 R(T) + α|T| 最小的是哪棵子树?”