Running the Random Forest example from http://www.kaggle.com/c/icdar2013-gender-prediction-from-handwriting/data, the following line:
forest_model <- randomForest(as.factor(male) ~ ., data=train, ntree=10000)
takes hours (not sure whether it will ever end, but the process does seems to work) .
The data set has 1128 rows and ~7000 variables.
Is it possible to estimate when the Random Forest training will finish? Can I profile R somehow to get more information?
一个想法,来控制收敛是使用do.trace
为详细模式
iris.rf <- randomForest(Species ~ ., data=iris, importance=TRUE,
+ proximity=TRUE,do.trace=TRUE)
ntree OOB 1 2 3
1: 8.62% 0.00% 9.52% 15.00%
2: 5.49% 0.00% 3.45% 13.79%
3: 5.45% 0.00% 5.41% 11.76%
4: 4.72% 0.00% 4.88% 9.30%
5: 5.11% 0.00% 6.52% 8.89%
6: 5.56% 2.08% 6.25% 8.33%
7: 4.76% 0.00% 6.12% 8.16%
8: 5.41% 0.00% 8.16% 8.16%
.......
发现问题,使用式中随机森林创造了巨大的性能下降。
更多关于这一点,如何估计随机森林运行时间可以发现: https://stats.stackexchange.com/questions/37370/random-forest-computing-time-in-r和HTTP://www.gregorypark。组织/ p = 286
下面是最后的代码:
forest_model <- randomForest(y=train$male, x=train[,-2], ntree=10000,do.trace=T)