Geekflare est soutenu par notre public. Nous pouvons gagner des commissions d'affiliation en achetant des liens sur ce site.
Partager sur:

Qu'est-ce qu'une matrice de confusion dans l'apprentissage automatique ?

matrice de confusion en apprentissage automatique
Scanner de sécurité des applications Web Invicti – la seule solution qui offre une vérification automatique des vulnérabilités avec Proof-Based Scanning™.

Une matrice de confusion est un outil pour évaluer les performances du type de classification des algorithmes d'apprentissage automatique supervisé.

What is a Confusion Matrix?

Nous, les humains, percevons les choses différemment – ​​même la vérité et les mensonges. Ce qui peut me sembler une ligne de 10 cm de long peut vous sembler une ligne de 9 cm. Mais la valeur réelle peut être 9, 10 ou autre chose. Ce que nous devinons est la valeur prédite !

Comment le cerveau humain pense

Tout comme notre cerveau applique sa propre logique pour prédire quelque chose, les machines appliquent divers algorithmes (appelés machine learning algorithmes) pour arriver à une valeur prédite pour une question. Encore une fois, ces valeurs peuvent être identiques ou différentes de la valeur réelle.

Dans un monde concurrentiel, nous aimerions savoir si notre prédiction est juste ou non pour comprendre nos performance. De la même manière, nous pouvons déterminer les performances d'un algorithme d'apprentissage automatique en combien prédictions qu'il a faites correctement.

Alors, qu'est-ce qu'un algorithme d'apprentissage automatique ?

Les machines essaient d'arriver à certaines réponses à un problème en appliquant une certaine logique ou un ensemble d'instructions, appelées algorithmes d'apprentissage automatique. Les algorithmes d'apprentissage automatique sont de trois types : supervisés, non supervisés ou renforcés.

Types d'algorithmes d'apprentissage automatique

Les types d'algorithmes les plus simples sont supervisés, où nous connaissons déjà la réponse, et nous entraînons les machines pour arriver à cette réponse en entraînant l'algorithme avec beaucoup de données - de la même manière qu'un enfant différencierait les personnes de différents groupes d'âge en regarder leurs caractéristiques encore et encore.

Les algorithmes de ML supervisé sont de deux types : la classification et la régression.

Les algorithmes de classification classent ou trient les données en fonction d'un ensemble de critères. Par exemple, si vous souhaitez que votre algorithme regroupe les clients en fonction de leurs préférences alimentaires - ceux qui aiment la pizza et ceux qui n'aiment pas la pizza, vous utiliserez un algorithme de classification comme l'arbre de décision, la forêt aléatoire, Bayes naïf ou SVM (Soutenez la machine de vecteur).

Lequel de ces algorithmes ferait le meilleur travail ? Pourquoi choisir un algorithme plutôt qu'un autre ?

Entrez dans la matrice de confusion….

A matrice de confusion est une matrice ou un tableau qui donne des informations sur la précision d'un algorithme de classification dans la classification d'un ensemble de données. Eh bien, le nom n'est pas pour confondre les humains, mais trop de prédictions incorrectes signifient probablement que l'algorithme était confus 😉 !

Ainsi, une matrice de confusion est une méthode d'évaluation des performances d'un algorithme de classification.

Comment s’y prendre?

Supposons que vous ayez appliqué différents algorithmes à notre problème binaire mentionné précédemment : classer (séparer) les personnes selon qu'elles aiment ou non la pizza. Pour évaluer l'algorithme dont les valeurs sont les plus proches de la bonne réponse, vous utiliseriez une matrice de confusion. Pour un problème de classification binaire (j'aime/je n'aime pas, vrai/faux, 1/0), la matrice de confusion donne quatre valeurs de grille, à savoir :

  • Vrai positif (TP)
  • Vrai négatif (TN)
  • Faux positif (FP)
  • Faux négatif (FN)

What are the four grids in a confusion matrix?

Les quatre valeurs déterminées à l'aide de la matrice de confusion forment les grilles de la matrice.

Grilles de matrice de confusion

