Fundamentos: métricas, overfitting y partición de datos
DisponibleAprende a separar datos, interpretar métricas y detectar cuándo un modelo aprende demasiado poco o memoriza demasiado.
Descripción
Qué hacePresenta las herramientas que se usan para saber si un modelo funciona: partición de datos, métricas y control de la complejidad.
Para qué sirveDistinguir un modelo que generaliza de uno que solo parece bueno porque fue evaluado con los datos equivocados o memorizó el entrenamiento.
La idea central
Un modelo no se evalúa preguntando cuánto recuerda, sino qué tan bien responde ante datos que nunca vio. Para comprobarlo hay que separar los datos, elegir una métrica adecuada y vigilar que la complejidad no convierta aprendizaje en memorización.
Train, validation y test
Entrenamiento (train)
El modelo usa estos ejemplos para ajustar sus parámetros.
Validación
Permite elegir hiperparámetros y complejidad sin mirar el resultado final.
Test
Se usa una sola vez, al final, para estimar cómo funcionará el modelo con datos nuevos.
Data leakage
Ocurre cuando información de validación o test influye en el entrenamiento. El resultado parece mejor de lo que realmente es.
En esta demo:El módulo 3 decide el grado del polinomio mirando solo el error de validación, nunca el de test.
Cómo leer una clasificación
Accuracy
(VP+VN) / total
Proporción total de predicciones correctas. Puede engañar si una clase es mucho más frecuente.
Precision
VP / (VP+FP)
De todo lo que el modelo marcó como positivo, qué proporción realmente lo era.
Recall
VP / (VP+FN)
De todos los positivos reales, qué proporción logró encontrar el modelo.
F1
2 × (precision × recall) / (precision + recall)
Resume precision y recall en un valor; será bajo si cualquiera de los dos es bajo.
Indefinido, no cero:Con un denominador en cero (p. ej. el modelo nunca predijo la clase positiva), la métrica se muestra como «indefinido», nunca como 0% o NaN.
Complejidad y generalización
Underfitting · demasiado simple
El modelo no alcanza a representar el patrón. Comete errores tanto en entrenamiento como en validación.
Buen equilibrio
El error es bajo y parecido en entrenamiento y validación: lo aprendido se transfiere a datos nuevos.
Overfitting · demasiado complejo
El modelo memoriza detalles y ruido. Rinde muy bien al entrenar, pero empeora con datos de validación.
Una partición no cuenta toda la historia:El resultado puede cambiar según qué muestras caigan en cada grupo. La validación cruzada repite este proceso con varias particiones para obtener una estimación más estable.
Playground
Separar
Partición de datos
Divide el dataset en tres grupos con responsabilidades distintas. El test queda reservado para la evaluación final y no participa en ninguna decisión previa.
Resultado de la partición
90 muestras sintéticas · seed 7
- Entrenamiento
- 63
- Validación
- 14
- Test
- 13
| # | x | y | Partición |
|---|---|---|---|
| 0 | -3.91 | 1.67 | Entrenamiento |
| 1 | 1.59 | 2.04 | Test |
| 2 | -0.27 | -1.65 | Entrenamiento |
| 3 | 1.84 | 3.09 | Entrenamiento |
| 4 | 2.11 | 2.53 | Entrenamiento |
| 5 | -1.06 | -3.18 | Test |
| 6 | -1.63 | -2.60 | Entrenamiento |
| 7 | 3.02 | 1.52 | Entrenamiento |
| 8 | -2.76 | -2.21 | Entrenamiento |
| 9 | 2.09 | 3.49 | Validación |
| 10 | 0.43 | 0.83 | Validación |
| 11 | 3.73 | 0.37 | Entrenamiento |
| 12 | 2.62 | 2.25 | Test |
| 13 | -1.14 | -1.58 | Entrenamiento |
| 14 | -3.30 | -0.69 | Validación |
| 15 | -0.59 | -0.74 | Entrenamiento |
| 16 | 1.63 | 2.35 | Entrenamiento |
| 17 | -1.15 | -1.57 | Validación |
| 18 | 3.30 | 0.71 | Validación |
| 19 | 1.06 | 3.11 | Test |
| 20 | 1.47 | 2.36 | Test |
| 21 | 2.61 | 2.06 | Validación |
| 22 | -3.06 | -1.17 | Entrenamiento |
| 23 | 3.13 | 0.75 | Entrenamiento |
| 24 | 0.75 | 1.94 | Entrenamiento |
| 25 | 0.39 | 1.36 | Entrenamiento |
| 26 | 0.13 | 0.19 | Entrenamiento |
| 27 | 0.40 | 1.45 | Validación |
| 28 | 0.46 | 0.82 | Entrenamiento |
| 29 | 1.14 | 1.91 | Entrenamiento |
| 30 | -1.50 | -1.58 | Entrenamiento |
| 31 | -3.81 | 0.31 | Entrenamiento |
| 32 | 1.04 | 0.96 | Entrenamiento |
| 33 | 0.76 | 2.28 | Entrenamiento |
| 34 | -1.78 | -2.62 | Test |
| 35 | 2.44 | 2.14 | Validación |
| 36 | -2.89 | -1.15 | Entrenamiento |
| 37 | 0.54 | 0.41 | Entrenamiento |
| 38 | -2.31 | -1.80 | Entrenamiento |
| 39 | 1.89 | 3.05 | Test |
| 40 | 0.87 | 2.44 | Entrenamiento |
| 41 | -0.09 | -1.11 | Entrenamiento |
| 42 | 2.37 | 2.10 | Entrenamiento |
| 43 | 0.44 | 0.38 | Entrenamiento |
| 44 | -2.56 | -2.59 | Test |
| 45 | -0.18 | 0.66 | Test |
| 46 | -2.61 | -0.29 | Entrenamiento |
| 47 | 3.01 | 0.97 | Entrenamiento |
| 48 | -2.60 | -2.39 | Entrenamiento |
| 49 | 1.86 | 1.98 | Entrenamiento |
| 50 | 2.33 | 2.18 | Entrenamiento |
| 51 | 0.24 | 0.27 | Entrenamiento |
| 52 | 0.50 | 0.32 | Entrenamiento |
| 53 | 2.21 | 2.17 | Entrenamiento |
| 54 | 2.61 | 1.63 | Entrenamiento |
| 55 | -0.56 | -0.63 | Entrenamiento |
| 56 | -1.99 | -3.27 | Entrenamiento |
| 57 | 2.64 | 2.32 | Entrenamiento |
| 58 | 0.41 | 0.63 | Entrenamiento |
| 59 | 0.30 | 1.46 | Test |
| 60 | 0.58 | 1.47 | Test |
| 61 | -0.03 | -0.34 | Entrenamiento |
| 62 | 3.45 | -0.19 | Entrenamiento |
| 63 | -2.70 | -1.82 | Entrenamiento |
| 64 | 0.88 | 1.75 | Entrenamiento |
| 65 | -1.64 | -3.14 | Entrenamiento |
| 66 | 1.86 | 2.46 | Entrenamiento |
| 67 | -1.92 | -2.74 | Entrenamiento |
| 68 | 3.41 | 0.42 | Entrenamiento |
| 69 | 3.70 | 0.90 | Validación |
| 70 | -1.74 | -3.10 | Entrenamiento |
| 71 | 1.71 | 2.27 | Entrenamiento |
| 72 | 1.80 | 2.07 | Entrenamiento |
| 73 | -1.82 | -2.90 | Validación |
| 74 | -2.88 | -1.57 | Entrenamiento |
| 75 | 0.48 | 1.69 | Entrenamiento |
| 76 | 3.62 | 0.89 | Validación |
| 77 | -1.70 | -3.12 | Entrenamiento |
| 78 | 3.28 | 0.08 | Validación |
| 79 | 3.26 | -0.52 | Entrenamiento |
| 80 | 3.41 | 0.37 | Test |
| 81 | -1.33 | -2.26 | Entrenamiento |
| 82 | 2.74 | 2.37 | Entrenamiento |
| 83 | 2.02 | 3.51 | Validación |
| 84 | 3.29 | -0.43 | Entrenamiento |
| 85 | -1.90 | -2.57 | Test |
| 86 | -3.54 | 0.71 | Validación |
| 87 | -3.34 | -1.30 | Entrenamiento |
| 88 | 2.31 | 1.98 | Entrenamiento |
| 89 | -0.02 | -1.31 | Entrenamiento |
Medir
Métricas de clasificación
Cambia la matriz y observa qué pregunta responde cada métrica. El preset desbalanceado demuestra por qué una accuracy alta no siempre significa que el modelo sea útil.
Clases de tamaño similar; precisión, recall y F1 se mantienen cerca de la accuracy.
| Predicción ↓ / Real → | Positivo | Negativo |
|---|---|---|
| Predicho positivo | ||
| Predicho negativo |
Atajo: Ctrl/Cmd+Z deshace la última edición confirmada (si el foco no está en un campo de texto).
Métricas calculadas sobre la matriz
- Accuracy
- 89.0%
- Precision
- 88.2%
- Recall
- 90.0%
- F1
- 89.1%
- Specificity
- 88.0%
Cambiar el umbral
Curvas ROC y precisión-recall
¿Qué es el umbral?
Es el puntaje mínimo para predecir “positivo”. Al bajarlo aparecen más positivos: sube el recall, pero también pueden aumentar las falsas alarmas.
¿Qué muestra cada curva?
ROC compara recall con falsas alarmas. Precisión-recall muestra cuánto recall se obtiene sin perder precisión y suele ser más informativa con clases desbalanceadas.
Área bajo la curva
- AUC-ROC
- 0.905
- AUC-PR (precisión promedio)
- 0.870
1.0 es separación perfecta; 0.5 equivale a ordenar al azar.
Más sensible que AUC-ROC cuando la clase positiva es minoritaria.
Nota: las curvas usan 100 puntuaciones sintéticas reproducibles derivadas del preset (45 VP, 6 FP, 5 FN y 44 VN). Con un umbral de 0.5 reproducen la matriz mostrada arriba.
Diagnosticar
Underfitting y overfitting
Aumenta el grado del polinomio y compara entrenamiento con validación. La meta no es minimizar el error de entrenamiento a cualquier precio, sino conservar un buen resultado con datos no vistos.
Grado 1 dibuja una recta. Al aumentar el grado, la curva puede adaptarse a patrones más complejos y también al ruido.
- Entrenamiento
- Validación
- Ajuste (grado 3)
Error de entrenamiento vs. validación
- MSE entrenamiento
- 0.3768
- MSE validación
- 0.7222
- R² entrenamiento
- 0.882
- R² validación
- 0.750
Diagnóstico
Balance razonable
El error de entrenamiento y de validación son similares: el modelo generaliza razonablemente a datos que no vio para ajustarse.
El conjunto de test (separado en el módulo de partición) no participa aquí: se reserva para una evaluación final única después de elegir el grado, no para decidir qué grado usar.