C'est un indice de l'équilibre entre Rappel (taux de rappel, sensibilité) et Précision (conformité, précision) indiqué par. Puisqu'il s'agit d'une moyenne harmonisée, le score sera faible si l'un ou l'autre est extrêmement faible.
Pour simplifier, classer en 3 classes (4 classes ou plus peuvent être considérées de la même manière)
Classe attendue | ||||
---|---|---|---|---|
a | b | c | ||
a | 10 | 3 | 5 | |
Classe de réponse correcte | b | 4 | 20 | 3 |
c | 4 | 3 | 15 |
Lorsqu'il existe une matrice de confusion comme celle-ci, TP, FP et FN sont définis comme suit.
classe | TP | FP | FN |
---|---|---|---|
a | 10 | 8 | 8 |
b | 20 | 6 | 7 |
c | 15 | 8 | 7 |
FP est la somme des éléments verticaux et FN est la somme des éléments horizontaux.
sklearn.metrics.f1_score
[https://scikit-learn.org/stable/modules/generated/sklearn.metrics.f1_score.html] Si vous regardez (), vous pouvez voir les options " binaire ",
"micro" ,
"macro" `, «« pondéré »,« échantillons »« existe. (Idem pour rappel_score et precision_score)
«« binaire »» est utilisé dans la classification binaire.
D'autres sont décrits ci-dessous.
"micro"
Calculez TP, FP, FN dans leur ensemble.
TP | FP | FN |
---|---|---|
45 | 22 | 22 |
Calculez avec le TP obtenu, FP.FN
"macro"
Calculer le rappel et la précision pour chaque classe
classe | Recall | Precision |
---|---|---|
a | ||
b | ||
c |
Calculez le rappel et la précision moyens
Recall | Precision |
---|---|
Calculez f1 avec la moyenne calculée
"weighted"
Multipliez le nombre de données dans chaque classe par le rappel individuel, la précision
classe | Recall | Precision |
---|---|---|
a | ||
b | ||
c |
Divisez la somme de Rappel et Précision par le nombre total de données
Recall | Precision |
---|---|
Calculez f1 avec la moyenne calculée
"samples"
Je ne suis pas sûr, donc je l'ajouterai dès que je comprendrai.
Recommended Posts