Jeg lurte på om noen kunne forklare forskjellen mellom balansert nøyaktighet som er
b_acc = (sensitivity + specificity)/2
og f1 score som er:
f1 = 2*precision*recall/(precision + recall)
Svar
Matematisk er b_acc det aritmetiske gjennomsnittet av recall_P og recall_N og f1 er det harmoniske gjennomsnittet for recall_P og precision_P.
Både F1 og b_acc er beregninger for klassifiseringsevaluering, som (til en viss grad) håndterer klasse ubalanse. Avhengig av hvilken av de to klassene (N eller P) som er større enn den andre, overgår hver beregning den andre.
1) Hvis N >> P, er f1 bedre.
2) Hvis P >> N, b_acc er bedre.
Det er klart at hvis du kan bytte etikett, kan begge beregningene brukes i noen av de to ubalansesakene ovenfor. Hvis ikke, kan du, avhengig av ubalansen i treningsdataene, velge riktig beregning.
Kommentarer
- Takk sir, Har du en referanse for informasjonen angående valg av Fscore vs balansert nøyaktighet når det gjelder antall positive / negative klasser?
- Jeg vil gjerne be @gin ' forespørsel om mer info om hvordan du kan velge mellom de to. Jeg har noen data om at N er omtrent 8%. Ved svaret ovenfor virker det som om jeg skulle bruke balansert nøyaktighet. Jeg ' har vært på utkikk etter andre referanser om dette valget (P > N – > b_acc) men har ikke ' t sett noe.
- Dette gir ikke ' t noe for meg. Balansert nøyaktighet er uforanderlig under etikettbytte. Hvordan kan du " gjøre det bedre " ved å bytte etikett hvis det blir uendret?
- @TCProctor Can balansert nøyaktighetsendring i rang i forhold til F1 gitt etikettbryteren?