克服随机森林回归中的多重共线性并仍然保留模型中的所有变量

时间:2016-09-16 17:35:02

标签: r correlation random-forest

我是随机森林回归的新手。我在prep1中有300个连续变量(299个预测变量和1个目标),其中一些预测变量高度相关。问题是我仍然需要为每个预测变量获取重要值,因此消除一些不是一个选项。

以下是我的问题:

1)有没有办法为每棵树选择不高度相关的变量,如果是,应该如何调整以下代码?

2)假设1),是否会解决多重共线性问题?

  bound <- floor(nrow(prep1)/2)         
  df <- prep1[sample(nrow(prep1)), ]            
  train <- df[1:bound, ]             
  test <- df[(bound+1):nrow(df), ]    
  modelFit <- randomForest(continuous_target ~., data = train)
  prediction <- predict(modelFit, test)  

1 个答案:

答案 0 :(得分:0)

随机森林具有选择具有替换的样本以及随机选择这些样本的特征子集的性质。根据您的场景,假设您在响应变量中没有偏差,那么构建大量树木应该会让您对所有变量都很重要。虽然这会增加计算复杂度,因为您对每个行李都会多次捕获相同的重要性。多重共线性也不会影响预测能力。