AdminLTE Preloader Image
Documentación de modelos

Ficha de modelos predictivos

Qué hace cada modelo, qué datos usa y cómo interpretar sus métricas.

Modelos registrados
9
9 con datos en la tabla
Predicciones evaluables
107.017
115.784 registros historicos · 15.976 partidos base
Mejor acierto
Ensemble selectivo
76,77%
Última predicción
24/08/2026 08:51
Según `porcentajes_victoria.calculado_en`

Tabla general

9 modelos registrados. Pulsa un modelo para abrir su ficha técnica y sus datos actuales.

Naive Bayes + Elo

03_naive_bayes_elo

Naive Bayes
Qué hace

Usa Gaussian Naive Bayes con las mismas señales base del modelo 02 para probar un enfoque probabilístico muy simple y rápido.

Resumen de datos que usa
  • Diferencia Elo
  • Rachas de 5 partidos
  • Tipo de partido
  • Etiqueta victoria local
Idea central
  • Mantiene las mismas señales básicas que el 02, pero cambia el algoritmo.
  • GaussianNB estima distribuciones por clase y combina evidencias bajo independencia condicional.
  • Es útil como contraste: si algo complejo no supera claramente a este modelo, quizá no está aportando señal real.
Features construidas
  • diff_elo, abs_diff_elo, racha_local_5, racha_visitante_5, diff_racha_5.
  • tipo_partido como variable categórica.
  • La racha se calcula con memoria de los partidos anteriores del equipo, no con el marcador del partido actual.
Entrenamiento
  • Usa GaussianNB dentro de un pipeline con imputación y one-hot.
  • Ajusta var_smoothing para evitar probabilidades numéricamente extremas.
  • Calcula umbral óptimo en el test entre 0.30 y 0.70.
Backtest y aplicación
  • 03_backtest_build_predictions.py escribe el histórico con modelo=03_naive_bayes_elo.
  • 02_apply_future.py calcula futuros cuando hay Elo previo suficiente.
  • Guarda el pipeline entrenado en models/nb_elo.pkl.
Riesgos de lectura
  • Puede sobreconfiar si las variables están correlacionadas, por ejemplo Elo y racha.
  • La calidad de probabilidad puede ser peor que la de regresión logística aunque el acierto bruto sea parecido.
  • Sigue sin incluir jugadores, descanso real, lesiones o mercado.
Validación resumida

Split temporal 80/20 y backtest cronológico guardado como predicciones históricas.

Salida resumida

Probabilidad de victoria local/visitante.

Riesgo o lectura resumida

El supuesto de independencia es fuerte; puede calibrar peor cuando las variables estan correlacionadas.

Tablas implicadas
  • partidos
  • equipo_elo
  • porcentajes_victoria
Ficheros y responsabilidad
  • 01_python/03_modelos/03_naive_bayes_elo/01_train.py
    Entrena GaussianNB con señales Elo/racha.
  • 01_python/03_modelos/03_naive_bayes_elo/03_backtest_build_predictions.py
    Backtest histórico.
  • 01_python/03_modelos/03_naive_bayes_elo/02_apply_future.py
    Aplicación a futuros.
Features técnicas del JSON de entrenamiento
Numéricas (5)
  • diff_elo
  • abs_diff_elo
  • racha_local_5
  • racha_visitante_5
  • diff_racha_5
Categóricas (1)
  • tipo_partido
Acierto
62,48%
Evaluables
12.976
Aciertos
8.108
Fallos
4.868
Cobertura histórica
81,22%
Cobertura útil
100,00%
Neutras 50/50
0
Sin pred. histórica
3.000
Temporadas
24
Ligas
3
Periodo
24/02/2019 20:30
14/06/2026 00:30
Última predicción
24/08/2026 08:26
Métricas de entrenamiento
Modelo JSON
03_naive_bayes_elo
Total dataset
15.976
Train
12.780
Test
3.196
Var smoothing
1.0E-9
Accuracy test @0.5
63,86%
Mejor umbral test
0.34
Accuracy mejor umbral
64,02%
LogLoss test
0,6693
Brier test
0,2318
ROC AUC test
0,6837
01_python/03_modelos/03_naive_bayes_elo/metrics/nb_elo_metrics.json