CommencezCommencez gratuitement

Calculer une matrice de confusion

Comme vous l'avez vu dans la vidéo, une matrice de confusion est un outil très utile pour étalonner la sortie d'un modèle et examiner tous les résultats possibles de vos prédictions (vrai positif, vrai négatif, faux positif, faux négatif).

Avant de créer votre matrice de confusion, vous devez « couper » vos probabilités prédites à un seuil donné pour transformer les probabilités en facteur de classes prédites. Combinez ifelse() avec factor() comme suit :

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

confusionMatrix() dans caret améliore table() de R de base en ajoutant de nombreuses statistiques complémentaires utiles en plus des taux de base du tableau. Vous pouvez calculer la matrice de confusion (et les statistiques associées) à partir des résultats prédits ainsi que des résultats réels, par exemple :

confusionMatrix(p_class, test_values)

Cette activité fait partie du cours

Machine Learning avec caret en R

Voir le cours

Instructions de l’exercice

  • Utilisez ifelse() pour créer un vecteur de caractères, m_or_r, qui prend la classe positive, "M", lorsque p est supérieur à 0.5, et la classe négative, "R", sinon.
  • Convertissez m_or_r en un facteur, p_class, avec les mêmes niveaux que ceux de test[["Class"]].
  • Créez une matrice de confusion avec confusionMatrix(), en passant p_class et la colonne "Class" de l'ensemble de données test.

Exercice interactif pratique

Essayez cet exercice en complétant ce code d’exemple.

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


# Convert to factor: p_class


# Create confusion matrix
Modifier et exécuter le code