我正在尝试使用RTexttools包对大约10.000个文档进行分类。当我计算随机森林列车模型时,过程会消耗大量时间(CPU和内存)。 我在一台4芯和4GB内存的机器上工作。但是,我可以看到我的R-session仅使用1个核心来执行。 我读过一些关于foreach和doparallel的文档,但是我很难将它与textmining联系起来。 假设我想加快以下命令(目前需要超过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)
在列车模型计算之前,它将无济于事。