4.3.8
F1 Score
Resumen
- F1 Score | La media armónica de precisión y exhaustividadの概要を押さえ、評価対象と読み取り方を整理します。
- Python 3.13 のコード例で算出・可視化し、手順と実務での確認ポイントを確認します。
- 図表や補助指標を組み合わせ、モデル比較や閾値調整に活かすヒントをまとめます。
1. Definición #
Con precisión \(P\) y exhaustividad \(R\), el F1 se define como F_1 = 2 \cdot \frac{P \cdot R}{P + R}. La versión general Fβ permite ponderar más el recall (\(\beta > 1\)) o la precisión (\(\beta < 1\)): F_\beta = (1 + \beta^2) \cdot \frac{P \cdot R}{\beta^2 P + R}.
2. Cálculo en Python 3.13 #
| |
| |
classification_report resume precisión, exhaustividad y F1 por clase.
3. Cómo varía el F1 con el umbral #
Si disponemos de probabilidades, podemos representar cómo evoluciona el F1 al mover el umbral de decisión.
| |

Localiza el pico para elegir el umbral con mejor equilibrio entre precisión y recall.
- El máximo indica el mejor compromiso entre precisión y recall cuando ambos son igual de relevantes.
- Usa F0.5 (prioriza precisión) o F2 (prioriza recall) si las necesidades del negocio así lo requieren.
4. Estrategias de promedio en escenarios multiclase #
El parámetro verage de scikit-learn permite agrupar F1 en problemas multiclase o multilabel:
- macro — media simple de los F1 por clase.
- weighted — media ponderada por el soporte de cada clase.
- micro — se calcula sobre la confusión global; puede ocultar el comportamiento de clases minoritarias.
| |
En multietiqueta, verage=“samples” devuelve la media por muestra.
Resumen #
- F1 equilibra precisión y exhaustividad; conviene graficarlo frente al umbral para elegir el punto de operación.
- Los Fβ permiten inclinar la balanza hacia recall (β>1) o precisión (β<1) según el contexto.
- En multiclase, indica la estrategia de promedio y revisa F1 junto con Precision/Recall y la curva PR para comprender el comportamiento del modelo.