Connect with us

AI 101

Vad är en förvirringsmatris?

mm

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 missklassificerats. 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.

Anledningen till att förvirringsmatrisen är särskilt användbar är att, till skillnad från andra typer av klassificeringsmått som till exempel enkel noggrannhet, förvirringsmatrisen ger en mer komplett bild av hur modellen har presterat. Att endast använda ett mått som noggrannhet kan leda till en situation där modellen helt och hållet missklassificerar 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 negativ, sanna negativ, falska positiv och sanna positiv.

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 utifrån 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 modellens prestanda när det gäller klassificering av positiva exempel. Till skillnad från återkallande är precision dock intresserad av hur många av exemplen som modellen har märkt som positiva som verkligen var positiva. För att beräkna detta divideras 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 känna igen.

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.

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ämplig när det finns två eller flera klasser. Den genererade förvirringsmatrisen kan vara så hög och bred som önskas, med plats för vilket önskat antal klasser, men för enkelhetens skull kommer vi att undersöka en 2 x 2-förvirringsmatris för en binär klassificeringsuppgift.

Som exempel antar vi att en klassificerare används för att avgöra om en patient har en sjukdom eller inte. Funktionerna kommer att matas in i klassificeraren, och klassificeraren kommer att returnera en av två olika klassificeringar – antingen har patienten inte sjukdomen eller så har de.

Låt oss börja med vänstersidan av matrisen. Vänstersidan av förvirringsmatrisen representerar de förutsägelser som klassificeraren har gjort för de enskilda klasserna. En binär klassificeringsuppgift kommer att ha två rader här. När det gäller den övre delen av matrisen spårar den de faktiska värdena, de faktiska klassmärkena, för dataexemplen.

En förvirringsmatris kan tolkas genom att undersöka var raderna och kolumnerna möts. Kontrollera modellens förutsägelser mot modellens faktiska märken. 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 har märkt dem som positiva.

Det nedre vänstra hörnet av rutnätet visar instanser som klassificeraren har märkt som negativa men som faktiskt var positiva. Slutligen är det nedre högra hörnet 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 fler än två klasser växer matrisen med så många klasser. Till exempel, om det finns tre klasser, kommer matrisen att vara 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 längs toppen. 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 diskuterats 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 lägga tid på 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.

Blogger och programmerare med specialområden inom Machine Learning och Deep Learning ämnen. Daniel hoppas på att hjälpa andra att använda kraften från AI för socialt väl.