Aan de slagBegin gratis

Bereken een confusion matrix

Zoals je in de video zag, is een confusion matrix een heel handig hulpmiddel om de output van een model te kalibreren en alle mogelijke uitkomsten van je voorspellingen te bekijken (true positive, true negative, false positive, false negative).

Voordat je je confusion matrix maakt, moet je de voorspelde kansen “afkappen” bij een bepaalde drempel om kansen om te zetten naar een factor met klassevoorspellingen. Combineer ifelse() met factor() als volgt:

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

confusionMatrix() in caret is een verbetering op table() uit base R doordat het naast de basisaantallen in de tabel ook veel nuttige aanvullende statistieken toevoegt. Je kunt de confusion matrix (en de bijbehorende statistieken) berekenen met de voorspelde uitkomsten én de werkelijke uitkomsten, bijvoorbeeld:

confusionMatrix(p_class, test_values)

Deze oefening maakt deel uit van de cursus

Machine Learning met caret in R

Bekijk cursus

Oefeninstructies

  • Gebruik ifelse() om een tekenreeks, m_or_r, te maken die de positieve klasse, "M", is wanneer p groter is dan 0.5, en anders de negatieve klasse, "R".
  • Zet m_or_r om naar een factor, p_class, met dezelfde niveaus als test[["Class"]].
  • Maak een confusion matrix met confusionMatrix(), en geef p_class en de "Class"-kolom uit de test-gegevensset door.

Interactieve oefening met praktijkervaring

Probeer deze oefening door deze voorbeeldcode aan te vullen.

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


# Convert to factor: p_class


# Create confusion matrix
Code bewerken en uitvoeren