我熟悉的构建随机森林的方法如下:(来自http://www.stat.berkeley.edu/~breiman/RandomForests/cc_home.htm)
要在森林中建造一棵树,我们:
- 引导一个大小为 N 的样本,其中 N 是我们训练集的大小。使用这个自举样本作为这棵树的训练集。
- 在树的每个节点上随机选择我们 M 个特征中的 m 个。选择这 m 个特征中最好的一个进行拆分。(其中 m 是我们随机森林的参数)
- 尽可能最大程度地种植每棵树——即不修剪。
虽然这个算法在程序层面是有意义的并且肯定会产生良好的结果,但我不清楚步骤 1、2 和 3 背后的理论动机是什么。有人可以解释是什么促使某人提出这个程序以及为什么它效果这么好?
例如:为什么我们需要执行第 1 步?看起来我们并没有因为其通常的减少方差的目的而自举。