machine-learning - 在随机森林中树的每个节点处随机选择变量

标签 machine-learning random-forest decision-tree

在随机森林方法中,对于每棵树,我们随机选择一组固定大小的变量(特征)。但是,一旦该集合针对该特定树被卡住,该树的行为是否像常规决策树算法一样?

我假设随机森林只不过是生成一堆经典的“决策树”并为最终分类投票。但在许多地方,无论我读到的描述似乎都表明了这一点;对于森林中给定的决策树,即使在每个节点,我们也随机选择变量。是这样吗?

这是否意味着在树中的每个节点,我们从该树固定的变量集中随机选择 m 个变量?或者来自训练数据集的全局变量集?然后从选定的一组变量中,我们启发式地选择 1 个变量(例如,哪个变量最大化信息增益)——这是正确的说法吗?

最佳答案

“在随机森林方法中,我们为每棵树随机选择一组固定大小的变量(特征)。但是一旦该组针对该特定树被卡住,该树的行为是否像常规决策树算法一样”

没有

“我假设随机森林只不过是生成一堆经典的“决策树”并针对最终分类进行投票。但在许多地方,我读过的任何描述似乎都表明了这一点;对于给定的决策树在森林中,即使在每个节点,我们也随机选择变量。是这样的吗?”

是的

“这是否意味着在树中的每个节点,我们从该树固定的变量集中随机选择 m 个变量?

这有点令人困惑,这是假设有另一个更大的子集为可以选取 m 的树保留吗?如果不是这个假设,我认为这本质上是在问树是否是用每个节点的同一组随机选择的特征来生长的,答案是否定的。

在随机森林中,每个节点都会发生特征随机化。因此,如果总共有 100 个预测变量,则对于树中的每个节点,会随机选择 10 个(假设)的子集并评估最佳分割。请注意,在树生长的整个过程中,每个节点中的树数量保持不变。

希望这有帮助。

关于machine-learning - 在随机森林中树的每个节点处随机选择变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43288900/

相关文章:

algorithm - SystemML 决策树 - "NUMBER OF SAMPLES AT NODE 1.0 CANNOT BE REDUCED TO MATCH 10"

python - 如何使用预训练的神经网络处理灰度图像?

python - 如何对新实例进行分类预处理,使特征编码与Scikit-learn的模型一致?

python - 用于 2D ALE 图的 Python PyALE 函数的值错误

r - CART 决策树中的冲突 split

C++决策树存储

r - 使用 dtwclust 进行动态时间规整距离 (DTW) 的时间序列聚类

python - 如何提取多类分类的随机森林树规则?

python - 随机森林处理否定

machine-learning - 如何在随机森林模型训练中最好地使用邮政编码?