Precision, recall and F1Précision, rappel et score F1

TRA2600 S9 · in classS9 · en classe

TRA6008 S5 · in classS5 · en classe

Precision and recall

For a system that finds things in a text, or that sorts items into two classes, the comparison with a gold standard gold standardétalon de référence evaluationévaluation The best available reference dataset, annotation, measurement or procedure against which a system's results are evaluated.Meilleur jeu de données, annotation, mesure ou procédure de référence disponible pour évaluer les résultats d'un système. gives two scores (Jurafsky & Martin, 2026). Figure 6figure 6 shows the parts they are calculated from, for a term extractor.

A rectangle for everything in the text, split by a dashed line. The left half is all the terms in the gold standard, TP + FN; the right half is everything else in the text, FP + TN. An oval across the line is all the candidates the system returned, TP + FP. The four regions: the part of the left half outside the oval, false negatives, in red; the part of the oval in the left half, true positives, in green; the part of the oval in the right half, false positives, in amber; the rest of the right half, true negatives. Dots in each region stand for items.
Figure 6. The parts that precision and recall are calculated from: the terms in the gold standard, the candidates the system returned, and their overlap.

Each score can be explained in several ways, and one may be clearer to you than the others:

A worked example

In this example, a term extractor returns ten candidates for a short text about dressage, and the gold standard for that text has nine terms (Figure 7figure 7).

Two lists. The gold standard, 9 terms: flying change, collected canter, half-halt, piaffe and passage in green, on both lists; canter, canter pirouette, pirouette and extended trot in red, only in the gold standard. Under it: 5 true positives, 4 false negatives. The output, 10 candidates: the same five terms in green; change, last corner, young rider, good horse and next movement in amber, only in the candidates. Under it: 5 true positives, 5 false positives.
Figure 7. A gold standard of nine terms and the ten candidates of a tool, coloured by outcome.

Five candidates are on both lists, so there are 5 true positives, 5 false positives and 4 false negatives (Figure 8figure 8):

  • precision = 5 / (5 + 5) = 0.50;
  • recall = 5 / (5 + 4) = 0.56.
Two panels, each with two overlapping circles, the gold standard and the system, coloured like the lists: the overlap, 5 true positives, in green; the part of the gold standard only, 4 false negatives, in red; the part of the system only, 5 false positives, in amber. On the left, precision: the system's circle is filled and the gold standard's other part is only outlined; TP / (TP + FP), 5 correct out of 10 returned, 5 / 10 = 0.50. On the right, recall: the gold standard's circle is filled and the system's other part is only outlined; TP / (TP + FN), 5 found out of 9 terms, 5 / 9 = 0.56.
Figure 8. Precision and recall measure the same overlap against two different totals: what the system returned, and what the gold standard contains.

The F1 score

The F1 score combines precision and recall into one number.

It is twice their product divided by their sum: F1 = 2 × precision × recall / (precision + recall), here 2 × 0.50 × 0.56 / (0.50 + 0.56) = 0.53. As a harmonic mean, it is closer to the lower of the two values than an ordinary average would be (Jurafsky & Martin, 2026), so a tool cannot score well by doing one thing only. For example, if a tool returned every word and every sequence of words of a text, it would have perfect recall, a precision close to zero, and an F1 score close to zero (Figure 9figure 9).

Two panels of four bars each, on a scale from 0 to 1. On the left, the tool of the worked example, 5 correct of 10 returned, 9 terms: precision 0.50, recall 0.56, ordinary average 0.53, F1 score 0.53. On the right, a tool that returns everything, 9 correct of 450 returned, 9 terms: precision 0.02, recall 1.00, ordinary average 0.51, F1 score 0.04.
Figure 9. The F1 score and the ordinary average of precision and recall, for the tool of the worked example and for a tool that returns everything.

The scores change with the number of candidates a tool returns. Figure 10figure 10 gives the three scores after each candidate of the ranked list of Figure 5figure 5: as more candidates are kept, precision falls and recall rises, and the F1 score is highest after seven candidates.

A line chart. Horizontal axis: the number of candidates kept, from 1 to 12, from the top of the ranked list. Vertical axis: a score from 0 to 1. Precision stays at 1.00 up to five candidates and then falls to 0.58 for the whole list. Recall rises from 0.12 to 0.88. The F1 score rises from 0.22 to 0.80 after seven candidates and ends at 0.70. Three dotted lines mark the cut after 4, the cut after 8 and the whole list.
Figure 10. Precision, recall and F1 after each candidate of one ranked list, against a gold standard of eight terms.