True Positive (TP) et True Negative (TN) sont les valeurs correctement prédites par l'algorithme de classification,

  • TP représente ceux qui aiment la pizza, et le modèle les a classés correctement,
  • TN représente ceux qui n'aiment pas la pizza, et le modèle les a classés correctement,

Les faux positifs (FP) et les faux négatifs (FN) sont les valeurs prédites à tort par le classificateur,

  • FP représente ceux qui n'aiment pas la pizza (négatif), mais le classificateur a prédit qu'ils aiment la pizza (à tort positif). FP est également appelé une erreur de type I.
  • FN représente ceux qui aiment la pizza (positif), mais le classificateur a prédit que ce n'est pas le cas (négatif à tort). FN est également appelé erreur de type II.

Pour mieux comprendre le concept, prenons un scénario réel.

Disons que vous avez un ensemble de données de 400 personnes qui ont subi le test Covid. Maintenant, vous avez obtenu les résultats de divers algorithmes qui ont déterminé le nombre de personnes Covid positives et Covid négatives.

Voici les deux matrices de confusion pour comparaison :

En regardant les deux, vous pourriez être tenté de dire que le 1st l'algorithme est plus précis. Mais, pour obtenir un résultat concret, nous avons besoin de métriques capables de mesurer l'exactitude, la précision et de nombreuses autres valeurs qui prouvent quel algorithme est le meilleur.

Metrics using confusion matrix and their significance

Les principales métriques qui nous aident à décider si le classifieur a fait les bonnes prédictions sont :

# 1. Rappel/Sensibilité

