Connect with us

AI 101

Hva er en forvirringsmatrise?

mm

En av de mest kraftfulle analytiske verktøyene i maskinlæring og datavitenskap er forvirringsmatrisen. Forvirringsmatrisen er i stand til å gi forskerne detaljert informasjon om hvordan en maskinlæringsklassifikator har fungert med hensyn til målklassene i datasettet. En forvirringsmatrise vil demonstrere eksempler som er korrekt klassifisert mot feilklassifiserte eksempler. La oss ta en nærmere titt på hvordan en forvirringsmatrise er strukturert og hvordan den kan tolkes.

Hva er en forvirringsmatrise?

La oss starte med å gi en enkel definisjon av en forvirringsmatrise. En forvirringsmatrise er et prediktivt analytisk verktøy. Spesifikt er det en tabell som viser og sammenligner faktiske verdier med modellens predikerte verdier. Innenfor konteksten av maskinlæring, brukes en forvirringsmatrise som en metrikk til å analysere hvordan en maskinlæringsklassifikator har fungert på et datasett. En forvirringsmatrise genererer en visualisering av metrikker som presisjon, nøyaktighet, spesifisitet og gjentakelse.

Grunden til at forvirringsmatrisen er spesielt nyttig er at, i motsetning til andre typer klassifiseringsmetrikker som enkel nøyaktighet, genererer forvirringsmatrisen en mer komplett bilde av hvordan en modell har fungert. Å bruke bare en metrikk som nøyaktighet kan føre til en situasjon der modellen fullstendig og konsekvent feilklassifiserer en klasse, men det går uoppdaget fordi gjennomsnittsytelsen er god. Mens forvirringsmatrisen gir en sammenligning av forskjellige verdier som feil negativ, sant negativ, feil positiv og sant positiv.

La oss definere de forskjellige metrikkene som en forvirringsmatrise representerer.

Gjentakelse i en forvirringsmatrise

Gjentakelse er antall ekte positive eksempler dividert med antall feilnegativ eksempler og totale positive eksempler. Med andre ord, gjentakelse er representativ for andelen sanne positive eksempler som en maskinlæringsmodell har klassifisert. Gjentakelse uttrykkes som prosenten av positive eksempler modellen kunne klassifisere ut av alle positive eksempler i datasettet. Denne verdien kan også kalles “treffrate”, og en relatert verdi er “følsomhet”, som beskriver sannsynligheten for gjentakelse, eller hastigheten av sanne positive prediksjoner.

Presisjon i en forvirringsmatrise

Liksom gjentakelse, er presisjon en verdi som sporer en modells ytelse med hensyn til positiv eksempeklassifisering. I motsetning til gjentakelse, er presisjon opptatt av hvor mange av eksemplene modellen merket som positive faktisk var positive. For å beregne dette, deles antall sanne positive eksempler med antall feilpositive eksempler pluss sanne positive.

For å gjøre forskjellen mellom gjentakelse og presisjon tydeligere, presisjon forsøker å fastslå prosenten av alle eksempler merket som positive som faktisk var positive, mens gjentakelse sporer prosenten av alle sanne positive eksempler som modellen kunne gjenkjenne.

Spesifisitet i en forvirringsmatrise

Mens gjentakelse og presisjon er verdier som sporer positive eksempler og den sanne positive raten, spesifisitet kvantifiserer den sanne negative raten eller antall eksempler modellen definerte som negativ som faktisk var negativ. Dette beregnes ved å ta antall eksempler klassifisert som negativ og dividere dem med antall feilpositive eksempler kombinert med sanne negative eksempler.

Å forstå forvirringsmatrisen

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

Eksempel på en forvirringsmatrise

Etter å ha definert nøkkelbegreper som presisjon, gjentakelse, følsomhet og spesifisitet, kan vi se hvordan disse verdiene representeres i en forvirringsmatrise. En forvirringsmatrise genereres i klassifiseringsøyeblikk, anvendelig når det finnes to eller flere klasser. Forvirringsmatrisen som genereres kan være like høy og bred som ønsket, og inneholde et ønsket antall klasser, men for enkelhets skyld vil vi se på en 2 x 2 forvirringsmatrise for en binær klassifiseringsoppgave.

La oss anta at en klassifikator brukes til å bestemme om en pasient har en sykdom eller ikke. Egenskapene vil bli matet inn i klassifikatoren, og klassifikatoren vil returnere en av to forskjellige klassifiseringer – enten pasienten har ikke sykdommen eller han har.

La oss starte med venstre side av matrisen. Venstre side av forvirringsmatrisen representerer prediksjonene klassifikatoren gjorde for de enkelte klassene. En binær klassifiseringsoppgave vil ha to rader her. Angående toppdelen av matrisen, sporer den sanne verdier, de faktiske klasselabel, til dataeksemplene.

Tolking av en forvirringsmatrise kan gjøres ved å se hvor radene og kolonnene krysser. Sjekk prediksjonene til modellen mot de sanne label til modellen. I dette tilfelle er sant positiv verdi, antall korrekte positive prediksjoner, plassert i øverste venstre hjørne. Feilpositive finnes i øverste høyre hjørne, der eksemplene faktisk er negative, men klassifikatoren merket det som positivt.

Nederste venstre hjørne av ruten viser eksempler som klassifikatoren har merket som negativ, men faktisk var positiv. Til slutt er nederste høyre hjørne av forvirringsmatrisen der sant negativ verdi finnes, eller der faktisk feil eksempler er.

Når datasettet inneholder mer enn to klasser, vokser matrisen med like mange klasser. For eksempel, hvis det finnes tre klasser, vil matrisen være en 3 x 3 matrise. Uansett størrelsen på forvirringsmatrisen, er metoden for å tolke dem eksakt den samme. Venstre side inneholder de predikerte verdiene og de faktiske klasselabel går over toppen. Eksemplene som klassifikatoren har korrekt predikert, går diagonalt fra øverste venstre til nederste høyre. Ved å se på matrisen kan du skjønne de fire prediktive metrikkene diskutert ovenfor.

For eksempel kan du beregne gjentakelse ved å ta sant positiv og feilnegativ, og dividere dem med antall sanne positive eksempler. Mens presisjon kan beregnes ved å kombinere feilpositive med sanne positive, og deretter dividere verdien med totalt antall sanne positive.

Mens en kunne bruke tid på å manuelt beregne metrikker som presisjon, gjentakelse og spesifisitet, er disse metrikkene så vanlig brukt at de fleste maskinlæringsbiblioteker har metoder for å vise dem. For eksempel har Scikit-learn for Python en funksjon som genererer en forvirringsmatrise.

Blogger og programmerer med spesialområder i Machine Learning og Deep Learning emner. Daniel håper å hjelpe andre med å bruke kraften av AI for sosialt godt.