MODEL.details
Performance metrics on the last year of fights (data not used in model training)
Vegas Odds Performance
Accuracy | 70.00% |
Precision | 0.716 |
Recall | 0.765 |
F1 Score | 0.740 |
Log Loss | 0.578 |
Brier Score | 0.197 |
MMA-AI.net Performance
Accuracy | 71.21% |
Precision | 0.724 |
Recall | 0.829 |
F1 Score | 0.773 |
Log Loss | 0.594 |
Brier Score | 0.203 |
Feature | Importance |
---|---|
Age Difference | |
Significant Strike Landing Ratio Decayed Adjusted Performance Decayed Average Difference | |
Age Ratio Difference | |
Submission Attempts Decayed Average Difference | |
Leg Defense Decayed Average Difference | |
Reach Difference | |
Takedown Attempts Round 1 Decayed Average Difference | |
KO Decayed Average Difference | |
Head Defense Decayed Average Difference | |
Clinch Landed Round 1 Ratio Decayed Adjusted Performance Decayed Average Difference | |
Ground Strikes Landed Round 1 per Minute Decayed Average Difference | |
Significant Strike Accuracy Opponent Decayed Average Difference | |
Knockdown Ratio Opponent Decayed Average Difference | |
Distance Accuracy Decayed Adjusted Performance Decayed Average Difference | |
Control Round 1 Opponent Decayed Average Difference | |
UFC Age Difference | |
Days Since Last Fight Average Difference | |
Control per Minute Opponent Decayed Average Difference | |
Clinch Landed per Minute Decayed Adjusted Performance Decayed Average Difference | |
Takedown Attempts Round 1 Opponent Decayed Average Difference | |
Head Landing Ratio Opponent Decayed Average Difference | |
Takedown Attempts Ratio Decayed Adjusted Performance Decayed Average Difference | |
Head Landing Round 1 per Minute Decayed Adjusted Performance Decayed Average Difference | |
Body Accuracy Decayed Adjusted Performance Decayed Average Difference | |
Significant Strike Landing Ratio Opponent Decayed Average Difference | |
Win Decayed Adjusted Performance Decayed Average Difference | |
Head Landing Ratio Decayed Adjusted Performance Decayed Average Difference | |
Distance Landing Ratio Decayed Adjusted Performance Decayed Average Difference | |
Body Accuracy Decayed Average Difference | |
Control Ratio Decayed Average Difference | |
Ground Landing Ratio Decayed Adjusted Performance Decayed Average Difference | |
Significant Strike Accuracy Decayed Adjusted Performance Decayed Average Difference | |
Submission Attempts per Minute Opponent Decayed Average Difference | |
Control per Minute Decayed Adjusted Performance Decayed Average Difference | |
Takedown Landing Decayed Adjusted Performance Decayed Average Difference | |
Win Decayed Average Difference | |
Knockdown Ratio Decayed Adjusted Performance Decayed Average Difference | |
Ground Strikes Landed per Minute Decayed Average Difference | |
KO per Minute Opponent Decayed Average Difference | |
Takedown Attempts Round 1 per Minute Decayed Adjusted Performance Decayed Average Difference | |
Distance Landing Round 1 per Minute Decayed Adjusted Performance Decayed Average Difference |

This curve shows how well the model's predicted probabilities align with actual outcomes. The closer to the diagonal line, the better calibrated the predictions.
Frequently Asked Questions
When do you post predictions?
Usually the day before or the day of the event.
How long have you been doing this?
About 4 years. Thousands and thousands of hours tuning, testing, and engineering. At this point I can absolutely chat your ear off about the intricacies of machine learning for sports prediction.
What is your background?
I was a hacker for about 15 years, now I'm an AI security researcher and engineer.
Where do you get the data?
Downloaded from various MMA stat sites. We start with 22 base stats like Strikes Landed and engineer those into 20,000+ stats. Then we cut those down to about 30-50 of the most influential, predictive stats based on both manual expertise and statistical analysis.
What is the betting strategy you use?
Due to analysis by Chris from Wolftickets.ai, it was discovered that the most profitable strategy for machine learning sports prediction models is to include the odds in the dataset so the model will achieve accuracy better than the bookies then use 2 to 3 leg parlays based on the predictions.
Why is this free?
IDK why not.
How do you pick the parlays?
I scrape fight stats, engineer a ton of features, cut those features down to the 10-20 that are the best, then use Autogluon in a chronological 80/10/10 train/val/test split so the last 10% of data is never seen by the model and all model evaluations are reflective of how well it did on that last 10% of data.
What algorithm do you use?
I use an ensemble of traditional machine learning algorithms. Gradient boosted algorithms, neural networks, tree-based algorithms, and others. This is not an LLM tool, there is no ChatGPT here although I am exploring that as well.
What was the hardest part of this project?
Feature engineering but especially feature selection. This is what separates MMA-AI.net from all other MMA prediction tools (besides wolftickets.ai who helped me with this part). First, more features =/= better results. Second, feature selection is an art that is dependant on domain expertise and ENDLESS testing.