1

我正在尝试将 randomForest 对象预测为一个巨大的栅格层(34 个 mio 单元,120 多个层)。因此,我使用包clusterR内的功能raster。但是,如果我开始predict之前计算的randomForest对象,它会被加载到所有并行工作人员中。因此,所有进程组合起来需要大量内存。

randomForest是否可以在不丢失模型的情况下减小对象的大小?这个事情谁有经验?

我创建这样的模型:

library(randomForest)

set.seed(42)
df <- data.frame(class = sample(x = 1:3, size = 10000, replace = T))
str(df)

for (i in 1:100){
  df <- cbind(df, runif(10000))
}

colnames(df) <- c("class", 1:100)

df$class <- as.factor(df$class)

rfo <- randomForest(x = df[,2:ncol(df)], 
                    y = df$class, 
                    ntree = 500, 
                    do.trace = 10)

object.size(rfo) 
# 57110816 bytes
4

0 回答 0