More than two classes

When a system sorts items into more than two classes, for example emails into urgent, normal and spam, precision and recall are calculated for each class. The scores of the classes are then averaged (macroaveraging), or the decisions for all classes are pooled before the calculation (microaveraging), in which case the most frequent class has the most influence on the result (Jurafsky & Martin, 2026).

Accuracy

The most obvious score is accuracy.

Unlike precision and recall, accuracy also counts the true negatives true negative (TN)vrai négatif (VN) evaluationévaluation An item that the gold standard does not contain and that a system did not return, or did not assign to the class it looks for: for example, a legitimate message that a spam filter lets through.Élément que la référence ne contient pas et qu'un système n'a ni trouvé ni classé dans la classe recherchée : par exemple, un message légitime qu'un filtre antipourriel laisse passer. : accuracy = (TP + TN) / (TP + FP + FN + TN). In words, accuracy is the number of correct decisions, positive or negative, divided by the number of all decisions. It can be calculated for a system that sorts items into classes, where the true negatives can be counted, but not for a system that finds things in a text (see also the False positives and false negatives page) (voir aussi la page Faux positifs et faux négatifs).

Figure 11figure 11 calculates it for a spam filter and 100 messages: 10 of the messages are spam, and the filter stops 6 of them and 6 messages that are not spam.

Two confusion matrices for 100 messages, 10 of them spam, with columns spam and not spam in the gold standard and rows stopped and let through. A spam filter: 6 true positives, 6 false positives, 4 false negatives, 84 true negatives; accuracy (6 + 84) / 100 = 0.90, precision 6 / (6 + 6) = 0.50, recall 6 / (6 + 4) = 0.60. Letting every message through: 0 true positives, 0 false positives, 10 false negatives, 90 true negatives; accuracy (0 + 90) / 100 = 0.90, precision: no message stopped, recall 0 / (0 + 10) = 0.00.
Figure 11. The same 100 messages judged by a spam filter and by letting every message through: the same accuracy, very different recall.

Accuracy is misleading when the class to find is rare, as the second matrix shows. Jurafsky and Martin (2026) give a more extreme example: a million social media posts, of which a hundred are about the product a company wants to follow: a system that labels every post as not about the product is right for 99.99 % of the posts, but it has found none of the hundred. Precision and recall do not count the true negatives, so the same system has a recall of zero (see also the Baselines page) (voir aussi la page Les étalons).

Written in English. The French version was automatically generated and I have not revised it. Rédigé en anglais. La version française a été générée automatiquement et je ne l'ai pas révisée. Updated 8 October 2026

La précision et le rappel

Pour un système qui repère des éléments dans un texte, ou qui classe des éléments en deux classes, la comparaison avec un étalon de référence gold standardétalon de référence evaluationévaluation The best available reference dataset, annotation, measurement or procedure against which a system's results are evaluated.Meilleur jeu de données, annotation, mesure ou procédure de référence disponible pour évaluer les résultats d'un système. donne deux scores (Jurafsky & Martin, 2026). La Figure 6figure 6 montre les parties à partir desquelles ils se calculent, pour un extracteur de termes.

Un rectangle pour tout ce que contient le texte, coupé par une ligne pointillée. La moitié gauche contient tous les termes de l'étalon de référence, VP + FN ; la moitié droite, tout le reste du texte, FP + VN. Un ovale à cheval sur la ligne contient tous les candidats proposés par le système, VP + FP. Les quatre zones : la partie de la moitié gauche hors de l'ovale, les faux négatifs, en rouge ; la partie de l'ovale dans la moitié gauche, les vrais positifs, en vert ; la partie de l'ovale dans la moitié droite, les faux positifs, en ambre ; le reste de la moitié droite, les vrais négatifs. Dans chaque zone, des points représentent des éléments.
Figure 6. Les parties à partir desquelles se calculent la précision et le rappel : les termes de l'étalon de référence, les candidats proposés par le système, et leur chevauchement.

Chaque score peut s’expliquer de plusieurs façons, et l’une d’elles vous paraîtra peut-être plus claire que les autres :

Un exemple détaillé

Dans cet exemple, un extracteur de termes propose dix candidats pour un court texte sur le dressage, et l’étalon de référence de ce texte compte neuf termes (Figure 7figure 7).

