Grunderna i AI
Vad är en förvirringsmatris?
En av de kraftfullaste analytiska verktygen inom maskinlärning och datavetenskap är förvirringsmatrisen. Förvirringsmatrisen kan ge forskarna detaljerad information om hur en maskinlärningsklassificerare har presterat i förhållande till målklasserna i datamängden. En förvirringsmatris visar exempel som har klassificerats korrekt mot exempel som har klassificerats felaktigt. Låt oss ta en närmare titt på hur en förvirringsmatris är strukturerad och hur den kan tolkas.
Vad är en förvirringsmatris?
Låt oss börja med att ge en enkel definition av en förvirringsmatris. En förvirringsmatris är ett verktyg för prediktiv analys. Specifikt är det en tabell som visar och jämför faktiska värden med modellens förutsagda värden. Inom maskinlärning används en förvirringsmatris som en måttstock för att analysera hur en maskinlärningsklassificerare har presterat på en datamängd. En förvirringsmatris genererar en visualisering av mått som precision, noggrannhet, specificitet och återkallande.
Orsaken till att förvirringsmatrisen är särskilt användbar är att, till skillnad från andra typer av klassificeringsmått som enkel noggrannhet, förvirringsmatrisen ger en mer komplett bild av hur en modell har presterat. Att bara använda ett mått som noggrannhet kan leda till en situation där modellen konsekvent och felaktigt identifierar en klass, men det går obemärkt förbi eftersom genomsnittsprestationen är bra. Samtidigt ger förvirringsmatrisen en jämförelse av olika värden som falska negativa, sanna negativa, falska positiva och sanna positiva.

Låt oss definiera de olika måtten som en förvirringsmatris representerar.
Återkallande i en förvirringsmatris
Återkallande är antalet äkta positiva exempel dividerat med antalet falska negativa exempel och totala positiva exempel. Med andra ord är återkallande representativt för andelen sanna positiva exempel som en maskinlärningsmodell har klassificerat. Återkallande anges som procenten av positiva exempel som modellen kunde klassificera av alla positiva exempel i datamängden. Detta värde kan också kallas “träffsäkerhet”, och ett relaterat värde är “känslighet”, som beskriver sannolikheten för återkallande, eller hastigheten för äkta positiva förutsägelser.
Precision i en förvirringsmatris
Liksom återkallande är precision ett värde som spårar en modells prestanda när det gäller klassificering av positiva exempel. Till skillnad från återkallande är precision dock mer fokuserad på hur många av de exempel som modellen har märkt som positiva som verkligen var positiva. För att beräkna detta delas antalet sanna positiva exempel med antalet falska positiva exempel plus sanna positiva.
För att göra skillnaden mellan återkallande och precision tydligare syftar precision till att fastställa procenten av alla exempel som märkts som positiva som verkligen var positiva, medan återkallande spårar procenten av alla sanna positiva exempel som modellen kunde identifiera.
Specificitet i en förvirringsmatris
Medan återkallande och precision är värden som spårar positiva exempel och den sanna positiva hastigheten, kvantifierar specificitet den sanna negativa hastigheten eller antalet exempel som modellen definierade som negativa som verkligen var negativa. Detta beräknas genom att ta antalet exempel som klassificerats som negativa och dividera dem med antalet falska positiva exempel kombinerat med de sanna negativa exemplen.
Att förstå förvirringsmatrisen

Foto: Jackverr via Wikimedia Commons, (https://commons.wikimedia.org/wiki/File:ConfusionMatrix.png), CC BY SA 3.0
Exempel på en förvirringsmatris
Efter att ha definierat nödvändiga termer som precision, återkallande, känslighet och specificitet kan vi undersöka hur dessa olika värden representeras inom en förvirringsmatris. En förvirringsmatris genereras i klassificeringsfall, tillämpliga när det finns två eller flera klasser. Den förvirringsmatris som genereras kan vara så hög och bred som önskas, innehållande valfritt antal klasser, men för enkelhetens skull ska vi undersöka en 2 x 2 förvirringsmatris för en binär klassificering.
Som exempel antar vi att en klassificerare används för att bestämma om en patient har en sjukdom eller inte. Egenskaperna matas in i klassificeraren, och klassificeraren returnerar en av två olika klassificeringar – antingen har patienten inte sjukdomen eller så har de det.
Låt oss börja med vänstersidan av matrisen. Vänstersidan av förvirringsmatrisen representerar de förutsägelser som klassificeraren gjorde för de enskilda klasserna. En binär klassificering har två rader här. Vad gäller den övre delen av matrisen spårar den de faktiska värdena, de faktiska klassmärkena, för dataexemplen.
Att tolka en förvirringsmatris kan göras genom att undersöka var raderna och kolumnerna möts. Jämför modellens förutsägelser med de faktiska märkena för modellen. I det här fallet finns de sanna positiva värdena, antalet korrekta positiva förutsägelser, i det övre vänstra hörnet. De falska positiva finns i det övre högra hörnet, där exemplen faktiskt är negativa men klassificeraren märkte dem som positiva.
Den nedre vänstra delen av rutnätet visar instanser som klassificeraren har märkt som negativa men som faktiskt var positiva. Slutligen är den nedre högra delen av förvirringsmatrisen där de sanna negativa värdena finns, eller där de faktiskt falska exemplen finns.
När datamängden innehåller mer än två klasser växer matrisen med så många klasser. Till exempel, om det finns tre klasser, blir matrisen en 3 x 3 matris. Oavsett storleken på förvirringsmatrisen är metoden för att tolka dem exakt densamma. Vänstersidan innehåller de förutsagda värdena och de faktiska klassmärkena löper överst. Exemplen som klassificeraren har förutsagt korrekt löper diagonalt från övre vänstra till nedre högra. Genom att titta på matrisen kan du urskilja de fyra prediktiva måtten som diskuterades ovan.
Till exempel kan du beräkna återkallande genom att ta de sanna positiva och de falska negativa, lägga ihop dem och dividera dem med antalet sanna positiva exempel. Samtidigt kan precision beräknas genom att kombinera de falska positiva med de sanna positiva, sedan dividera värdet med det totala antalet sanna positiva.
Medan man kunde tillbringa tid med att manuellt beräkna mått som precision, återkallande och specificitet, är dessa mått så vanligt använda att de flesta maskinlärningsbibliotek har metoder för att visa dem. Till exempel har Scikit-learn för Python en funktion som genererar en förvirringsmatris.












