【发布时间】:2015-03-21 07:32:12
【问题描述】:
我有一系列文档(约 50,000 个),我已将其转换为语料库,并一直在使用 R 中的 topicmodels 包构建 LDA 对象。不幸的是,为了测试 150 多个主题,需要几个小时.
到目前为止,我发现我可以使用以下方法同时测试几个不同的集群大小:
library(topicmodels)
library(plyr)
library(foreach)
library(doMC)
registerDoMC(5) # use 5 cores
dtm # my documenttermmatrix
seq <- seq(200,500, by=50)
models <- llply(seq, function(d){LDA(dtm, d)}, .parallel=T)
有没有办法并行化 LDA 函数以使其运行得更快(而不是一次运行多个 LDA)?
【问题讨论】:
-
抱歉,不清楚这里的问题是什么?
-
如何在 R 中并行化主题模型包中的 LDA 函数(类似于我发布的链接中显示的内容。那里的讨论仅涵盖完全不同的 Windows 实现)?我也想知道是否还有其他选择,特别是在 R 中。
-
这就是您的问题不清楚的原因——您的计算环境是什么,哪些并行实现在您的环境中不起作用?
-
在真实操作系统上的并行化比在 Windows 上容易得多。例如,使用
foreach替代方案并阅读一些关于可在 linux 上使用的(几个)并行后端的小插曲。 -
fg nu,我说我使用的是“AWS 服务器(16 核)是 linux”。您对我的环境有更具体的问题吗?泰勒,什么是 MWE? Roland,我发现我可以混合使用 Plyr、foreach 和 DoMC 包来并行运行具有不同集群数量(即 200、250、300 等)的 LDA 函数。是否有任何实现可以并行化 LDA 函数本身以使其更快?
标签: r parallel-processing lda topic-modeling