# Precisión, recall y F1 explicados con ejemplos de moderación

> La exactitud esconde el problema. Qué miden la precisión, el recall y el F1, cómo calcularlos en 30 segundos y cuál importa para tu comunidad.

Source: https://www.vigimod.com/es/learn/precision-recall-f1 · VigiMod (https://www.vigimod.com) · actualizado el 2026-11-11 · 7 min

## En resumen

- La exactitud engaña cuando los mensajes dañinos son raros: «no marcar nada» puede tener un 98 % de exactitud.
- Precisión: de los mensajes marcados, cuántos eran realmente dañinos.
- Recall (exhaustividad): de los mensajes dañinos, cuántos se detectaron.
- El F1 combina los dos: solo es alto cuando ambos son altos.

## Por qué la exactitud no basta

Imagina 1.000 mensajes de chat, de los que 20 son insultos. Un modelo que **no marca nunca nada** acierta 980 veces de 1.000: un **98 % de exactitud** y ninguna utilidad. Cuando lo que buscas es raro, la exactitud esconde el problema. Por eso la moderación se mide con **precisión** y **recall**.

## Las cuatro casillas

Cada decisión cae en una de cuatro casillas:

| | Realmente dañino | Realmente inofensivo |
|---|---|---|
| **Marcado** | verdadero positivo (TP) | falso positivo (FP) |
| **No marcado** | falso negativo (FN) | verdadero negativo (TN) |

Un **falso positivo** es un mensaje inocente marcado por error; un **falso negativo** es un mensaje dañino que se ha colado. Tienen costes distintos, explicados en [falsos positivos y falsos negativos](https://www.vigimod.com/es/learn/false-positives-and-false-negatives).

## Precisión

> Precisión = TP / (TP + FP)

De todo lo que el modelo marcó, ¿cuánto era realmente dañino? Una precisión baja significa **muchas falsas alarmas**: tus moderadores pierden tiempo y tus usuarios se molestan.

## Recall

> Recall = TP / (TP + FN)

De todos los mensajes dañinos, ¿cuántos detectó el modelo? Un recall bajo significa **muchos fallos**: el contenido dañino se queda en el chat.

## Un ejemplo resuelto

De 1.000 mensajes, 20 son insultos. El modelo marca 25 mensajes: 18 son insultos de verdad y 7 son inocentes.

- TP = 18, FP = 7, FN = 20 − 18 = 2
- Precisión = 18 / 25 = **0,72**
- Recall = 18 / 20 = **0,90**

El modelo detecta casi todos los insultos, pero más o menos una de cada cuatro marcas es una falsa alarma.

## F1: un solo número para los dos

> F1 = 2 × precisión × recall / (precisión + recall)

El F1 es la *media armónica* de los dos: solo es alto cuando **ambos** son altos. En el ejemplo, F1 = 2 × 0,72 × 0,90 / 1,62 ≈ **0,80**. Un modelo con precisión 1,0 y recall 0,1 tiene un F1 de solo 0,18, aunque la media de los dos sea 0,55.

## ¿Cuál importa para ti?

- Un **juego para niños** puede querer un recall muy alto: que se escape un intento de acoso sexual es mucho peor que unas cuantas falsas alarmas revisadas por una persona.
- Una **comunidad de jugadores llena de piques** puede querer una precisión alta: marcar cada «eres malísimo en este juego» entre amigos echaría a la gente.

Te mueves entre los dos con el [umbral](https://www.vigimod.com/es/learn/choosing-a-threshold): si lo bajas, el recall sube y la precisión baja; si lo subes, ocurre lo contrario.

## Precisión media (AP)

El F1 depende del umbral elegido. La **precisión media** (average precision) resume el modelo en todos los umbrales a la vez: indica lo bien que las puntuaciones separan los mensajes dañinos de los inofensivos, independientemente de dónde pongas la línea. Es útil para comparar dos modelos de forma justa.

## Una nota sobre la «verdad»

Todos estos números comparan el modelo con etiquetas escritas por personas, y las personas no siempre coinciden, sobre todo con el odio y la ironía. Si las etiquetas de prueba están mal, incluso un modelo perfecto saca una puntuación más baja. Por eso las evaluaciones serias revisan sus conjuntos de prueba (ver [datos de entrenamiento y etiquetas](https://www.vigimod.com/es/learn/training-data-and-labels)).

## Cuestionario

1. 1.000 mensajes, 10 dañinos. Un modelo que nunca marca nada tiene una exactitud del…
   Respuesta: 99 %. Acierta en los 990 inofensivos: mucha exactitud, ninguna utilidad.
2. La precisión responde a la pregunta…
   Respuesta: De los mensajes marcados, ¿cuántos eran realmente dañinos?. Precisión = TP / (TP + FP).
3. El modelo detecta 30 de 40 mensajes dañinos. El recall es…
   Respuesta: 0,75. 30 / 40 = 0,75.
4. Precisión 1,0 y recall 0,1. El F1 es aproximadamente…
   Respuesta: 0,18. F1 = 2 × 1,0 × 0,1 / 1,1 ≈ 0,18: solo es alto cuando ambos son altos.
