Mi chiedevo se qualcuno potesse spiegare la differenza tra accuratezza bilanciata che è
b_acc = (sensitivity + specificity)/2
e punteggio f1 che è:
f1 = 2*precision*recall/(precision + recall)
Risposta
Matematicamente, b_acc è la media aritmetica di richiamo_P e richiamo_N e f1 è la media armonica di richiamo_P e precisione_P.
Sia F1 che b_acc sono metriche per la valutazione del classificatore, che (in una certa misura) gestiscono la classe squilibrio. A seconda di quale delle due classi (N o P) supera laltra, ciascuna metrica supera laltra.
1) Se N >> P, f1 è migliore.
2) Se P >> N, b_acc è migliore.
Chiaramente, se puoi cambiare etichetta, entrambe le metriche possono essere utilizzate in uno qualsiasi dei due casi di squilibrio sopra. In caso contrario, a seconda dello squilibrio nei dati di addestramento, è possibile selezionare la metrica appropriata.
Commenti
- Grazie, signore, ha un riferimento per le informazioni relative alla scelta del punteggio F rispetto alla precisione bilanciata in termini di numero di classi positive / negative?
- Vorrei secondo @gin ' la richiesta di maggiori informazioni su come scegliere tra i due. Ho alcuni dati in cui la N è di circa l8%. Dalla risposta sopra, sembra che dovrei usare Balanced Accuracy. ' ho cercato altri riferimenti su questa scelta (P > N – > b_acc) ma non ' ho visto nulla.
- Questo ' non ha alcun senso per me. La precisione bilanciata è invariante quando si cambia etichetta. Come puoi " migliorarlo " cambiando etichetta se rimarrà invariato?
- @TCProctor Can cambio di precisione equilibrato nel rango rispetto a F1 dato il cambio di etichetta?