stub Hvad er en forvirringsmatrix? - Unite.AI
Følg os

AI 101

Hvad er en forvirringsmatrix?

mm
Opdateret on

Et af de mest kraftfulde analytiske værktøjer inden for maskinlæring og datavidenskab i forvirringsmatricen. Forvirringsmatricen er i stand til at give forskerne detaljerede oplysninger om, hvordan en maskinlæringsklassifikator har klaret sig med hensyn til målklasserne i datasættet. En forvirringsmatrix vil vise visningseksempler, der er blevet korrekt klassificeret i forhold til forkert klassificerede eksempler. Lad os se nærmere på, hvordan en forvirringsmatrix er opbygget, og hvordan den kan fortolkes.

Hvad er en forvirringsmatrix?

Lad os starte med at give en simpel definition af en forvirringsmatrix. En forvirringsmatrix er et forudsigende analyseværktøj. Konkret er det en tabel, der viser og sammenligner faktiske værdier med modellens forudsagte værdier. Inden for rammerne af maskinlæring bruges en forvirringsmatrix som en metrik til at analysere, hvordan en maskinlæringsklassifikator fungerede på et datasæt. En forvirringsmatrix genererer en visualisering af metrikker som præcision, nøjagtighed, specificitet og genkaldelse.

Grunden til, at forvirringsmatricen er særlig nyttig, er, at i modsætning til andre typer klassifikationsmetrikker, såsom simpel nøjagtighed, genererer forvirringsmatricen et mere komplet billede af, hvordan en model fungerede. Kun brug af en metrisk nøjagtighed kan føre til en situation, hvor modellen fuldstændigt og konsekvent fejlidentificerer én klasse, men det går ubemærket hen, fordi ydeevnen i gennemsnit er god. I mellemtiden er forvirringsmatricen giver en sammenligning af forskellige værdier som falske negative, sande negative, falske positive og sande positive.

Lad os definere de forskellige metrikker, som en forvirringsmatrix repræsenterer.

Genkald i en forvirringsmatrix

Recall er antallet af ægte positive eksempler divideret med antallet af falsk-negative eksempler og det samlede antal positive eksempler. Med andre ord er tilbagekaldelse repræsentativ for andelen af ​​sande positive eksempler, som en maskinlæringsmodel har klassificeret. Genkald er angivet som procentdelen af ​​positive eksempler, som modellen var i stand til at klassificere ud af alle de positive eksempler indeholdt i datasættet. Denne værdi kan også omtales som "hitraten", og en relateret værdi er "følsomhed”, som beskriver sandsynligheden for tilbagekaldelse eller antallet af ægte positive forudsigelser.

Precision i en forvirringsmatrix

Ligesom tilbagekaldelse er præcision en værdi, der sporer en models ydeevne i form af positiv eksempelklassificering. I modsætning til tilbagekaldelse handler præcision dog om, hvor mange af eksemplerne, som modellen mærkede positive, virkelig var positive. For at beregne dette divideres antallet af sande positive eksempler med antallet af falsk-positive eksempler plus sande positive.

For at skelne mellem genkaldelse og præcision klarere, sigter præcision på at finde ud af procentdelen af ​​alle eksempler mærket positive, der var virkelig positive, mens tilbagekaldelse sporer procentdelen af ​​alle sande positive eksempler, som modellen kunne genkende.

Specificitet i en forvirringsmatrix

Mens tilbagekaldelse og præcision er værdier, der sporer positive eksempler og den sande positive rate, specificitet kvantificerer den sande negative rate eller antallet af eksempler, som modellen definerede som negative, og som var virkelig negative. Dette beregnes ved at tage antallet af eksempler klassificeret som negative og dividere dem med antallet af falsk-positive eksempler kombineret med de sande negative eksempler.

Giver mening om forvirringsmatrixen

Foto: Jackverr via Wikimedia Commons, (https://commons.wikimedia.org/wiki/File:ConfusionMatrix.png), CC BY SA 3.0

Eksempel på en forvirringsmatrix

Efter at have defineret nødvendige udtryk som præcision, genkaldelse, sensitivitet og specificitet, kan vi undersøge, hvordan disse forskellige værdier er repræsenteret i en forvirringsmatrix. Der genereres en forvirringsmatrix i tilfælde af klassificering, der kan anvendes, når der er to eller flere klasser. Den forvirringsmatrix, der genereres, kan være så høj og bred, som det er nødvendigt, og indeholde et hvilket som helst ønsket antal klasser, men for overskuelighedens skyld vil vi undersøge en 2 x 2 forvekslingsmatrix til en binær klassifikationsopgave.

Antag som et eksempel, at en klassifikator bruges til at bestemme, om en patient har en sygdom eller ej. Funktionerne vil blive ført ind i klassificereren, og klassificereren vil returnere en af ​​to forskellige klassifikationer - enten har patienten ikke sygdommen, eller også har de.

Lad os starte med venstre side af matricen. Den venstre side af forvirringsmatricen repræsenterer de forudsigelser, som klassificereren lavede for de enkelte klasser. En binær klassifikationsopgave vil her have to rækker. Med hensyn til den øverste del af matrixen sporer den de sande værdier, de faktiske klasseetiketter, for dataforekomsterne.

Fortolkning af en forvekslingsmatrix kan gøres ved at undersøge, hvor rækkerne og kolonnerne skærer hinanden. Tjek modellens forudsigelser i forhold til modellens sande etiketter. I dette tilfælde er True Positives-værdierne, antallet af korrekte positive forudsigelser, placeret i øverste venstre hjørne. De falske positive findes i øverste højre hjørne, hvor eksemplerne faktisk er negative, men klassificeringen mærkede det som positivt.

Det nederste venstre hjørne af gitteret viser forekomster, som klassificereren har tagget som negative, men som virkelig var positive. Endelig er det nederste højre hjørne af forvirringsmatricen, hvor de sande negative værdier findes, eller hvor de ægte falske eksempler er.

Når datasættet indeholder mere end to klasser, vokser matrixen med så mange klasser. For eksempel, hvis der er tre klasser, vil matrixen være en 3 x 3 matrix. Uanset størrelsen af ​​forvirringsmatricen er metoden til at fortolke dem nøjagtig den samme. Den venstre side indeholder de forudsagte værdier, og de faktiske klasseetiketter løber over toppen. De tilfælde, som klassificereren har forudsagt korrekt, kører diagonalt fra øverst til venstre til nederst til højre. Ved at se på matricen kan du skelne mellem de fire forudsigelige målinger, der er diskuteret ovenfor.

For eksempel kan du beregne tilbagekaldelse ved at tage de sande positive og falske negativer, lægge dem sammen og dividere dem med antallet af sande positive eksempler. I mellemtiden kan præcision beregnes ved at kombinere de falske positive med de sande positive og derefter dividere værdien i det samlede antal sande positive.

Mens man kunne bruge tid på manuelt at beregne målinger såsom præcision, genkaldelse og specificitet, er disse målinger så almindeligt anvendte, at de fleste maskinlæringsbiblioteker har metoder til at vise dem. For eksempel har Scikit-learn til Python en funktion, der genererer en forvirringsmatrix.

Blogger og programmør med speciale i Maskinelæring , Deep Learning emner. Daniel håber at kunne hjælpe andre med at bruge AI's kraft til socialt gode.