1

我正在尝试使用 RTexttools 包对大约 10.000 个文档进行分类。当我计算随机森林训练模型时,过程会消耗大量时间(CPU 和内存)。我在一台有 4 个内核和 4GB 内存的机器上工作。但是,我可以看到我的 R-session 只使用 1 个核心来执行。我已经阅读了一些关于 foreach 和 doparallel 的文档,但我无法将其与文本挖掘联系起来。假设我想加速以下命令(目前需要 120 多分钟):

library(RTextTools)
library(tm)
data <- read.csv2(file.choose(), header = T, sep = ";")
colnames(data) <-c("Text","Sentiment")
doc_matrix <-
  create_matrix(
    data$Text,
    language = "russian",
    removeNumbers = TRUE,
    stemWords = TRUE,
    removeSparseTerms = .998
  )
container <-
  create_container(
    doc_matrix,
    data$Sentiment,
    trainSize = 1:1000,
    testSize = 1001:2165,
    virgin = FALSE
  )
RF <- train_model(container,"RF")

有没有办法通过使用并行化来加快这个过程?如果我只是使用

library(doParallel)
cl <- makeCluster(detectCores())
registerDoParallel(cl)

在训练模型计算之前它不会有太大帮助。

4

0 回答 0