Scikit learn 理解随机分类器中的max_特征参数
我正在分析RandomForestClasifier,需要一些帮助Scikit learn 理解随机分类器中的max_特征参数,scikit-learn,random-forest,decision-tree,ensembles,Scikit Learn,Random Forest,Decision Tree,Ensembles,我正在分析RandomForestClasifier,需要一些帮助 max_features参数给出了随机林中拆分的最大特征数,通常定义为sqrt(n_特征)。如果m是n的sqrt,则DT形成的组合数为nCm。如果nCm小于n_估计量(随机林中的决策树数),该怎么办 示例:对于n=7,max\u features为3,因此nCm为35,这意味着决策树的35个独特特征组合。现在,对于n_估计量=100,剩下的65棵树是否具有重复的特征组合?如果是这样的话,树木之间的关联不会在答案中引入偏差吗 ma
max_features
参数给出了随机林中拆分的最大特征数,通常定义为sqrt(n_特征)
。如果m是n的sqrt,则DT形成的组合数为nCm。如果nCm小于n_估计量(随机林中的决策树数),该怎么办
示例:对于n=7,max\u features
为3,因此nCm为35,这意味着决策树的35个独特特征组合。现在,对于n_估计量
=100,剩下的65棵树是否具有重复的特征组合?如果是这样的话,树木之间的关联不会在答案中引入偏差吗
max_features
parameters设置每次拆分时要使用的最大特征数。因此,如果有p个节点
max_samples
强制对来自X的数据点进行采样。默认情况下,它采样的大小与X的大小相同
p!*nCm*(n+n-1)!/(n!(n-1)!)
对于你的例子,让我们考虑在每个树中有10个节点,在X.
中有10个样本。10! * 7C3 * (19!/ 10! * 9!)
= 11732745024000.0
因此,对于一个合理大小的数据集不会有任何偏差。那么,我们不是在开始时就为随机林中的每个估计器定义了一个子集吗?是否考虑了所有估计器的所有特征,然后在每个节点随机选择进行分割?是的,在每个节点随机选择。从文档:如果INT,那么在每个分裂中考虑Max特征特征。如果Bootstrap是真的和Max样本,读更多,没有,它将没有样本= x.Frime[0 ],所以在这一点上与引导错误是有区别的。(n!(n-1)!)在唯一数量的树中。谢谢