Posted by Steve
Saturday, September 18, 2021 12:16 AM
Hey everyone! A few weeks ago, I built a machine learning model to predict the results of Masters 3 in Berlin. The was mainly for fun and the goal of the model was to sample realistic potential outputs rather than focusing only on the final prediction, but the predictions were suprisingly good. Here is a summary for the group stage predictions:
- Group A: Predicted 1. Vision Strikers, 2. Acend - spot on
- Group B: Predicted 1. Envy, 2. KRU - spot on
- Group C: Predicted 1. 100T, 2. Havan Liberty - close, predicted Gambit might struggle despite being favored, ended up sampling the upset, overvalued HL
- Group D: Predicted 1. Sen, 2. G2
I ended up sampling the knockout bracket from the group predictions, but since we have the actual bracket now, I wanted to rerun the model on that bracket for fun. Warning - the rest of the post will cover things I found interesting but will probably be a fairly long read. If you'd prefer to consume this content in video/podcast form, feel free to check out this video I made for it: https://www.youtube.com/watch?v=r1zI9o88efs. If you're interested in details of the model or the data I used, that will also be in the video, and I'll focus mainly on results moving forward.
The full results are here, which also have the group predictions: https://docs.google.com/spreadsheets/d/1gtSnJeQHepUajcc9ldmJaJXph3iSIa78PZ5g09-afbs/edit?usp=sharing.
In the overview tab at the very bottom, there is the bracket for the real knockout bracket. For those who can't open that sheet for whatever reason, the predicted final is Sentinels beating Vision Strikers 3-1. If you click the match details for any of the games, it will bring you to another tab in the sheet with sampled stats for the particular match. For example, for the Envy - Sen QF game, we have this for the first map:
Round Results
Split | Envy | Sentinels |
---|---|---|
Model Expected Results | 8.93 | 12.13 |
Model Sampled Rounds | 7 | 13 |
KDAs
Player | ACS | Kills | Deaths | Assists |
---|---|---|---|---|
NV yay | 141 | 8 | 11 | 3 |
NV Marved | 159 | 11 | 17 | 4 |
NV FNS | 155 | 11 | 18 | 6 |
NV crashies | 184 | 11 | 9 | 9 |
NV Victor | 153 | 9 | 18 | 7 |
SEN TenZ | 320 | 22 | 12 | 4 |
SEN zombs | 243 | 14 | 6 | 5 |
SEN ShahZaM | 131 | 8 | 10 | 4 |
SEN SicK | 239 | 16 | 11 | 6 |
SEN dapr | 192 | 13 | 11 | 7 |
Performances
TenZ | zombs | ShahZam | SicK | dapr | |
---|---|---|---|---|---|
yay | 4-5 | 0-0 | 1-2 | 2-3 | 1-1 |
Marved | 3-3 | 1-5 | 2-0 | 3-5 | 2-4 |
FNS | 0-5 | 1-3 | 5-3 | 1-5 | 4-2 |
crashies | 4-3 | 2-3 | 0-0 | 3-0 | 2-3 |
Victor | 1-6 | 2-3 | 2-3 | 2-3 | 2-3 |
While these samples aren't perfect by any means, I was quite impressed that the model was able to produce mostly realistic samples.
Another cool aspect about the model is that it learned player embeddings. For those unfamiliar with this term - think FIFA style stats that capture playstyles of different players, but where the categories are also learned from the data. A visualization of the embeddings can be found here: https://imgur.com/a/ErNEVlM.
The images in that link are 2d visualizations of the embeddings - the axes don't correspond to anything in particular but points close in the visualizations are players that the model thinks have similar playstyles. Here's what a basic kmeans clustering outputs (cluster number irrelevant):
- Cluster 3: TenZ, Asuna, yay, cNed, nukkye, russ, Izzy, DubsteP, f0rsakeN, d4v41, heat
- Cluster 7: zombs, koldamenta, AvovA, Brave, BORKU, Mmindfreak, ntk
- Cluster 5: ShahZaM, SicK, dapr, Ethan, Turko, v1xen
- Cluster 9: Hiko, nitr0, Marved, crashies, starxo, stax, zunba, Klaus
- Cluster 6: steel, FNS, Kiles, BONECOLD Redgar, Chronicle, Efina, Myssen, JhoW, delz1k, rion, Medusa
- Cluster 2: Victor, Lakia, BuZz, k1Ng, Rb, Bunny, NagZ, Munchkin
- Cluster 8: zeek, sheydos, nAts d3ffo, Mixwell, keloqz, fiveK, Witz, shion, neth, takej, Reita, Laz
- Cluster 0: pAura, shiba, pleets, barce, crow
- Cluster 4: dispenser, JessieVash, Benkai, liazzi, Other, murizzz
- Cluster 1: Esperanza, Mazino
If you got all the way to the bottom here, thanks for reading, and I hope we have a great knockout tourney ahead of us!
References
- https://www.reddit.com/r/VALORANT/comments/ppm0va/results_of_using_ai_to_predict_masters_3_berlin/
- https://reddit.com/ppm0va
More Like This
What skin do y'all hate if it's not upgraded?
Posted by Otto
Friday, September 30, 2022 7:29 PM
double shock split after rework b default
Posted by Otto
Saturday, January 23, 2021 4:50 AM
Butterfly knife in a battle pass?
Posted by Otto
Monday, November 14, 2022 1:00 AM