ROC křivka testovací dataset

0

Otázka

Já používám stříška balíčky porovnat různé modely.

Po tréninku model, jak najít ROC prostoru.

# Split data 
a<- createDataPartition(data$target, p = .8, list = FALSE)
train <- data[ a,]
test <- data[-a,]

myControl = trainControl(
    method = "cv",
    summaryFunction = twoClassSummary,
    classProbs = TRUE,
    verboseIter = FALSE,
)

model_knn = train(
    target ~ .,
    train,
    method = "knn",
    metric = "ROC",
    tuneLength = 10,
    trControl = myControl)

Například, to je jeden z modelů postaven. Pokud jsem se udělat následující, můžu ROC křivka můj trénink nastavit. Ale dostat ROC mého testování sada dat?

model_knn
plot(model)
machine-learning r
2021-11-23 04:25:29
1

Nejlepší odpověď

1

Jak jste neposkytly žádné údaje, jsem pomocí Sonaru data. Můžete použít následující kód, aby se ROC pozemku pro testovací data

library(caret)
library(MLeval)

data(Sonar)

# Split data 
a <- createDataPartition(Sonar$Class, p=0.8, list=FALSE)
train <- Sonar[ a, ]
test <- Sonar[ -a, ]

myControl = trainControl(
  method = "cv",
  summaryFunction = twoClassSummary,
  classProbs = TRUE,
  verboseIter = FALSE,
)

model_knn = train(
  Class ~ .,
  train,
  method = "knn",
  metric = "ROC",
  tuneLength = 10,
  trControl = myControl)

pred <- predict(model_knn, newdata=test, type="prob")
ROC <- evalm(data.frame(pred, test$Class, Group = "KNN"))

enter image description here

2021-11-23 10:17:33

je 0,9 oblasti ROC křivky? Co dělá Skupina 1 střední
user16971617

Ano, 0,9 je plocha pod ROC křivkou. Skupina uveďte název modelu. Jsem upravil kód pro zobrazení názvu modelu místo Skupina1.
Bappa Das

Děkuji. Můžu jen vytisknout AUC místo grafu, pokud chci dále zpracovávat?
user16971617

Můžete použít ROC$stdres aby byly hodnoty AUC.
Bappa Das

Když jsem se spustit ROC <- evalm(údaje. frame(pred, test$Class, Group = "KNN")) s mým dataset, to ukazuje další pozemky.
user16971617

Ale já jsem použít dataset místo toho, všechno je normální
user16971617

Aniž by viděl vaše data, je velmi těžké něco říct.
Bappa Das

user16971617

V jiných jazycích

Tato stránka je v jiných jazycích

Русский
..................................................................................................................
Italiano
..................................................................................................................
Polski
..................................................................................................................
Română
..................................................................................................................
한국어
..................................................................................................................
हिन्दी
..................................................................................................................
Français
..................................................................................................................
Türk
..................................................................................................................
Português
..................................................................................................................
ไทย
..................................................................................................................
中文
..................................................................................................................
Español
..................................................................................................................
Slovenský
..................................................................................................................