A personal project that used machine learning to predict football outcomes and simulate the 2026 World Cup, correctly identifying the top 2 finishing teams a full month before the final was played.
Why I Built This
Football is one of the hardest sports to predict, and that is what made it worth trying. I wanted to see if real historical data could produce honest, useful probabilities instead of a guess, while also practicing the full machine learning process: cleaning messy real world data, building meaningful features, and evaluating results fairly.
What the Project Does
The system predicts who wins a match and by what score, using nearly 50,000 historical matches. It then simulates the full World Cup bracket thousands of times to calculate each team's realistic chances of winning the tournament, rather than just guessing a single outcome.
The Result That Proved It Worked
The most rewarding moment came about a month before the final. The tournament simulation had already pointed to the correct top 1 and top 2 teams, well before the actual final was played. Seeing a model trained purely on historical patterns get the biggest call right ahead of time was proof that the approach had real predictive value, not just theoretical accuracy.
Adding an AI Perspective
To push the project further, I also connected it to Google's Gemini AI, giving it live search access to analyze matches like a human analyst using current form and news. Comparing a pure statistical model against an AI that reasons in real time made the project far more interesting than relying on one method alone.
