我一直在研究700个行数据中的randomForest模型(41个特征)。这是一个示例电话:
myModel< - randomForest(RESPONSE~。,data = mydata,ntree = 50,maxnodes = 30)
我认为只有50棵树和30个终端节点,“myModel”的内存占用量会很小。但它在转储文件中是65兆。该对象似乎持有培训过程中的各种预测,实际和投票数据。
如果我只想要森林怎么办?我想要一个小的转储文件,我可以稍后加载,以便快速做出预测。我觉得森林本身不应该那么大......
任何人都知道如何剥夺这个傻逼到我可以做出预测的事情吗?
答案 0 :(得分:1)
试图摆脱将评论作为评论发布的习惯......
?randomForest
建议不要使用带有大量变量的公式接口...如果不使用公式接口,结果会有什么不同吗? ?randomForest
的 Value 部分还告诉您如何关闭部分输出(重要性矩阵,整个森林,邻近矩阵等)。
例如:
myModel <- randomForest(mydata[,!grepl("RESPONSE",names(mydata))],
mydata$RESPONSE, ntree=50, maxnodes=30, importance=FALSE,
localImp=FALSE, keep.forest=FALSE, proximity=FALSE, keep.inbag=FALSE)
答案 1 :(得分:1)
您可以使用R中的tuneRF
函数来了解树的数量并缩小尺寸。
tuneRF(data_train, data_train$Response, stepFactor = 1.2, improve = 0.01, plot = T, trace = T)
使用?tuneRF
了解有关内部变量的更多信息。