我正在构建一个具有相当大数据集的 GBM 模型。data.table
非常适合处理数据。但是当我运行 GBM 模型时,它需要很长时间才能完成。查看活动监视器(在 Mac 中),我可以看到该进程并没有用完所有内存,也没有最大化处理器。
由于 GBM 是单核的,我无法修改它以在多核上运行,我有哪些选择来提高我的运行时间?现在我正在使用 4BG RAM 和 1.7GHz i5 的 Macbook Air。
我不确定以下哪个选项最有助于提高性能: (i) 购买具有更大内存的计算机;(ii) 获得更强大的芯片 (i7),或 (iii) 使用 Amazon AWS 并在那里安装 R。这些将如何帮助?
根据 Brandson 的要求添加示例代码:
library(gbm)
GBM_NTREES = 100
GBM_SHRINKAGE = 0.05
GBM_DEPTH = 4
GBM_MINOBS = 50
GBM_model <- gbm.fit(
x = data[,-target] ,
y = data[,target] ,
#var.monotone = TRUE, #NN added
distribution = "gaussian"
,n.trees = GBM_NTREES ,
shrinkage = GBM_SHRINKAGE ,
interaction.depth = GBM_DEPTH ,
n.minobsinnode = GBM_MINOBS ,
verbose = TRUE)