2014-09-03 62 views
0

我正在運行glmnet,在16核心機器上支持套索迴歸。我有大約800K行,大約2K列,稀疏矩陣格式,應該被訓練來預測第一列的概率。用於精確預測的數據集中的最小行數

這個過程變得非常緩慢。我想知道,有沒有一種方法可以通過在nfolds上並行化或者如果我可以選擇較小的行數而不影響精度來加快它的速度 。可能嗎?如果是這樣,那會更好嗎?

+0

看看:http://stackoverflow.com/questions/21698435/executing-glmnet-in-parallel-in-r – 2014-09-03 13:16:36

+0

爲我工作! – rai 2014-09-10 12:26:36

回答

0

的方法可以通過使用並行化,這與上述executing glmnet in parallel in R在評論鏈接解釋由cv.glmnet設置平行= TRUE選項()函數,一旦你指定內核的這樣的數量進行加快:

library(doParallel) 
registerDoParallel(5) 
m <- cv.glmnet(x, y, family="binomial", alpha=0.7, type.measure="auc", 
      grouped=FALSE, standardize=FALSE, parallel=TRUE) 

減少行數更多的是基於測試集上AUC值的判斷調用。如果它高於閾值,並且減少行數不會影響這一點,那麼它肯定是一個好主意。