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.

Ensemble jugadores

05_ensemble_jugadores

Ensemble
Qué hace

Modelo rico de contexto deportivo. Construye un dataset cronológico con Elo, descanso, back-to-back, forma de equipo y perfiles rolling de jugadores antes de cada partido.

Resumen de datos que usa
  • Elo previo
  • Descanso
  • Back-to-back
  • Forma últimos 10 partidos
  • Top 8 por minutos
  • Profundidad de plantilla
  • Estadísticas rolling de equipo
Idea central
  • Es el primer modelo que intenta capturar plantilla real, no solo fuerza de equipo.
  • Para cada partido crea primero las features con el estado acumulado hasta antes del encuentro.
  • Después de generar la fila, incorpora el partido al historial para que afecte solo a partidos futuros.
Features de calendario
  • rest_local, rest_visitante y diff_rest: días desde el último partido de cada equipo, limitado a 10.
  • b2b_local y b2b_visitante: marca back-to-back cuando el descanso es inferior a 1.5 días.
  • liga_id, tipo_partido, equipo_local_id, equipo_visitante_id como categóricas.
Features de jugadores
  • Historial rolling por jugador con ventana de 12 partidos.
  • Perfil de jugador ponderado por minutos: puntos, rebotes, asistencias, robos+tapones, pérdidas, TS, eFG, uso, rating neto, más/menos y PIE.
  • Top 8 de jugadores por minutos para aproximar núcleo de rotación.
  • Profundidad de plantilla con jugadores 9 a 13.
  • Cuenta de jugadores conocidos y tamaño de roster disponible.
Features de equipo
  • Historial rolling de 10 partidos por equipo.
  • Win rate, margen, puntos a favor y puntos en contra.
  • Porcentajes de tiro, triples, libres, rebotes, asistencias, pérdidas, net rating, eFG, TS, ritmo, posesiones y PIE.
  • Para cada señal guarda local, visitante y diferencial local-visitante.
Candidatos entrenados
  • Regresión logística L2.
  • HistGradientBoostingClassifier.
  • RandomForestClassifier.
  • ExtraTreesClassifier.
  • Selecciona el candidato con mayor accuracy en el test temporal al corte 0.5.
Futuros y lesiones
  • Para partidos futuros reconstruye el estado histórico y usa plantillas actuales.
  • Consulta lesiones y excluye jugadores con estados como baja, dudoso, muy dudoso, out o doubtful.
  • Si no hay plantilla suficiente, retrocede al roster global del equipo.
Riesgos de lectura
  • La cifra histórica guardada puede ser optimista si procede del pipeline entrenado con todo el histórico.
  • La comparación limpia debe hacerse con split temporal o walk-forward.
  • Las features de jugadores son fuertes, pero dependen de la calidad de estadisticas_jugadores_partido y plantillas.
Validación resumida

Entrena varios candidatos y selecciona el mejor en split temporal. El backtest histórico actual escribe predicciones del modelo ya entrenado.

Salida resumida

Predice todos los partidos donde puede construir features.

Riesgo o lectura resumida

El script de features evita usar jugadores/estadisticas del propio partido en la fila actual, pero el backtest historico no es tan estricto como un walk-forward completo.

Tablas implicadas
  • partidos
  • temporadas
  • equipo_elo
  • estadisticas_equipos_partido
  • estadisticas_jugadores_partido
  • nba_plantillas_equipos
  • lesiones
  • porcentajes_victoria
Ficheros y responsabilidad
  • 01_python/03_modelos/05_ensemble_jugadores/features.py
    Constructor común de datasets históricos/futuros y upsert de predicciones.
  • 01_python/03_modelos/05_ensemble_jugadores/01_train.py
    Entrena candidatos y guarda el mejor modelo.
  • 01_python/03_modelos/05_ensemble_jugadores/03_backtest.py
    Genera predicciones históricas del 05.
  • 01_python/03_modelos/05_ensemble_jugadores/02_apply_future.py
    Aplica el 05 a partidos futuros con lesiones.
