Kom igångKom igång gratis

Beräkna en förväxlingsmatris

Som du såg i videon är en förväxlingsmatris ett mycket användbart verktyg för att kalibrera modellens utdata och undersöka alla möjliga utfall av dina prediktioner (sant positivt, sant negativt, falskt positivt, falskt negativt).

Innan du skapar din förväxlingsmatris behöver du "skära" de predikterade sannolikheterna vid ett givet tröskelvärde för att omvandla sannolikheterna till en faktor med klassprediktioner. Kombinera ifelse() med factor() enligt följande:

pos_or_neg <- ifelse(probability_prediction > threshold, positive_class, negative_class)
p_class <- factor(pos_or_neg, levels = levels(test_values))

confusionMatrix() i caret förbättrar table() från bas-R genom att lägga till många användbara tilläggsstatistiker utöver grundfrekvenserna i tabellen. Du kan beräkna förväxlingsmatrisen (och tillhörande statistik) med hjälp av de predikterade utfallen samt de faktiska utfallen, t.ex.:

confusionMatrix(p_class, test_values)

Den här övningen är en del av kursen

Maskininlärning med caret i R

Visa kurs

Övningsinstruktioner

  • Använd ifelse() för att skapa en teckenvektorn m_or_r som får den positiva klassen, "M", när p är större än 0,5, och den negativa klassen, "R", annars.
  • Konvertera m_or_r till en faktor, p_class, med samma nivåer som test[["Class"]].
  • Skapa en förväxlingsmatris med confusionMatrix() och skicka in p_class samt kolumnen "Class" från datamängden test.

Interaktiv övning med praktiskt arbete

Testa den här övningen genom att slutföra den här exempelkoden.

# If p exceeds threshold of 0.5, M else R: m_or_r


# Convert to factor: p_class


# Create confusion matrix
Redigera och kör kod