R中的GLM逻辑回归非常慢

时间:2018-02-21 05:26:54

标签: r logistic-regression glm

我正在尝试将逻辑回归拟合到一个小数据集(17k行,16列)。但它在60多分钟后继续运行,我刚刚结束了它。我的CPU和RAM都没有达到最大值 - 我们只是在开始拟合过程后观察到更高的利用率。为了排除出现严重编码错误的可能性,我使用5行乘16列的数据集测试了相同的代码。它奏效了 - 我能够获得summaryconfints。因此,必须有另一个问题。

数据集混合了factorintnumerical个变量。我想分享它的架构,但它包含敏感的专有信息。

我想知道是否有一些可以提出的解决方案,或者下面分享的五十年前老帖子中提出的解决方案是否仍然相关(我现在正在尝试这些旧解决方案)。

数据集维度和代码:

> dim(design_mat_final)
[1] 16812    16

log_model <- glm(label ~., 
                 family = binomial(link = 'logit'),
                 data = design_mat_final)

我的会话信息:

> sessionInfo()
R version 3.4.3 (2017-11-30)
Platform: x86_64-w64-mingw32/x64 (64-bit)
Running under: Windows 7 x64 (build 7601) Service Pack 1

Matrix products: default

locale:
[1] LC_COLLATE=English_United States.1252  LC_CTYPE=English_United States.1252   
[3] LC_MONETARY=English_United States.1252 LC_NUMERIC=C                          
[5] LC_TIME=English_United States.1252    

attached base packages:
[1] stats     graphics  grDevices utils     datasets  methods   base     

other attached packages:
[1] bindrcpp_0.2        dplyr_0.7.4         bit64_0.9-7         bit_1.1-12          data.table_1.10.4-3

loaded via a namespace (and not attached):
 [1] Rcpp_0.12.15     utf8_1.1.3       crayon_1.3.4     assertthat_0.2.0 R6_2.2.2         magrittr_1.5    
 [7] pillar_1.1.0     cli_1.0.0        rlang_0.1.6      tools_3.4.3      glue_1.2.0       yaml_2.1.16     
[13] compiler_3.4.3   pkgconfig_2.0.1  knitr_1.20       bindr_0.1        tibble_1.4.2    

与这篇5岁的帖子相关:How to speed up GLM estimation in r?

与这个6岁的CrossValidated帖子相关: https://stats.stackexchange.com/questions/26965/logistic-regression-is-slow

更新

我尝试了speedglm并且没有明显的效果。

0 个答案:

没有答案