One of the most important concepts I have ever learned is Bayes' Theorem. Since I am more interested in the implication of the formula for everyday people, I will spare you the technical details. I think the takeaway of Bayes' Theorem is: When presented with new evidence, you must be willing to update your beliefs. This can be applied to many things, and I have always been curious how to enable more people to use this in making decisions about everyday things. My first application is Edge Model: a Bayesian football predictor.
After an impressive albeit controversial victory in the African Cup of Nations, I had a lot of faith in Senegal going into the FIFA World Cup 2026 Tournament. They betrayed my confidence in them, and only in the 11th hour did they redeem themselves. The uncertainty behind what to expect from each match inspired the question: What if I could build a Bayesian World Cup prediction model for who would win a given match and the whole tournament?
Having studied Decision and Risk Engineering under the advice of Professor Ross Schachter at Stanford's engineering school, my mind went back to the Dirichlet Distribution. This model was the start of this hobby project. The motivation beyond the intellectual satisfaction, was to ensure I was not placing too high of expectations on teams that will ultimately disappoint me. Fellow sports fans like me know what I am talking about.
Building side projects in the summer of 2026 is the easiest it has been thanks to the capabilities of AI coding assistants. Although I have some competence with coding, my years of experience driving innovation from the product management side inspired my decision to delegate the coding to the AI agent while I directed the project. Claude was an obvious choice since it has proven to be quite the intellectual collaborator. As one example, Claude's prioritization of asking clarifying questions when unsure of what I mean is by far my favorite feature.
Together, we kicked things off with a quick refresher on the Dirichlet Distribution powered Conditional Probability setup. Whenever I start a new project or product work, I often start with curiosity. I have found curiosity to be an antidote to arrogance and the kind of overconfidence that can make one fail to update their belief in light of new evidence.
Once my curiosity over the mathematical foundation of this hobby project was satisfied (for the time being at least), I presented the basic idea to the AI agent for constructive criticism. In my personal and professional use of AI agents, I have found it is important to instruct the agent to prioritize intellectual honesty over telling me what I want to hear. The feedback session helped refine the idea, and informed my thinking around what was in scope and out of scope for the Edge Model.
It was fun building the core prediction model during the world cup since the games presented a real time opportunity to test it, and find improvement opportunities. An example of the improvements is that I added a complementary Skellam Distribution powered in-match predictor to show how the pre-match probabilities evolved as time passed and goals were scored.
The World Cup has ended, and soon the 2026-27 football leagues will start around the world. The Edge Model is ready to enter this next phase. I anticipate there will be tweaks to the model. Since a league is different from a knockout tournament, the underlying distribution I will use for the Conditional Probability formula in my algorithm will be the Gamma-Poisson.
Of the 16 matches in the round of 32, the Edge Model predicted 15 of them correctly. This is a 94% prediction accuracy. The overall prediction accuracy for the model across all rounds was 81%. While that sounds good, my next article will look more closely at the 19% it got wrong and update our beliefs ahead of the new season. I hope you will join me in continuously updating your beliefs about the odds of your favorite team winning the Premier League 2026-27.