Usando il punto di inserimento del pacchetto R, come è possibile generare una curva ROC in base ai risultati della convalida incrociata della funzione treno()?Curva ROC dai dati di allenamento nell'accurpitura
': Io effettuare le seguenti operazioni:
funzionedata(Sonar)
ctrl <- trainControl(method="cv",
summaryFunction=twoClassSummary,
classProbs=T)
rfFit <- train(Class ~ ., data=Sonar,
method="rf", preProc=c("center", "scale"),
trControl=ctrl)
La formazione va oltre una serie di parametri mtry e calcola il ROC AUC. Mi piacerebbe vedere la curva ROC associata: come faccio?
Nota: se il metodo utilizzato per il campionamento è LOOCV, quindi rfFit
conterrà un frame di dati non nullo nello slot rfFit$pred
, che sembra essere esattamente ciò di cui ho bisogno. Tuttavia, ho bisogno di questo per il metodo "cv" (k-fold validation) piuttosto che LOO.
Inoltre: no, la funzione roc
che prima era inclusa nelle precedenti versioni di caret non è una risposta: questa è una funzione di basso livello, non è possibile utilizzarla se non si dispone delle probabilità di previsione per ciascuna campione con convalida incrociata.
http://www.inside-r.org/packages/cran/caret/docs/roc – Frash
No, questa non è la risposta. Innanzitutto, la versione moderna del punto di inserimento non ha la funzione. Secondo, la funzione ha bisogno di una "variabile da tagliare", in particolare delle probabilità di previsione, ma come ottenerle dall'oggetto restituito dalla funzione train()? – January