Features técnicas del JSON de entrenamiento
Numéricas (106)
  • diff_elo
  • abs_diff_elo
  • rest_local
  • rest_visitante
  • diff_rest
  • b2b_local
  • b2b_visitante
  • players_player_known_count_local
  • players_player_known_count_visitante
  • diff_players_player_known_count
  • players_player_roster_count_local
  • players_player_roster_count_visitante
  • diff_players_player_roster_count
  • players_player_top8_minutes_local
  • players_player_top8_minutes_visitante
  • diff_players_player_top8_minutes
  • players_player_top8_value_local
  • players_player_top8_value_visitante
  • diff_players_player_top8_value
  • players_player_top8_points_local
  • players_player_top8_points_visitante
  • diff_players_player_top8_points
  • players_player_top8_reb_local
  • players_player_top8_reb_visitante
  • diff_players_player_top8_reb
  • players_player_top8_ast_local
  • players_player_top8_ast_visitante
  • diff_players_player_top8_ast
  • players_player_top8_stocks_local
  • players_player_top8_stocks_visitante
  • diff_players_player_top8_stocks
  • players_player_top8_tov_local
  • players_player_top8_tov_visitante
  • diff_players_player_top8_tov
  • players_player_top8_ts_local
  • players_player_top8_ts_visitante
  • diff_players_player_top8_ts
  • players_player_top8_efg_local
  • players_player_top8_efg_visitante
  • diff_players_player_top8_efg
  • players_player_top8_usage_local
  • players_player_top8_usage_visitante
  • diff_players_player_top8_usage
  • players_player_top8_net_local
  • players_player_top8_net_visitante
  • diff_players_player_top8_net
  • players_player_top8_pm_local
  • players_player_top8_pm_visitante
  • diff_players_player_top8_pm
  • players_player_top8_pie_local
  • players_player_top8_pie_visitante
  • diff_players_player_top8_pie
  • players_player_depth_value_local
  • players_player_depth_value_visitante
  • diff_players_player_depth_value
  • players_player_depth_minutes_local
  • players_player_depth_minutes_visitante
  • diff_players_player_depth_minutes
  • team_win_rate_10_local
  • team_win_rate_10_visitante
  • diff_team_win_rate_10
  • team_margin_10_local
  • team_margin_10_visitante
  • diff_team_margin_10
  • team_points_for_10_local
  • team_points_for_10_visitante
  • diff_team_points_for_10
  • team_points_against_10_local
  • team_points_against_10_visitante
  • diff_team_points_against_10
  • team_team_fg_pct_10_local
  • team_team_fg_pct_10_visitante
  • diff_team_team_fg_pct_10
  • team_team_tp_pct_10_local
  • team_team_tp_pct_10_visitante
  • diff_team_team_tp_pct_10
  • team_team_ft_pct_10_local
  • team_team_ft_pct_10_visitante
  • diff_team_team_ft_pct_10
  • team_team_reb_10_local
  • team_team_reb_10_visitante
  • diff_team_team_reb_10
  • team_team_ast_10_local
  • team_team_ast_10_visitante
  • diff_team_team_ast_10
  • team_team_tov_10_local
  • team_team_tov_10_visitante
  • diff_team_team_tov_10
  • team_team_net_rating_10_local
  • team_team_net_rating_10_visitante
  • diff_team_team_net_rating_10
  • team_team_efg_10_local
  • team_team_efg_10_visitante
  • diff_team_team_efg_10
  • team_team_ts_10_local
  • team_team_ts_10_visitante
  • diff_team_team_ts_10
  • team_team_pace_10_local
  • team_team_pace_10_visitante
  • diff_team_team_pace_10
  • team_team_possessions_10_local
  • team_team_possessions_10_visitante
  • diff_team_team_possessions_10
  • team_team_pie_10_local
  • team_team_pie_10_visitante
  • diff_team_team_pie_10
Categóricas (4)
  • tipo_partido
  • liga_id
  • equipo_local_id
  • equipo_visitante_id
Acierto
63,53%
Evaluables
12.975
Aciertos
8.243
Fallos
4.732
Cobertura histórica
81,22%
Cobertura útil
99,99%
Neutras 50/50
1
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:29
Métricas de entrenamiento
Modelo JSON
05_ensemble_jugadores
Candidato seleccionado
hist_gradient_boosting
Total dataset
15.976
Train
12.780
Test
3.196
01_python/03_modelos/05_ensemble_jugadores/metrics/ensemble_jugadores_metrics.json