projects 28.06.26 · 6 MIN

Predicciones vs Resultados: Modelos Mundial 2026 — Verificación en vivo

Contraste de las predicciones de los dos modelos contra los resultados reales de los 72 partidos de la fase de grupos. Los modelos predijeron los 48 partidos jugados del 18 al 27 de junio (los 24 del 11-17 de junio ya estaban jugados antes del primer refresh). Actualizado al 28 de junio — fase de grupos completa.

Resumen de aciertos (48 partidos con predicción)

Modelo Aciertos Total Precisión
XGBoost (base) 30 48 62.5%
Bayesiano jerárquico 32 48 66.7%
@vega-lite
{"$schema": "https://vega.github.io/schema/vega-lite/v5.json", "width": "container", "height": 280, "background": "transparent",
"data": {"values": [
  {"fecha": "18 jun", "modelo": "XGBoost", "pct": 75.0},
  {"fecha": "18 jun", "modelo": "Bayesiano", "pct": 75.0},
  {"fecha": "19 jun", "modelo": "XGBoost", "pct": 50.0},
  {"fecha": "19 jun", "modelo": "Bayesiano", "pct": 50.0},
  {"fecha": "20 jun", "modelo": "XGBoost", "pct": 75.0},
  {"fecha": "20 jun", "modelo": "Bayesiano", "pct": 75.0},
  {"fecha": "21 jun", "modelo": "XGBoost", "pct": 50.0},
  {"fecha": "21 jun", "modelo": "Bayesiano", "pct": 50.0},
  {"fecha": "22 jun", "modelo": "XGBoost", "pct": 75.0},
  {"fecha": "22 jun", "modelo": "Bayesiano", "pct": 100.0},
  {"fecha": "23 jun", "modelo": "XGBoost", "pct": 75.0},
  {"fecha": "23 jun", "modelo": "Bayesiano", "pct": 75.0},
  {"fecha": "24 jun", "modelo": "XGBoost", "pct": 50.0},
  {"fecha": "24 jun", "modelo": "Bayesiano", "pct": 66.7},
  {"fecha": "25 jun", "modelo": "XGBoost", "pct": 33.3},
  {"fecha": "25 jun", "modelo": "Bayesiano", "pct": 33.3},
  {"fecha": "26 jun", "modelo": "XGBoost", "pct": 66.7},
  {"fecha": "26 jun", "modelo": "Bayesiano", "pct": 83.3},
  {"fecha": "27 jun", "modelo": "XGBoost", "pct": 66.7},
  {"fecha": "27 jun", "modelo": "Bayesiano", "pct": 50.0}
]},
"mark": {"type": "line", "point": true},
"encoding": {
  "x": {"field": "fecha", "type": "nominal", "title": null, "axis": {"labelColor": "#d4d4c8", "labelAngle": -30}},
  "y": {"field": "pct", "type": "quantitative", "title": "Aciertos (%)", "scale": {"domain": [0, 105]}, "axis": {"labelColor": "#d4d4c8", "titleColor": "#d4d4c8", "gridColor": "#2a2a26"}},
  "color": {"field": "modelo", "scale": {"range": ["#7dd3fc", "#86efac"]}, "legend": {"labelColor": "#d4d4c8", "titleColor": "#d4d4c8"}},
  "tooltip": [{"field": "fecha", "title": "Jornada"}, {"field": "modelo"}, {"field": "pct", "title": "%", "format": ".1f"}]
},
"config": {"view": {"stroke": null}, "background": "transparent", "axis": {"domainColor": "#2a2a26"}}}

El 25 de junio fue el día más difícil: jornadas decisivas de los grupos D, E y F con empates y eliminaciones por diferencia de gol que los modelos no anticiparon. El 22 de junio fue el mejor día del bayesiano: acertó los 4 partidos (incluyendo Noruega, donde el XGBoost falló).


Todos los partidos — fase de grupos

✅ = pick correcto · ❌ = fallo · — = sin predicción disponible (partidos previos al primer refresh del modelo)

11 de junio

Gr Local Resultado Visitante XGB Bayes
A Mexico 2–0 S. Africa
A S. Korea 2–1 Czechia

12 de junio

Gr Local Resultado Visitante XGB Bayes
B Canada 1–1 Bosnia
D EE.UU. 4–1 Paraguay