Deux listes. L'étalon de référence, 9 termes : changement de pied, galop rassemblé, demi-arrêt, piaffer et passage en vert, dans les deux listes ; galop, pirouette au galop, pirouette et trot allongé en rouge, seulement dans l'étalon. En dessous : 5 vrais positifs, 4 faux négatifs. La sortie, 10 candidats : les mêmes cinq termes en vert ; changement, dernier coin, jeune cavalier, bon cheval et mouvement suivant en ambre, seulement dans la sortie. En dessous : 5 vrais positifs, 5 faux positifs.
Figure 7. Un étalon de référence de neuf termes et les dix candidats d'un outil, en couleur selon le cas.

Cinq candidats figurent sur les deux listes : il y a donc 5 vrais positifs, 5 faux positifs et 4 faux négatifs (Figure 8figure 8) :

  • précision = 5 / (5 + 5) = 0,50 ;
  • rappel = 5 / (5 + 4) = 0,56.
Deux panneaux, chacun avec deux cercles qui se chevauchent, l'étalon de référence et le système, aux couleurs des listes : le chevauchement, 5 vrais positifs, en vert ; la partie de l'étalon seule, 4 faux négatifs, en rouge ; la partie du système seule, 5 faux positifs, en ambre. À gauche, la précision : le cercle du système est plein et l'autre partie de l'étalon n'est que contournée ; VP / (VP + FP), 5 corrects sur 10 proposés, 5 / 10 = 0,50. À droite, le rappel : le cercle de l'étalon est plein et l'autre partie du système n'est que contournée ; VP / (VP + FN), 5 trouvés sur 9 termes, 5 / 9 = 0,56.
Figure 8. La précision et le rappel mesurent le même chevauchement par rapport à deux totaux différents : ce que le système a trouvé, et ce que contient l'étalon de référence.

Le score F1

Le score F1 combine la précision et le rappel en un seul nombre.

Il vaut deux fois leur produit, divisé par leur somme : F1 = 2 × précision × rappel / (précision + rappel), ici 2 × 0,50 × 0,56 / (0,50 + 0,56) = 0,53. Comme moyenne harmonique, il est plus proche de la plus basse des deux valeurs que ne le serait une moyenne ordinaire (Jurafsky & Martin, 2026) : un outil ne peut donc pas obtenir un bon score en ne faisant qu’une seule chose. Par exemple, si un outil proposait chaque mot et chaque suite de mots d’un texte, il aurait un rappel parfait, une précision proche de zéro et un score F1 proche de zéro (Figure 9figure 9).

Deux panneaux de quatre barres chacun, sur une échelle de 0 à 1. À gauche, l'outil de l'exemple détaillé, 5 corrects sur 10 proposés, 9 termes : précision 0,50, rappel 0,56, moyenne ordinaire 0,53, score F1 0,53. À droite, un outil qui propose tout, 9 corrects sur 450 proposés, 9 termes : précision 0,02, rappel 1,00, moyenne ordinaire 0,51, score F1 0,04.
Figure 9. Le score F1 et la moyenne ordinaire de la précision et du rappel, pour l'outil de l'exemple détaillé et pour un outil qui propose tout.

Les scores changent avec le nombre de candidats qu’un outil propose. La Figure 10figure 10 donne les trois scores après chaque candidat de la liste classée de Figure 5figure 5 : à mesure qu’on garde plus de candidats, la précision baisse et le rappel augmente, et le score F1 est le plus élevé après sept candidats.

Un graphique linéaire. Axe horizontal : le nombre de candidats gardés, de 1 à 12, depuis le haut de la liste classée. Axe vertical : un score de 0 à 1. La précision reste à 1,00 jusqu'à cinq candidats, puis descend à 0,58 pour toute la liste. Le rappel monte de 0,12 à 0,88. Le score F1 monte de 0,22 à 0,80 après sept candidats et finit à 0,70. Trois lignes pointillées marquent la coupure après 4, la coupure après 8 et toute la liste.
Figure 10. La précision, le rappel et le score F1 après chaque candidat d'une liste classée, comparée à un étalon de référence de huit termes.

Plus de deux classes

Quand un système classe des éléments en plus de deux classes, par exemple des courriels en urgents, normaux et pourriels, la précision et le rappel se calculent pour chaque classe. On fait ensuite la moyenne des scores des classes (macromoyenne), ou on regroupe les décisions de toutes les classes avant le calcul (micromoyenne) ; dans ce cas, la classe la plus fréquente pèse le plus sur le résultat (Jurafsky & Martin, 2026).

