增加了样本数据的大小-R



我的同事之一表明,randomForest()在非常大的数据集中表现不佳。现在,我只是想弄清楚是否真的是这种情况,但是由于无法共享数据集(敏感信息),所以我认为我不妨尝试提出一个大型数据集。我已经尝试关注,但无法理解错误消息:

library(randomForest)
data(iris)
dataFile <- iris
newdataFile <- dataFile[sample(dataFile, size= 1:1000000000, replace=T),]

错误消息:

Error in xj[i] : invalid subscript type 'list'

任何人都可以在这里引导我吗?

sample接受向量。从数据采样时。帧通常通过将行引用为一个数字来采样行,类似于子集,但在这种情况下,使用替换。

newdataFile <- iris[sample(nrow(iris),100000,replace=T),]

断言随机森林对大型数据集的表现不佳是荒谬的。从样本量和多元角度来看,它非常适合高维问题。RF和非常大的问题的主要问题是:1)障碍性和2)样本平衡。

如果您遇到一个类成比例更大(> 30%)的问题,则引导程序可能会偏置,并且OOB验证(可能是估算值)是不正确的。结果,说[0 = 10000,1 = 200]的二进制问题的结果将是一个非常高的预测率,至0至1,从而导致了模型的非常好,但非常膨胀,OOB错误率,但是班级1的表现非常差。

这显然不能代表模型性能,对于第1类的预测率很低,如果您有班级平衡问题,我将遵循任何一个Chen等人的方法。Al。,(2004)或Evans&amp;库什曼(2009)。

Chen C,Liaw A,Breiman L(2004)使用随机森林学习不平衡的数据。http://www.stat.berkeley.edu/tech-reports/666.pdf

Evans,J.S。和S.A. Cushman(2009)使用随机森林对针叶树物种进行梯度建模。景观生态学5:673-683。

最新更新