The Team that AI Built
I am sure that everyone has seen me talking about my Sisyphus-esque task of creating an AI that could build me a fantasy team that would be able to win my league. Like Viktor Frankenstein, I believe I have finally created my monster to do so.
I will not share the exact code used to create that team, but I have shared the pre-processing and data engineering task that it took to create the data set that was the foundation for this work here.
In my hands were 54 years of offensive performance data on players, I started my analysis. The first task I performed was creating a correlation chart on all of the performances of players overall and I got a correlation chart that is too big for Medium to post it on the page.
From here I was able to create some plans for my team creation. My final decision came down to focusing on non-volatile players (in a performance standard). This means that I created a model that would prioritize players who had high average scores with a low variance of score breakdown. So, for example, this is what Aaron Rodgers looks like in the analytic:
This would mean that Aaron Rodgers average fantasy score is 18.755 points with a variance of 8.568 points. If you are familiar with standard deviation, you will know that the variance is what the step of a standard deviation is for this player. This means that 50% of the time Aaron Rodgers will score between 10 and 26 points. While this isn’t a great insight, it does allow for us to know how confident we can be in a player. There was a little more work done as to relate to time series and trends up and down, but this was more or less the framework for the process.
Some of those reading this may be ahead of me a bit when they saw how I was going to build this and see some flaws already. From the process I used, my model created what I am going to call a “Reliability Score”. This represents how reliable a player is and how close they will be to their average score. This score gave me a document of all players who have played in the NFL for at least one season (so no rookies) and led me through my draft. The team that my model told me to get was the following.
I have gotten pretty much the same response from every single person I have shown this team to, “That is a very reliable team.” For those who may not follow football quite as closely, that basically means I don’t have any players who can be ‘explosive’ on the field. They show up, do their work, and go home. All are solid players, but none are outrageous. Russel Wilson as a first round pick is quite suspicious and Melvin Gordon as a second rounder is pretty much insane by most drafting strategies.
Without too much surprise, my team was projected to lose the league by an IBM predictor that someone else used to review our draft.
My week 1 was very stressful as I was only projected to get around 81 points with this team and the team I was playing was projected to score above 100 points. That is usually a pretty significant death sentence in most fantasy scenarios.
However, if any of you watched last week’s games, I did pretty well with my team. The model I have for picking players to play chose this team and they did pretty well:
Now, most of these players scored pretty closely within their average and did get me the win! My opposition did choose to not start a defense though, so I very well could have lost this had a defense been played.