首页 文章

R - 插入符号::训练“随机森林”参数

提问于
浏览
0

我正在尝试使用插入符号包中的train()fx在60个变量和~20,000个观察点上构建分类模型 . 我正在使用随机森林方法并且在我的训练集上返回0.999准确度,但是当我使用模型进行预测时,它将每个测试观察分类为同一类(即,20个观察中的每一个被归类为“1”) 5种可能的结果) . 我确定这是错误的(测试集是针对Coursera测验,因此我没有发布确切的代码)但我不确定发生了什么 .

我的问题是,当我调用最终的fit模型(fit $ finalModel)时,它表示它总共生成了500棵树(默认和预期), however the number of variables tried at each split is 35. 我知道将进行分类,为每个分割选择的标准观察数是正方形总预测数的根(因此,应该是sqrt(60)= 7.7,称之为8) . 这可能是问题吗?

我对我的模型或数据清理是否有问题感到困惑 .

set.seed(10000)
fitControl <- trainControl(method = "cv", number = 5)
fit <- train(y ~ ., data = training, method = "rf", trControl = fitControl)

fit $ finalModel

Call:
 randomForest(x = x, y = y, mtry = param$mtry) 
           Type of random forest: classification
                 Number of trees: 500
No. of variables tried at each split: 41

    OOB estimate of  error rate: 0.01%

1 回答

  • 0

    如果学生未能删除NA值超过50%的自变量,则使用Random Forest作为Coursera的约翰霍普金斯实用机器学习课程的最终项目将为测验的所有20个测试用例生成相同的预测 .

    SOLUTION: 从模型中删除具有高比例缺失值的变量 .

相关问题