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.
Todos
Vista general
01
Elo básico
02
Reg. logística + Elo
03
Naive Bayes + Elo
04
Naive Bayes + stats
05
Ensemble jugadores
06
Ensemble calibrado
07
Ensemble selectivo
08
Comité especialistas
09
Modelo margen
| Modelo | Tipo | Objetivo | Evaluables | Cobertura | Acierto | Última | |
|---|---|---|---|---|---|---|---|
| Elo básico 01_elo_basico | Elo | Crear una probabilidad base usando fuerza historica de equipos. | 15.927 49 neutras | 100,00% útil 99,69% | 62,55% | 24/08/2026 08:26 | Ver |
| Reg. logística + Elo 02_regresion_logistica_elo | Regresión logística | Mejorar Elo aprendiendo pesos estadisticos sobre variables dinamicas. | 12.976 3.000 sin pred. histórica | 81,22% útil 100,00% | 63,98% | 24/08/2026 08:26 | Ver |
| Naive Bayes + Elo 03_naive_bayes_elo | Naive Bayes | Probar un clasificador probabilistico simple con señales Elo. | 12.976 3.000 sin pred. histórica | 81,22% útil 100,00% | 62,48% | 24/08/2026 08:26 | Ver |
| Naive Bayes + stats 04_naive_bayes_stats | Naive Bayes + stats | Añadir estadisticas recientes de equipo al enfoque Naive Bayes. | 12.976 3.000 sin pred. histórica | 81,22% útil 100,00% | 62,57% | 24/08/2026 08:26 | Ver |
| Ensemble jugadores 05_ensemble_jugadores | Ensemble | Combinar Elo, forma de equipo y perfiles rolling de jugadores. | 12.975 1 neutras 3.000 sin pred. histórica | 81,22% útil 99,99% | 63,53% | 24/08/2026 08:29 | Ver |
| Ensemble calibrado 06_ensemble_calibrado | Ensemble calibrado | Mejorar la calibracion de probabilidades del ensemble. | 11.976 4.000 sin pred. histórica | 74,96% útil 100,00% | 63,83% | 24/08/2026 08:33 | Ver |
| Ensemble selectivo 07_ensemble_selectivo | Ensemble selectivo | Subir el porcentaje de acierto seleccionando solo predicciones de alta confianza. | 3.259 8.717 neutras 4.000 sin pred. histórica | 74,96% útil 27,21% | 76,77% | 24/08/2026 08:39 | Ver |
| Comité especialistas 08_comite_especialistas | Comité de especialistas | Mejorar el acierto usando un experto distinto según el tipo de partido. | 11.976 4.000 sin pred. histórica | 74,96% útil 100,00% | 63,37% | 24/08/2026 08:48 | Ver |
| Modelo margen 09_modelo_margen_puntos | Modelo de margen | Predecir diferencia de puntos y convertirla en probabilidad de victoria. | 11.976 4.000 sin pred. histórica | 74,96% útil 100,00% | 65,03% | 24/08/2026 08:51 | Ver |
Naive Bayes + Elo
03_naive_bayes_elo
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_partidocomo variable categórica.- La racha se calcula con memoria de los partidos anteriores del equipo, no con el marcador del partido actual.
Entrenamiento
- Usa
GaussianNBdentro de un pipeline con imputación y one-hot. - Ajusta
var_smoothingpara 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.pyescribe el histórico conmodelo=03_naive_bayes_elo.02_apply_future.pycalcula 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_eloabs_diff_eloracha_local_5racha_visitante_5diff_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
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