L’exactitude

Le score le plus évident est l’exactitude.

Contrairement à la précision et au rappel, l’exactitude compte aussi les vrais négatifs true negative (TN)vrai négatif (VN) evaluationévaluation An item that the gold standard does not contain and that a system did not return, or did not assign to the class it looks for: for example, a legitimate message that a spam filter lets through.Élément que la référence ne contient pas et qu'un système n'a ni trouvé ni classé dans la classe recherchée : par exemple, un message légitime qu'un filtre antipourriel laisse passer.  : exactitude = (VP + VN) / (VP + FP + FN + VN). Autrement dit, l’exactitude est le nombre de décisions correctes, positives ou négatives, divisé par le nombre total de décisions. Elle peut se calculer pour un système qui classe des éléments, où les vrais négatifs peuvent être comptés, mais pas pour un système qui repère des éléments dans un texte (see also the False positives and false negatives page) (voir aussi la page Faux positifs et faux négatifs).

La Figure 11figure 11 la calcule pour un filtre antipourriel et 100 messages : 10 de ces messages sont des pourriels, et le filtre en arrête 6, ainsi que 6 messages qui ne sont pas des pourriels.

Deux matrices de confusion pour 100 messages, dont 10 pourriels, avec en colonnes pourriel et pas un pourriel dans l'étalon de référence, et en rangées arrêté et laissé passer. Un filtre antipourriel : 6 vrais positifs, 6 faux positifs, 4 faux négatifs, 84 vrais négatifs ; exactitude (6 + 84) / 100 = 0,90, précision 6 / (6 + 6) = 0,50, rappel 6 / (6 + 4) = 0,60. Laisser passer tous les messages : 0 vrai positif, 0 faux positif, 10 faux négatifs, 90 vrais négatifs ; exactitude (0 + 90) / 100 = 0,90, précision : aucun message arrêté, rappel 0 / (0 + 10) = 0,00.
Figure 11. Les mêmes 100 messages jugés par un filtre antipourriel et en laissant passer tous les messages : la même exactitude, un rappel très différent.

L’exactitude est trompeuse quand la classe à trouver est rare, comme le montre la deuxième matrice. Jurafsky et Martin (2026) donnent un exemple plus extrême : un million de publications sur les réseaux sociaux, dont une centaine portent sur le produit qu’une entreprise veut suivre. Un système qui étiquette chaque publication comme ne portant pas sur le produit a raison pour 99,99 % des publications, mais il n’a trouvé aucune des cent. La précision et le rappel ne comptent pas les vrais négatifs : le même système a donc un rappel de zéro (see also the Baselines page) (voir aussi la page Les étalons).

Written in English. The French version was automatically generated and I have not revised it. Rédigé en anglais. La version française a été générée automatiquement et je ne l'ai pas révisée. Mise à jour 8 octobre 2026

Sources

  • Jurafsky, D., & Martin, J. H. (2026). Speech and Language Processing: An Introduction to Natural Language Processing, Computational Linguistics, and Speech Recognition with Language Models. Online draft, 3rd edition. https://web.stanford.edu/~jurafsky/slp3/
  • Rigouts Terryn, A., Hoste, V., & Lefever, E. (2020a). In No Uncertain Terms: A Dataset for Monolingual and Multilingual Automatic Term Extraction from Comparable Corpora. Language Resources and Evaluation, 54(2), 385–418. https://doi.org/10.1007/s10579-019-09453-9

Sources

  • Jurafsky, D., & Martin, J. H. (2026). Speech and Language Processing: An Introduction to Natural Language Processing, Computational Linguistics, and Speech Recognition with Language Models. Online draft, 3rd edition. https://web.stanford.edu/~jurafsky/slp3/
  • Rigouts Terryn, A., Hoste, V., & Lefever, E. (2020a). In No Uncertain Terms: A Dataset for Monolingual and Multilingual Automatic Term Extraction from Comparable Corpora. Language Resources and Evaluation, 54(2), 385–418. https://doi.org/10.1007/s10579-019-09453-9

Spotted an error? Une erreur ?

Language, content, a broken link: e-mail me what you saw and I will fix it. Langue, contenu, lien brisé : écrivez-moi ce que vous avez vu et je corrige.

ayla.rigouts.terryn@umontreal.ca

Please mention the page: Mentionnez la page :