machine-learning
Utvärdering Metrics
Sök…
Område under mottagarens kurva Funktionsegenskaper (AUROC)
AUROC är en av de mest använda metriska för att utvärdera en klassifierares prestanda. Det här avsnittet förklarar hur du beräknar det.
AUC (Area Under the Curve) används för det mesta för att betyda AUROC, vilket är en dålig praxis eftersom AUC är tvetydig (kan vara vilken kurva som helst) medan AUROC inte är det.
Översikt - Förkortningar
Förkortning | Menande |
---|---|
AUROC | Område under mottagarens kurva Funktionsegenskaper |
AUC | Area Under Curce |
ROC | Mottagarens funktion |
TP | Sanna positiva |
TN | Sanna negativa |
FP | Falska positiva |
FN | Falska negativa |
TPR | Sann positiv kurs |
FPR | Falsk positiv ränta |
Tolkning av AUROC
AUROC har flera likvärdiga tolkningar :
- Förväntningen på att en enhetligt dragen slumpmässig positiv rankas före en enhetligt dragen slumpmässig negativ.
- Den förväntade andelen positiva rangordnades före ett enhetligt utdraget slumpmässigt negativt.
- Den förväntade riktiga positiva räntan om rankningen delas precis före en enhetligt dragen slumpmässig negativ.
- Den förväntade andelen negativa rangordnade efter en enhetligt utdragen slumpmässig positiv.
- Den förväntade falska positiva kursen om rankningen är uppdelad precis efter en enhetligt dragen slumpmässig positiv.
Beräkna AUROC
Antag att vi har en sannolik, binär klassificering som logistisk regression.
Innan ROC- kurvan presenteras (= Mottagarens driftskarakteristiska kurva) måste begreppet förvirringsmatris förstås. När vi gör en binär förutsägelse kan det finnas fyra typer av resultat:
- Vi förutspår 0 medan klassen faktiskt är 0 : detta kallas en sann negativ , dvs vi förutsäger korrekt att klassen är negativ (0). Till exempel upptäckte ett antivirus inte en ofarlig fil som ett virus.
- Vi förutspår 0 medan klassen faktiskt är 1 : detta kallas ett falskt negativt , dvs vi förutspår felaktigt att klassen är negativ (0). Till exempel misslyckades ett antivirusupptäckt ett virus.
- Vi förutspår 1 medan klassen faktiskt är 0 : detta kallas False Positive , dvs vi förutsäger felaktigt att klassen är positiv (1). Till exempel betraktade ett antivirusprogram en ofarlig fil som ett virus.
- Vi förutsäger 1 medan klassen faktiskt är 1 : detta kallas en sann positiv , dvs vi förutsäger korrekt att klassen är positiv (1). Exempelvis upptäckte ett antivirusrätt med rätta ett virus.
För att få förvirringsmatrisen går vi igenom alla förutsägelser som gjorts av modellen och räknar hur många gånger var och en av dessa fyra typer av resultat uppstår:
I detta exempel på en förvirringsmatris, mellan de 50 datapunkter som är klassificerade, är 45 korrekt klassificerade och de 5 är felklassificerade.
För att jämföra två olika modeller är det ofta mer bekvämt att ha en enda metrisk snarare än flera, beräknar vi två mätvärden från förvirringsmatrisen, som vi senare kommer att kombinera till en:
- True positive rate ( TPR ), alias. känslighet, träfffrekvens och återkallelse , som definieras som . Intuitivt motsvarar denna metrisk andelen positiva datapunkter som korrekt betraktas som positiva, med avseende på alla positiva datapunkter. Med andra ord, ju högre TPR, desto färre positiva datapunkter kommer vi att sakna.
- False positive rate ( FPR ), alias. fall-out , som definieras som . Intuitivt motsvarar detta statistik andelen negativa datapunkter som felaktigt betraktas som positiva, med avseende på alla negativa datapunkter. Med andra ord, ju högre FPR, desto mer negativa datapunkter kommer vi att missklassificera.
För att kombinera FPR och TPR i en enda metrisk beräknar vi först de två tidigare statistiken med många olika trösklar (till exempel ) för den logistiska regressionen, plotta dem sedan på en enda graf, med FPR-värdena på abscissen och TPR-värdena på ordinaten. Den resulterande kurvan kallas ROC-kurva, och det metriska som vi överväger är AUC för denna kurva, som vi kallar AUROC.
Följande bild visar AUROC grafiskt:
I den här siffran motsvarar det blå området området under kurvan för mottagarens driftskarakteristik (AUROC). Den streckade linjen i diagonalen presenterar vi ROC-kurvan för en slumpvis prediktor: den har en AUROC på 0,5. Den slumpmässiga prediktorn används ofta som en baslinje för att se om modellen är användbar.
Förvirringsmatris
En förvirringsmatris kan användas för att utvärdera en klassificerare, baserad på en uppsättning testdata för vilka de verkliga värdena är kända. Det är ett enkelt verktyg som hjälper till att ge en god visuell översikt över prestanda för den algoritm som används.
En förvirringsmatris representeras som en tabell. I det här exemplet kommer vi att titta på en förvirringsmatris för en binär klassificerare .
På vänster sida kan man se den faktiska klassen (som är märkt som JA eller NEJ ), medan den övre indikerar att klassen förutsägs och matas ut (igen JA eller NEJ ).
Detta innebär att 50 testinstanser - som faktiskt är INTE instanser - märktes korrekt av klassificeraren som NO . Dessa kallas True Negatives (TN) . Däremot var 100 faktiska YES- instanser korrekt märkta av klassificeraren som YES- instanser. Dessa kallas True Positives (TP) .
5 faktiska JA- instanser märktes felaktigt av klassificeraren. Dessa kallas False Negatives (FN) . Vidare ansågs 10 INTE instanser betraktas som JA- instanser av klassificeraren, varför dessa är falska positiver (FP) .
Baserat på dessa FP , TP , FN och TN kan vi dra ytterligare slutsatser.
Sann positiv kurs :
- Försöker att svara: När en instans faktiskt är JA , hur ofta förutsäger klassificeraren JA ?
- Kan beräknas enligt följande: TP / # faktiska JA- instanser = 100/105 = 0,95
Falskt positivt värde :
- Försöker att svara: När en instans faktiskt är NEJ , hur ofta förutsäger klassificeraren JA ?
- Kan beräknas enligt följande: FP / # faktiska INTE instanser = 10/60 = 0,17
ROC-kurvor
En ROC-kurva för mottagare som drar ut TP-raten kontra FP-räntan som en tröskel för ett instanss förtroende som är positiv varieras
Algoritm för att skapa en ROC-kurva
sortera testuppsättningar enligt förtroende för att varje instans är positiv
gå igenom sorterad lista från högt till lågt förtroende
i. hitta en tröskel mellan instanser med motsatta klasser (hålla instanser med samma konfidensvärde på samma sida av tröskeln)
ii. beräkna TPR, FPR för instanser över tröskeln
III. utgång (FPR, TPR) koordinat