13 de junio

Gr Local Resultado Visitante XGB Bayes
B Qatar 1–1 Switzerland
C Brazil 1–1 Morocco
C Haiti 0–1 Scotland
D Australia 2–0 Turkey

14 de junio

Gr Local Resultado Visitante XGB Bayes
E Germany 7–1 Curaçao
E C. Marfil 1–0 Ecuador
F P. Bajos 2–2 Japan
F Sweden 5–1 Tunisia

15 de junio

Gr Local Resultado Visitante XGB Bayes
G Belgium 1–1 Egypt
G Iran 2–2 N. Zealand
H Spain 0–0 Cape Verde
H Arabia S. 1–1 Uruguay

16 de junio

Gr Local Resultado Visitante XGB Bayes
I France 3–1 Senegal
I Iraq 1–4 Norway
J Argentina 3–0 Algeria
J Austria 3–1 Jordan

17 de junio

Gr Local Resultado Visitante XGB Bayes
K Portugal 1–1 RD Congo
K Uzbekistan 1–3 Colombia
L England 4–2 Croatia
L Ghana 1–0 Panama

18 de junio

Gr Local Resultado Visitante XGB Bayes
A Czechia 1–1 S. Africa
A Mexico 1–0 S. Korea
B Switzerland 4–1 Bosnia
B Canada 6–0 Qatar

19 de junio

Gr Local Resultado Visitante XGB Bayes
C Scotland 0–1 Morocco
C Brazil 3–0 Haiti
D EE.UU. 2–0 Australia
D Turkey 0–1 Paraguay

20 de junio

Gr Local Resultado Visitante XGB Bayes
E Germany 2–1 C. Marfil
E Ecuador 0–0 Curaçao
F P. Bajos 5–1 Sweden
F Tunisia 0–4 Japan

21 de junio

Gr Local Resultado Visitante XGB Bayes
G Belgium 0–0 Iran
G N. Zealand 1–3 Egypt
H Spain 4–0 Arabia S.
H Uruguay 2–2 Cape Verde

22 de junio

Gr Local Resultado Visitante XGB Bayes
I France 3–0 Iraq
I Norway 3–2 Senegal
J Argentina 2–0 Austria
J Jordan 1–2 Algeria

23 de junio

Gr Local Resultado Visitante XGB Bayes
K Portugal 5–0 Uzbekistan
K Colombia 1–0 RD Congo
L England 0–0 Ghana
L Panama 0–1 Croatia

24 de junio

Gr Local Resultado Visitante XGB Bayes
A Czechia 0–3 Mexico
A S. Africa 1–0 S. Korea
B Switzerland 2–1 Canada
B Bosnia 3–1 Qatar
C Morocco 4–2 Haiti
C Scotland 0–3 Brazil

25 de junio

Gr Local Resultado Visitante XGB Bayes
D Turkey 3–2 EE.UU.
D Paraguay 0–0 Australia
E Ecuador 2–1 Germany
E Curaçao 0–2 C. Marfil
F Tunisia 1–3 P. Bajos
F Japan 1–1 Sweden

26 de junio

Gr Local Resultado Visitante XGB Bayes
G N. Zealand 1–5 Belgium
G Egypt 1–1 Iran
H Uruguay 0–1 Spain
H Cape Verde 0–0 Arabia S.
I Norway 1–4 France
I Senegal 5–0 Iraq

27 de junio

Gr Local Resultado Visitante XGB Bayes
J Jordan 1–3 Argentina
J Algeria 3–3 Austria
K Colombia 0–0 Portugal
K RD Congo 3–1 Uzbekistan
L Panama 0–2 England
L Croatia 2–1 Ghana

Notas metodológicas

Los 24 partidos del 11-17 de junio (Jornada 1 y parte de la J2) se jugaron antes de que el pipeline de refresh fuera activado en esta sesión de seguimiento. Las predicciones del 18 al 27 de junio provienen del modelo XGBoost (pesos fijados pre-torneo, estado dinámico Elo/forma actualizado partido a partido) y del bayesiano jerárquico (reentrenado después de cada bloque de resultados con ~20 s de NUTS en CPU). El pick es el resultado con mayor probabilidad según cada modelo.

El seguimiento continúa en la fase de eliminatorias — ver predicciones de cuartos de final.