Are you a typical UFC viewer? Have you ever wondered if the ranking next to a UFC fighter’s last name actually means anything? I was curious and wanted to answer this question by investigating the data.
Why The Rankings Matter
There are real implications for the fighters: their UFC ranking is an important part of a UFC Fighter’s brand. Many UFC fighters use these rankings to decide who they should accept fights against in addition to impacting their image in an entertainment industry where being seen as better means a better paycheck. Their UFC ranking is an important part of a UFC Fighter’s brand. One ranked UFC fighter went as far as to say: “the ranking system, they put us in a position — how come the guy #5 or #6 is fighting a guy that’s not even in the rankings? Because of the ranking system, it’s kind of like a limit which I don’t agree with … because of that, I don’t want to take a fight against someone not in the rankings“.
The best way to decide if the rankings matter is by using statistics to analyze what the rankings are before each fight happens. BUT to my surprise, this information isn’t stored anywhere I could find online (if it was, it would’ve saved me a bunch of time). So I went out and re-watched all of the events of the last few years and tracked what the rankings were at the time of each fight that included at least one ranked fighter. I collected the data in a google sheet file (which is analogous to an Excel or csv file).
There are way more potential match-ups (15 vs 14, 8 vs 5, 8 vs 7 etc) than the number of data points that exist in my sample (around 200 fights that include two ranked fighters). For my analysis I used the difference between rankings as a continuous variable which assumes the difference in skill between rank 1 and rank 2 is the same as between rank 14 and rank 15. It is reasonable to expect the larger the difference in ranking the more likely it is the higher ranked fighter wins, and this is one barometer I will use to evaluate the rankings.
A quick primer on Bayesian statistics and logistic regression
The basic idea behind Bayesian statistics is that probability is about degrees (or magnitudes) of belief. For example: If I am completely certain of an outcome, it has a 100% chance of happening. This contrasts with the frequentist (traditional view) that probabilities are the long-run frequency of an event occurring.
The beauty of Bayesian statistics is that instead of creating a single parameter estimate, it produces a frequency distribution of all the possible parameter values and specifies how confident we should be in each parameter.
So what is logistic regression?
Logistic regression is based on linear regression (which fits a line through data in a way that minimizes the sum of their squared errors). Logistic regression uses a logit squashing function to turn the outputs of a linear regression into a range between 0 and 1. Whereas linear regression could be used to predict a continuous variable—for example height in inches or the price of a stock, logistic regression tackles classification problems—like whether or not a fighter will win a UFC fight, or if a picture is of a cat or dog.
Analysis of the data
In this specific example, a frequentist logistic regression model only produces singular intercept and coefficient estimates, by using a Bayesian model I’m able to estimate a distribution of possible intercepts and a distribution of coefficient estimates.
The model specification not including the logit transform is simple:
y = Intercept + Rank_Difference * x
After applying the markov chain monte carlo (MCMC) sampling to some reasonable priors and hitting the “inference button”, my program spit out posterior distribution estimates for what our model parameter coefficients should be:
The shocking thing about this, is that the mean of the rank_difference coefficent is actually negative (!!!) that means that a fighter ranked 9 fighting a fighter ranked 10 has a higher probability of winning than a fighter ranked 5 facing a fighter ranked 10.
You should take this with a large grain of salt though, my posterior estimates indicate a lot of uncertainty and a positive coefficient is also believably consistent with the data.
In terms of model specification, the trace plots and pair plot seem normal:
There is an important discussion to be had about the role of rankings in sports. In sports leagues like the NBA or NFL rankings are mainly determined by record (with some tie-breaking rules) and conference. Only in the playoffs are these rankings shown, and they are usually very reliable indicators of which team is better. For example, in the NBA 80% of teams who win the championship are seeded first or second out of 8 (this means being top 4 since there are two conferences).
But in leagues where the data is incredibly sparse (there are many more UFC fighters and College Football teams than the 30 NBA teams or 32 NFL teams) and the rankings are voted on (not automatically determined by a formula) it is vital to hold the rankings accountable because they simply the opinions of people: “[UFC] Rankings were generated by a voting panel made up of media members. The media members were asked to vote for who they feel are the top fighters in the UFC by weight-class”. The higher ranked fighter only wins 53% of the time. You will get way better results by looking at vegas odds for determining who the best fighters in the world are.
Further work could collect more data and add additional variables of interest.
Thanks for reading!
You can find my google colab notebook here