Estou treinando um modelo usando o caret
pacote em R por quase 3 dias. Os cálculos estão sendo executados em paralelo (vários processos). Infelizmente, não há saída no console R (modelo SVM do kernlab
pacote), então não sei se estou com 10% ou 90% concluído.
Existe uma maneira de descobrir de alguma forma qual é o processo dos cálculos?
Estou usando o OS X, talvez despejando a pilha de processos e tentando encontrar os valores dos parâmetros atualmente em avaliação ou a iteração do k-fold. Mas como?
EDIT: o script para treinamento:
ctrl <- trainControl(method = "cv", number = 10, selectionFunction = "best",
classProbs = TRUE, summaryFunction = twoClassSummary,
verboseIter = TRUE)
grid_svm <- expand.grid(.C = logseq(2^-15, 2^3, 10))
svm <- train(CLASS ~ ., data = dataset, method = "svmLinear", preProcess = c("center", "scale"),
metric = "ROC", trControl = ctrl, tuneGrid = grid_svm, verbose = TRUE)
fonte
allowParallel
entanto, seu snippet omite o argumento). A partir de agora, não conheço nenhuma funcionalidade dentro do sinal de intercalação para fornecer saída detalhada paralela. Isso ocorre porque osforeach
loops sãoverbose
codificados comoFALSE
. Se isso for importante para você, sua melhor aposta pode ser enviar um problema na página do github e ver se uma alteração pode ser implementada.fit
função para imprimir mais. Se você não vê nenhum registro e possuiverboseIter = TRUE
, está usando o RStudio? O RStudio desvia a saída de maneira diferente de R; Recebo logs na base R, mas não no RStudio. Também existetop
no unix para que você possa verificar se não esgotou a memória do sistema (é necessário executar mais em paralelo) e se os trabalhadores estão ativos.