AI-basisprincipes

Wat is een Confusiematrix?

mm
Voeg Unite.AI toe aan je voorkeursbronnen op Google

Een van de meest krachtige analytische tools in machine learning en data science is de confusiematrix. De confusiematrix is in staat om onderzoekers gedetailleerde informatie te geven over hoe een machine learning-classificator heeft gepresteerd met betrekking tot de doelklassen in de dataset. Een confusiematrix toont voorbeelden die goed zijn geclassificeerd tegenover voorbeelden die verkeerd zijn geclassificeerd. Laten we een diepgaandere blik werpen op hoe een confusiematrix is gestructureerd en hoe deze kan worden geïnterpreteerd.

Wat is een Confusiematrix?

Laten we beginnen met een eenvoudige definitie van een confusiematrix. Een confusiematrix is een predictieve analytische tool. Specifiek is het een tabel die werkelijke waarden weergeeft en vergelijkt met de voorspelde waarden van het model. Binnen de context van machine learning wordt een confusiematrix gebruikt als een metriek om te analyseren hoe een machine learning-classificator heeft gepresteerd op een dataset. Een confusiematrix genereert een visualisatie van metrieken zoals precisie, nauwkeurigheid, specificiteit en recall.

De reden dat de confusiematrix bijzonder nuttig is, is dat, in tegenstelling tot andere soorten classificatiemetrieken zoals eenvoudige nauwkeurigheid, de confusiematrix een meer complete beeld geeft van hoe een model heeft gepresteerd. Alleen het gebruik van een metriek zoals nauwkeurigheid kan leiden tot een situatie waarin het model een klasse consistent en volledig verkeerd identificeert, maar dit gaat onopgemerkt omdat de gemiddelde prestatie goed is. Ondertussen geeft de confusiematrix een vergelijking van verschillende waarden zoals False Negatives, True Negatives, False Positives en True Positives.

Laten we de verschillende metrieken definiëren die een confusiematrix vertegenwoordigt.

Recall in een Confusiematrix

Recall is het aantal echt positieve voorbeelden gedeeld door het aantal false-negatieve voorbeelden en totale positieve voorbeelden. Met andere woorden, recall is representatief voor het percentage van echte positieve voorbeelden dat een machine learning-model heeft geclassificeerd. Recall wordt gegeven als het percentage van positieve voorbeelden dat het model kon classificeren van alle positieve voorbeelden in de dataset. Deze waarde kan ook worden aangeduid als de “hit rate”, en een verwante waarde is “gevoeligheid”, die de waarschijnlijkheid van recall beschrijft, of de snelheid van echte positieve voorspellingen.

Precisie in een Confusiematrix

Net als recall is precisie een waarde die een model’s prestatie bij het classificeren van positieve voorbeelden volgt. In tegenstelling tot recall is precisie echter bezorgd over hoeveel van de voorbeelden die het model als positief heeft gelabeld, echt positief waren. Om dit te berekenen, worden het aantal echte positieve voorbeelden gedeeld door het aantal false-positieve voorbeelden plus echte positieve voorbeelden.

Om het onderscheid tussen recall en precisie duidelijker te maken, probeert precisie te bepalen welk percentage van alle voorbeelden die als positief zijn gelabeld, echt positief waren, terwijl recall het percentage van alle echte positieve voorbeelden volgt dat het model kon herkennen.

Specificiteit in een Confusiematrix

Terwijl recall en precisie waarden zijn die positieve voorbeelden en de echte positieve snelheid volgen, kwantificeert specificiteit de echte negatieve snelheid of het aantal voorbeelden dat het model als negatief heeft gedefinieerd en echt negatief waren. Dit wordt berekend door het aantal voorbeelden dat als negatief is geclassificeerd te delen door het aantal false-positieve voorbeelden plus de echte negatieve voorbeelden.

Verklaar de Confusiematrix

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

Voorbeeld van een Confusiematrix

Na het definiëren van noodzakelijke termen zoals precisie, recall, gevoeligheid en specificiteit, kunnen we onderzoeken hoe deze verschillende waarden worden weergegeven in een confusiematrix. Een confusiematrix wordt gegenereerd in classificatiegevallen, die van toepassing zijn wanneer er twee of meer klassen zijn. De gegenereerde confusiematrix kan zo hoog en breed zijn als nodig is, met elk gewenst aantal klassen, maar voor de doeleinden van eenvoud zullen we een 2 x 2-confusiematrix voor een binaire classificatie taak onderzoeken.

Als voorbeeld, veronderstel dat een classificator wordt gebruikt om te bepalen of een patiënt een ziekte heeft of niet. De kenmerken worden in de classificator ingevoerd en de classificator retourneert een van twee verschillende classificaties – of de patiënt heeft de ziekte niet of wel.

Laten we beginnen met de linkerkant van de matrix. De linkerkant van de confusiematrix vertegenwoordigt de voorspellingen die de classificator heeft gedaan voor de individuele klassen. Een binaire classificatie taak heeft twee rijen hier. Met betrekking tot het bovenste deel van de matrix, wordt hier het werkelijke label, de werkelijke klasse labels, van de gegevensinstanties getrackt.

De interpretatie van een confusiematrix kan worden gedaan door te kijken waar de rijen en kolommen elkaar kruisen. Vergelijk de voorspellingen van het model met de werkelijke labels van het model. In dit geval bevindt zich de True Positives-waarde, het aantal correcte positieve voorspellingen, in de linkerbovenhoek. De false positives worden gevonden in de rechterbovenhoek, waar de voorbeelden echt negatief zijn, maar de classificator ze als positief heeft gelabeld.

De onderste linkerkant van het rooster toont voorbeelden die de classificator als negatief heeft gelabeld, maar echt positief waren. Ten slotte bevindt zich de True Negative-waarde, of waar de echt valse voorbeelden zijn, in de rechteronderhoek van de confusiematrix.

Wanneer de dataset meer dan twee klassen bevat, groeit de matrix met dat aantal klassen. Als er bijvoorbeeld drie klassen zijn, is de matrix een 3 x 3-matrix. Ongeacht de grootte van de confusiematrix is de methode voor het interpreteren ervan exact hetzelfde. De linkerkant bevat de voorspelde waarden en de werkelijke klasse labels lopen over de bovenkant. De voorbeelden die het model correct heeft voorspeld, lopen schuin van linksboven naar rechtsonder. Door naar de matrix te kijken, kunt u de vier predictieve metrieken hierboven bepalen.

U kunt bijvoorbeeld recall berekenen door de true positives en false negatives te nemen, ze samen te tellen en ze te delen door het aantal true positieve voorbeelden. Ondertussen kan precisie worden berekend door de false positives samen te voegen met de true positives en de waarde te delen door het totale aantal true positieve voorbeelden.

Terwijl men tijd kan besteden aan het handmatig berekenen van metrieken zoals precisie, recall en specificiteit, worden deze metrieken zo vaak gebruikt dat de meeste machine learning-bibliotheken methoden hebben om ze weer te geven. Zo heeft Scikit-learn voor Python een functie die een confusiematrix genereert.

Blogger en programmeur met specialisaties in Machine Learning en Deep Learning onderwerpen. Daniel hoopt anderen te helpen de kracht van AI te gebruiken voor het sociale goede.