我正在使用插入符号程序包在14x21矩阵上进行训练。以下脚本需要65秒钟来处理,这非常慢。我想知道通过使用R中的并行程序包是否可以提高效率?我在上面运行代码的PC有16个内核,但是我想知道是否需要插入%dopar%或其他脚本来提高速度。
library(caret)
library(foreach)
library(parallel)
library(doParallel)
library(ggplot2)
registerDoParallel(cores = 16)
nCores <- detectCores(logical = FALSE)
# read data
Macro <- read.csv("P:/Earnest/Old/R/Input.csv")
x <- Macro[1:13,3:21]
x <- as.matrix(x)
x
y <- Macro[1:13,2:2]
y <- as.matrix(y)
y
t <- Macro[14:14,3:21]
t <- as.matrix(t)
t
#select trainControl
ctrl = trainControl(method = "cv", number = 5, repeats = 5, verboseIter = TRUE, savePredictions = TRUE)
methoda <- "randomGLM"
#round 1
fit <- caret::train(y = as.vector(y),
x = x,
method = methoda,
trControl = ctrl,
preProc = c("center", "scale"))
a6 <- predict(fit ,t)