关于在随机森林中建造一棵树,我有一个小小的疑问。我对树结构的理解是:
Suppose
-----------
N (total records of data set) =1000
M (total features) =30
n (Subset) = 500
m (fixed features to be used in RF) = 3
First Tree
-----------
1) Random sample data S1 (n)
2) Take m features from M eg: m2, m16, m29
3) Identify the best attribute – eg: m16 --> root node
4) Split S1 on m16 – gives 2 new subsets eg: S1_a and S1_b
5) For S1_a, select m eg: m1,m5,m10
6) Identify the best attribute – eg: m1
7) Split S1_a into S1_a1, S1_a2
8) For S1_b, select m eg: m11,m15,m10
9) Identify the best attribute – eg: m15
10) Split S1_b into S1_b1, S1_b2
Question is : When does this splitting get over ?
i.e.After step 7, does S1_a1, and S1_a2 further split ? When does it end ?
Regards
Sri发布于 2017-09-01 23:29:20
这是一个通用的答案,但应该适用于任何随机的森林代码实现。随机森林有一个称为节点大小的参数。节点大小是树叶中的观测值的数量,在这一点上,算法将不再保持分裂。因此,在您的示例中,如果将包含4个观察值的节点拆分为2个节点,每个节点包含2个观察值,并且节点大小为2,则算法将停止。
当然,物理意义上的最小节点大小是1,所以任何小于这个值的值都应该被拒绝。
基于阅读上面的段落,您可能会得出结论,较小的节点大小,例如1,将导致最佳模型。在实践中,情况并不总是如此。在某种程度上,继续拆分可能不再提高模型的预测能力。因此,最佳节点大小是产生可靠模型的最大值。
https://stackoverflow.com/questions/46003407
复制相似问题