Le rappel ou la sensibilité ou le taux de vrais positifs (TPR) ou la probabilité de détection est le rapport entre les prédictions positives correctes (TP) et le total des positifs (c'est-à-dire, TP et FN).

R = TP/(TP + FN)

Le rappel est la mesure des résultats positifs corrects renvoyés par rapport au nombre de résultats positifs corrects qui auraient pu être produits. Une valeur plus élevée de Rappel signifie qu'il y a moins de faux négatifs, ce qui est bon pour l'algorithme. Utilisez Rappel lorsque la connaissance des faux négatifs est importante. Par exemple, si une personne a plusieurs blocages au niveau du cœur et que le modèle montre qu'il va parfaitement bien, cela pourrait s'avérer fatal.

# 2. Précision

La précision est la mesure des résultats positifs corrects parmi tous les résultats positifs prédits, y compris les vrais et les faux positifs.

Pr = TP/(TP + FP)

La précision est très importante lorsque les faux positifs sont trop importants pour être ignorés. Par exemple, si une personne n'a pas de diabète, mais que le modèle le montre et que le médecin prescrit certains médicaments. Cela peut entraîner des effets secondaires graves.

# 3. Spécificité

La spécificité ou taux de vrais négatifs (TNR) correspond aux résultats négatifs corrects trouvés parmi tous les résultats qui auraient pu être négatifs.

S = VD/(VD + FP)

Il s'agit d'une mesure de la capacité de votre classificateur à identifier les valeurs négatives.

# 4. Précision

La précision est le nombre de prédictions correctes sur le nombre total de prédictions. Ainsi, si vous avez trouvé correctement 20 valeurs positives et 10 valeurs négatives à partir d'un échantillon de 50, la précision de votre modèle sera de 30/50.

Précision A = (TP + TN)/(TP + TN + FP + FN)

# 5. Prévalence

La prévalence est la mesure du nombre de résultats positifs obtenus sur l'ensemble des résultats.

P = (TP + FN)/(TP + TN + FP + FN)

# 6. Note F

Parfois, il est difficile de comparer deux classificateurs (modèles) en utilisant uniquement Precision et Recall, qui ne sont que des moyennes arithmétiques d'une combinaison des quatre grilles. Dans de tels cas, nous pouvons utiliser le score F ou le score F1, qui est la moyenne harmonique - ce qui est plus précis car il ne varie pas trop pour des valeurs extrêmement élevées. Un score F plus élevé (max 1) indique un meilleur modèle.

Score F = 2*Précision*Rappel/ (Rappel + Précision)

Lorsqu'il est vital de prendre soin à la fois des faux positifs et des faux négatifs, le score F1 est une bonne mesure. Par exemple, ceux qui ne sont pas covid positifs (mais l'algorithme l'a montré) n'ont pas besoin d'être isolés inutilement. De la même manière, ceux qui sont positifs au Covid (mais l'algorithme dit qu'ils ne le sont pas) doivent être isolés.

# 7. Courbes ROC

Des paramètres tels que l'exactitude et la précision sont de bonnes mesures si les données sont équilibrées. Pour un ensemble de données déséquilibré, une précision élevée ne signifie pas nécessairement que le classifieur est efficace. Par exemple, 90 étudiants sur 100 dans un lot connaissent l'espagnol. Maintenant, même si votre algorithme dit que tous les 100 connaissent l'espagnol, sa précision sera de 90 %, ce qui peut donner une image erronée du modèle. En cas d'ensembles de données déséquilibrés, des métriques comme le ROC sont des déterminants plus efficaces.

Exemple de courbe ROC

ROC (caractéristique de fonctionnement du récepteur) La courbe affiche visuellement les performances d'un modèle de classification binaire à différents seuils de classification. Il s'agit d'un graphique de TPR (True Positive Rate) contre FPR (False Positive Rate), qui est calculé comme (1-Spécificité) à différentes valeurs de seuil. La valeur la plus proche de 45 degrés (en haut à gauche) dans le tracé est la valeur de seuil la plus précise. Si le seuil est trop élevé, nous n'aurons pas beaucoup de faux positifs, mais nous aurons plus de faux négatifs et vice versa.

Généralement, lorsque la courbe ROC de différents modèles est tracée, celui qui a la plus grande aire sous la courbe (AUC) est considéré comme le meilleur modèle.

Calculons toutes les valeurs métriques pour nos matrices de confusion Classifier I et Classifier II :

Comparaison des métriques pour les classificateurs 1 et 2 de l'enquête sur les pizzas

Nous voyons que la précision est plus élevée dans le classificateur II alors que la précision est légèrement supérieure dans le classificateur I. En fonction du problème à résoudre, les décideurs peuvent sélectionner les classificateurs I ou II.

N x N confusion matrix

Jusqu'à présent, nous avons vu une matrice de confusion pour les classificateurs binaires. Et s'il y avait plus de catégories que simplement oui/non ou aimer/ne pas aimer. Par exemple, si votre algorithme consistait à trier des images de couleurs rouge, verte et bleue. Ce type de classification est appelé classification multi-classes. Le nombre de variables de sortie détermine également la taille de la matrice. Donc, dans ce cas, la matrice de confusion sera 3×3.

Matrice de confusion pour un classificateur multi-classes

Résumé

Une matrice de confusion est un excellent système d'évaluation car elle donne des informations détaillées sur les performances d'un algorithme de classification. Cela fonctionne bien pour les classificateurs binaires et multi-classes, où il y a plus de 2 paramètres à prendre en compte. Il est facile de visualiser une matrice de confusion et nous pouvons générer toutes les autres mesures de performance telles que le score F, la précision, le ROC et l'exactitude à l'aide de la matrice de confusion.

Vous pouvez également regarder comment choisir Algorithmes ML pour les problèmes de régression.

Merci à nos commanditaires
Plus de bonnes lectures sur l'IA
Alimentez votre entreprise
Certains des outils et services pour aider votre entreprise à se développer.
  • Invicti utilise Proof-Based Scanning™ pour vérifier automatiquement les vulnérabilités identifiées et générer des résultats exploitables en quelques heures seulement.
    Essayez Invicti
  • Web scraping, proxy résidentiel, proxy manager, web unlocker, moteur de recherche et tout ce dont vous avez besoin pour collecter des données Web.
    Essayez Brightdata
  • Semrush est une solution de marketing numérique tout-en-un avec plus de 50 outils de référencement, de médias sociaux et de marketing de contenu.
    Essayez Semrush
  • Intruder est un scanner de vulnérabilités en ligne qui détecte les failles de cybersécurité de votre infrastructure, afin d'éviter des violations de données coûteuses.
    Essayez Intruder