• Log InLog In
  • Register
Liquid`
Team Liquid Liquipedia
EST 01:23
CET 07:23
KST 15:23
  • Home
  • Forum
  • Calendar
  • Streams
  • Liquipedia
  • Features
  • Store
  • EPT
  • TL+
  • StarCraft 2
  • Brood War
  • Smash
  • Heroes
  • Counter-Strike
  • Overwatch
  • Liquibet
  • Fantasy StarCraft
  • TLPD
  • StarCraft 2
  • Brood War
  • Blogs
Forum Sidebar
Events/Features
News
Featured News
TL.net Map Contest #21: Winners11Intel X Team Liquid Seoul event: Showmatches and Meet the Pros10[ASL20] Finals Preview: Arrival13TL.net Map Contest #21: Voting12[ASL20] Ro4 Preview: Descent11
Community News
Weekly Cups (Nov 3-9): Clem Conquers in Canada1SC: Evo Complete - Ranked Ladder OPEN ALPHA3StarCraft, SC2, HotS, WC3, Returning to Blizzcon!45$5,000+ WardiTV 2025 Championship7[BSL21] RO32 Group Stage4
StarCraft 2
General
SC: Evo Complete - Ranked Ladder OPEN ALPHA Weekly Cups (Nov 3-9): Clem Conquers in Canada Mech is the composition that needs teleportation t Craziest Micro Moments Of All Time? RotterdaM "Serral is the GOAT, and it's not close"
Tourneys
Constellation Cup - Main Event - Stellar Fest Tenacious Turtle Tussle Sparkling Tuna Cup - Weekly Open Tournament $5,000+ WardiTV 2025 Championship Merivale 8 Open - LAN - Stellar Fest
Strategy
Custom Maps
Map Editor closed ?
External Content
Mutation # 499 Chilling Adaptation Mutation # 498 Wheel of Misfortune|Cradle of Death Mutation # 497 Battle Haredened Mutation # 496 Endless Infection
Brood War
General
FlaSh on: Biggest Problem With SnOw's Playstyle BW General Discussion BGH Auto Balance -> http://bghmmr.eu/ [ASL20] Ask the mapmakers — Drop your questions Where's CardinalAllin/Jukado the mapmaker?
Tourneys
[Megathread] Daily Proleagues [ASL20] Grand Finals [BSL21] RO32 Group A - Saturday 21:00 CET [BSL21] RO32 Group B - Sunday 21:00 CET
Strategy
Current Meta PvZ map balance How to stay on top of macro? Soma's 9 hatch build from ASL Game 2
Other Games
General Games
Nintendo Switch Thread Stormgate/Frost Giant Megathread Should offensive tower rushing be viable in RTS games? Path of Exile Dawn of War IV
Dota 2
Official 'what is Dota anymore' discussion
League of Legends
Heroes of the Storm
Simple Questions, Simple Answers Heroes of the Storm 2.0
Hearthstone
Deck construction bug Heroes of StarCraft mini-set
TL Mafia
TL Mafia Community Thread SPIRED by.ASL Mafia {211640}
Community
General
Russo-Ukrainian War Thread Things Aren’t Peaceful in Palestine US Politics Mega-thread Canadian Politics Mega-thread The Games Industry And ATVI
Fan Clubs
White-Ra Fan Club The herO Fan Club!
Media & Entertainment
[Manga] One Piece Anime Discussion Thread Movie Discussion! Korean Music Discussion Series you have seen recently...
Sports
2024 - 2026 Football Thread Formula 1 Discussion NBA General Discussion MLB/Baseball 2023 TeamLiquid Health and Fitness Initiative For 2023
World Cup 2022
Tech Support
SC2 Client Relocalization [Change SC2 Language] Linksys AE2500 USB WIFI keeps disconnecting Computer Build, Upgrade & Buying Resource Thread
TL Community
The Automated Ban List
Blogs
Dyadica Gospel – a Pulp No…
Hildegard
Coffee x Performance in Espo…
TrAiDoS
Saturation point
Uldridge
DnB/metal remix FFO Mick Go…
ImbaTosS
Reality "theory" prov…
perfectspheres
Customize Sidebar...

Website Feedback

Closed Threads



Active: 1930 users

GSL Code S Membership statistical analysis - Page 2

Forum Index > StarCraft 2 Tournaments
Post a Reply
Prev 1 2 3 Next All
Plutonium
Profile Joined November 2007
United States2217 Posts
Last Edited: 2010-12-10 08:16:53
December 10 2010 07:14 GMT
#21
I understand that you do not have the data required to separate between failing to qualify and not registering. All I'm suggesting is that you at least attempt to compensate for that, instead of trying to handwave it away.



Koshi
Profile Blog Joined August 2010
Belgium38799 Posts
Last Edited: 2010-12-10 07:30:37
December 10 2010 07:29 GMT
#22
Data is just data. People should stop trying to find holes or errors in raw data.

I always appreciate any sort of data collecting. I always check first if it is legit, and the Bayesian Bradley-Terry model is. Then I just read it as it is presented, and remember the things that seem useful.

Do not forget that data is always misleading and sometimes even misrepresented. Just try to gather as much as possible and compare.
I had a good night of sleep.
Mip
Profile Joined June 2010
United States63 Posts
Last Edited: 2010-12-10 07:40:05
December 10 2010 07:38 GMT
#23
@Plutonium The model is not a problem at all and the results are not all that flawed. The Bradley-Terry model is ideally suited for this kind of data, there's no issue with that. You're not truly complaining about the model either, what I'm hearing from you is a complaint about the data, and that is not something that I have control over.

I don't even know why this is such a issue for you. We are talking about the same assumption that is built into the current ranking system. They give no points for any round prior to the Ro64 and they make no attempt to adjust for it for their rankings, they believe that only the Ro64 onward is rank-worthy, and because I have no data other than what they give me, I inherit that assumption implicitly by the data that is available, and there is nothing I can do about that.

This isn't even a tremendous problem like you are trying to claim it is. There are a couple players that it affects adversely, I'll give you that, but all the top players are ranked appropriately with reasonable skill levels estimated for each. It's not a greater problem than what the point system imposes though, so there's no loss as compared to the current alternative.

There is no feasible way for me to even gather data on >100 players that played in the 3 seasons. There is no central source to find which players didn't sign up, and which players failed to qualify. So even if I wanted to make your irresponsible arbitrary data additions, I could not do so. If you'd like to start making house calls to all the players to find out which tournaments they played in, then we can start to talk about measuring that sort of effect.
nath
Profile Blog Joined May 2010
United States1788 Posts
Last Edited: 2010-12-10 07:48:02
December 10 2010 07:43 GMT
#24
love how people who don't know shit are talkin to this kid. he used a good model that has good results. people complaining about the data have to realize that the data gets better and better...

also whoever talked about jinro 'trying the other two times, he entered more than once' LOL its clearly only ro64 and beyond...theres nothing about qualifications in this model.

gj man I love the model you chose; am not a stats major but i've worked with a lot of statistical methods in research and i liked what you did.

On December 10 2010 16:14 Plutonium wrote:
Talk all the statistical academics you want, It doesn't change the fact that your results are massively flawed by your unsound assumptions.

This took a lot of work, and I applaud you for that. However, your model is wrong.

I understand that you do not have the data required to separate between failing to qualify and not registering. All I'm suggesting is that you at least attempt to compensate for that, instead of trying to handwave it away.




He doesn't want to take that into account; it would cause more problems. Better to let the issue resolve itself over time as more data is collected than untwist your panties.
Founder of Flow Enterprises, LLC http://flow-enterprises.com/
Mip
Profile Joined June 2010
United States63 Posts
Last Edited: 2010-12-10 08:10:28
December 10 2010 07:51 GMT
#25
To all supportive people, thank you guys, you guys are awesome.

@skipgamer Let me clarify what I mean by, "Not ideally suited for prediction." What I mean is that I only gathered data on the GSL.

If I wanted to get prediction accuracy, I should gather as many outside tournaments as I can do add that data to the GSL data so that I have as much information about each player as possible.

On the other hand, if I want to do a fair ranking system for just the GSL (which is so far what I've been after). I absolutely must base my results only off of GSL data. So when I created these results it's under the context of, "Let's only rate these players based off of their GSL performance."

The next step is to pull in more data, and since no one has volunteered to help me yet, it might be a slow process. When I have all possible available data, then we can start talking in terms of "ideal prediction accuracy" (ideal according to our current state of knowledge anyway).

People keep calling these results "inaccurate." That may have some truth to it, but against the benchmark of the GSL point system, these results are at worst on par with that, so I really wouldn't worry about that at this point. The model and methodology are sound and the accuracy of the results will get better as more data comes in.

-----------------------------------------------------------------------------

Think about what we're trying to do, we have a bunch of progamers and they are all playing SC2. We want to know, what is their skill level, how do their compare to the other players?

Well we can't go measure their skill level directly. It's not something I can go stick a ruler on or anything. What I can see is what happens when they play a game. I can see whether they win or lose. This will provide hints at their skill level.

Take season 2 for example, We know FruitDealer is amazing because he won Season 1. FruitDealer loses to Foxer in Ro32, that's going to tell me that Foxer is at least skillful enough to beat FruitDealer, which is quite substancial. Then Foxer goes on to lose against NesTea in a nearly dead even match. That's going to hint toward thinking Foxer and NesTea are about at the same level.

When you take all the data together, you'll get hundreds of hints about how the players compare to each other. You'll still be uncertain exactly how much different their skills are from each other, but you should have an idea.

In simplistic terms, that is how this model is working, the wins and losses point toward the skill that that player has compared to who they are playing with.

So the issue with not having pre-Ro64 data is that everyone who losses in early rounds may get unfairly ranked downward because there's no data showing that they won their way through the Ro128, Ro256, etc. This is a real problem for players like IdrA and JookToJung like we've said before, but there's no available data to fix it. I'm sure someone at GomTV has it, but it's not publicly available.
Plutonium
Profile Joined November 2007
United States2217 Posts
Last Edited: 2010-12-10 08:09:37
December 10 2010 07:55 GMT
#26
I'm talking to my roomate who's a biostatistician and an avid GSL watcher.

He's taken a look at your data and analysis and assures me that everything you say is correct, and that I am "so wrong".

However, he says that releasing this data can be misleading because us people are stupid and don't understand what you're doing.

A few key points he makes:

1) The amount of uncertainty in this analysis needs to be emphasized. The results are going to be extremely noisy, and these results should not be taken too seriously.

2) Saying that not making it to the Ro64 and not registering is an acceptable assumption, given that we do not know this data.

3) It would be nice to "reward" those who qualify for the Ro64 multiple times. How much you reward this, however, is unclear. There are mechanisms for this - increasing initial means and reducing standard errors. However, the question is what values should be assigned to this, unless one wants to be more arbitrary about it.

4) He then starts talking reaching these values by integrating the chances of getting in to the Ro64 for GSL1,2, & 3, and using that data to create initial skill levels for players. This is a tricky proposition, and it may overcomplicate the model.
Hazuc
Profile Joined August 2010
Canada471 Posts
December 10 2010 07:57 GMT
#27
I'm currently studying actuarial science so this kind of stuff really interests me. Keep up the good work.
roadrunner343
Profile Joined November 2010
148 Posts
December 10 2010 08:06 GMT
#28
I just wanted to join in with the haters and tell you that this is not a perfect algorithm.

On the serious side, you already knew that (And admitted it) and I applaud the work you've done and love the data. Obviously we can't take it as 100% truth, but it gives us a lot of good data to work with. Thanks.
Mip
Profile Joined June 2010
United States63 Posts
Last Edited: 2010-12-10 08:35:23
December 10 2010 08:28 GMT
#29
@Plutonium They are not giving me a master's degree in "sucking at statistics" so I would trust me. =)

But yeah, since posting these last two threads, I've definitely experienced people misunderstanding me. It's hard to be perfectly clear on a forum where you kind of have to throw it all out there to see what people do and do not understand right away and what things need to be clarified, especially when I mostly converse with people who have been working for years on the same educational course that all speak the same language as me, so to speak.

When I came up with this idea, I thought it would be a good way to show much uncertainty there is in the model, it's like yeah, Jinro is awesome, but based on what we know about him from the data, there's a 25% chance that he might not actually be in the Top 32 best players in our pool. Maybe we'll know better the match that starts in an hour and a half =). Compare this to NesTea, where we think that there's a 1 in 200 chance than he might not actually be in the top 32, because he's won games against top players across multiple seasons.

The beautiful thing about Bayesian statistics is you can actually speak in the language of probability unlike in classical statistics where we speak in terms of meaningless confidence intervals.

In the data for this post, when you look at that spreadsheet, you can say that based on our current state of knowledge, assuming the model with it's assumptions (everyone cringe a little bit at the assumptions), we can say that Player Whoever has a whatever % chance of being in the top 32 most skilled.

Then you look over the list and say, "But player X doesn't have a %20 chance of being top 32." and to you I say, "You're probably right, but the data doesn't know that." The data doesn't troll the TL forums analyzing the crap out of everyone's play, it just considers the wins and losses that it's given.

Once the GSL gets going with Code S tournaments, we will see a great refinement in our estimates for all Code S players, because we will get so much data about each of them because all tournaments will feature them.
Mip
Profile Joined June 2010
United States63 Posts
December 10 2010 09:05 GMT
#30
Sometime this weekend or early next week I'll post my finals predictions, though I expect it will be somewhere close to 50/50, =).
Skytalker
Profile Joined October 2010
Sweden671 Posts
December 10 2010 09:27 GMT
#31
Keep the awesome work up! Add data! :D
Jaedong HWAITING!
Mip
Profile Joined June 2010
United States63 Posts
December 10 2010 11:25 GMT
#32
So, just watched the GSL. It was... awesome, I guess. I thought I'd throw in the new data and calculate probabilities for the final. If they were interesting I was going to make a new thread. Instead, here they are:

+ Show Spoiler +

Names ProbWinFinal
1 Rain 0.5055279
2 MC 0.4944721

Yeah, so how do you like that, 50/50, the data has no idea who to favor for these two. Had it been NesTea instead of Rain, it would give only a 35% chance to MC, but vs Rain, a dead even split. So go flip your coin, Heads bet Rain, Tails bet MC

roadrunner343
Profile Joined November 2010
148 Posts
December 10 2010 11:47 GMT
#33
Sorry if this is a retarded question, but I have no clue about statistics so...

Is there anyway to make the algorithm take which race they are playing into account? For example, I'm sure some pros have much higher win rates against certain races than others. Is this simply impossible, way too much work, or is it doable? Either way, I like your spreadsheet.
hybridsc
Profile Joined November 2010
United States63 Posts
December 10 2010 12:56 GMT
#34
You put TheWind in there twice, and also he is an S-class player if i recall correctly.
greycubed
Profile Joined May 2010
United States615 Posts
December 10 2010 13:34 GMT
#35
Same thing but with race color coding- https://spreadsheets.google.com/ccc?key=tH96B6ipTE7zgBFcbZ2MTAw&authkey=CPOA28ME#gid=0
http://i.imgur.com/N3ujB.png
GeorgeForeman
Profile Joined April 2005
United States1746 Posts
December 10 2010 13:44 GMT
#36
The real problem with the spreadsheet is that you don't list any error estimates. You can state assumptions all you want, but good statistical analysis of any type, Bayesian or Frequentist necessarily includes error estimates. If you as a statistician (or someone performing statistical analysis) doesn't give error estimates, there's little difference between what you're results and that of a strip mall psychic.
like a school bus through a bunch of kids
confusedcrib
Profile Blog Joined August 2010
United States1307 Posts
Last Edited: 2010-12-10 13:50:50
December 10 2010 13:48 GMT
#37
I think it's too early to be using algorithms to determine the best player, 3 GSLs and an unfigured out game mean anyone could do well. Idra once said "anyone in the top 32 could win the tournament" and he's a neigh sayer. But this may pan out over time, keep on it. And I agree with the above poster, is there any way you could implement a 2 sample Z-test or T-test and determine which player may be better than another, and do rankings that way?
I'm a writer for TeamLiquid, you've probably heard of me
Mitosis.
Profile Joined November 2010
Sweden16 Posts
December 10 2010 17:45 GMT
#38
Not sure if this is a recurring problem, but TheWind is listed at 0.5529 and not qualifying. At the same time there is a player at the bottom named "TheWinD" listed with only 0.0438 and marked as qualifying. I assume this is a glitch?
aristarchus
Profile Blog Joined September 2010
United States652 Posts
December 10 2010 18:39 GMT
#39
Suggestion for fixing the failing to qualify/not registering problem:

Why not add another fake player, something like "average person who lost in the final round of qualifying." Anytime someone qualified, give them a win over that player. Anytime they failed, give them a loss. It might be better to use a different fake player for each season, since the qualifying pool's difficulty presumably changed.

Obviously that wouldn't be ideal, but it might be less bad than ignoring the qualifying rounds entirely. (I have a math background, but no stat, so I trust your judgement, but thought I'd throw out the suggestion.)
Mip
Profile Joined June 2010
United States63 Posts
December 10 2010 20:46 GMT
#40
@roadrunner343 Yes, there is, it's not even difficult, I just add a couple terms to the model. I just need the proper data. In my other thread (linked to in the first post of this one), I go into what format my data is in currently and then later in the thread say what format I'd like it in. As soon as someone helps me get it in that format, or when I get around to doing it myself, race-matchups will be adjusted for and we can start talking about race advantages, and even map-race advantages, that will be a much more exciting discussion I think.

At the end of the day, I think I'm much more interested in how the races and maps are balanced than which players seem to be better right now.

@enjoyx and Mitosis Thanks for pointing that out, it's a pain in the butt to catch all of those. The TL brackets are inconsistent about how the capitalize names and whether or not their include clan tags etc. and it's caused a lot of players to get split into two people. I wish I had a data source that had data that didn't need cleaning, but alas no.

@GeorgeForeman and confusedcrib I'm glad you paid attention in your intro stats classes, but in Bayesian statistics, you can integrate over the uncertainty in your estimates to obtain a single number that takes into account all of the uncertainty you have in your estimate. We can say with Bayesian statistics that based on our current state of knowledge (priors + data provided) that the probability of Player X actually being Top 32 is Y%.

That you would bring up a t-test for this model immediately puts you at an intro stats level in my brain. Your instinct is correct for that level of stats knowledge, but in this case, it should not be a concern to you. You should think of those percentages in terms of what I described at the end of the paragraph above.

However, to appease you guys, I added a column of Standard Errors. If you are using your intro stats knowledge,however, you will misinterpret them because they mean different things if your data are not from a normal/gaussian distribution.

For a binary outcome, the variance is prob * (1 - prob), and then the standard error is the square root of that, but you have to throw away any thoughts that, for example, 3 standard errors gives you a confidence interval or any nonsense like that that you are taught in intro stats. For example, for NesTea, if you tried to do that, you'd get a confidence interval that included probabilities greater than 1. To do it properly, you'd have to convert to a odds ratio, compute confidence intervals, then convert back to a probability metric.

@aristarchus I could definitely make an indicator variable adjustment for that problem, but I don't even have data on who registered and didn't qualify vs who didn't register. Some of the players it's easy to find that information, like if they are on a major team, the liquidpedia site has all that. But for the less known people, I don't even know where to look, and I really don't want to look in a hundred different places to track down that information because if I start, I don't know that I can find everyone, and if I can't find everyone, who whole thing is a waste.
Prev 1 2 3 Next All
Please log in or register to reply.
Live Events Refresh
Next event in 5h 37m
[ Submit Event ]
Live Streams
Refresh
StarCraft: Brood War
Shuttle 930
Tasteless 268
ToSsGirL 36
Icarus 12
League of Legends
JimRising 573
Counter-Strike
Coldzera 472
Super Smash Bros
hungrybox441
Other Games
summit1g15797
C9.Mang0108
NeuroSwarm50
Organizations
Other Games
gamesdonequick719
StarCraft 2
Blizzard YouTube
StarCraft: Brood War
BSLTrovo
sctven
[ Show 13 non-featured ]
StarCraft 2
• Berry_CruncH187
• AfreecaTV YouTube
• intothetv
• Kozan
• IndyKCrew
• LaughNgamezSOOP
• Migwel
• sooper7s
StarCraft: Brood War
• BSLYoutube
• STPLYoutube
• ZZZeroYoutube
League of Legends
• Scarra1803
• Stunt536
Upcoming Events
WardiTV Korean Royale
5h 37m
OSC
10h 37m
Replay Cast
16h 37m
Replay Cast
1d 2h
Kung Fu Cup
1d 5h
Classic vs Solar
herO vs Cure
Reynor vs GuMiho
ByuN vs ShoWTimE
Tenacious Turtle Tussle
1d 16h
The PondCast
2 days
RSL Revival
2 days
Solar vs Zoun
MaxPax vs Bunny
Kung Fu Cup
2 days
WardiTV Korean Royale
2 days
[ Show More ]
PiGosaur Monday
2 days
RSL Revival
3 days
Classic vs Creator
Cure vs TriGGeR
Kung Fu Cup
3 days
CranKy Ducklings
4 days
RSL Revival
4 days
herO vs Gerald
ByuN vs SHIN
Kung Fu Cup
4 days
BSL 21
4 days
Tarson vs Julia
Doodle vs OldBoy
eOnzErG vs WolFix
StRyKeR vs Aeternum
Sparkling Tuna Cup
5 days
RSL Revival
5 days
Reynor vs sOs
Maru vs Ryung
Kung Fu Cup
5 days
WardiTV Korean Royale
5 days
BSL 21
5 days
JDConan vs Semih
Dragon vs Dienmax
Tech vs NewOcean
TerrOr vs Artosis
Wardi Open
6 days
Monday Night Weeklies
6 days
Liquipedia Results

Completed

Proleague 2025-11-07
Stellar Fest: Constellation Cup
Eternal Conflict S1

Ongoing

C-Race Season 1
IPSL Winter 2025-26
KCM Race Survival 2025 Season 4
SOOP Univ League 2025
YSL S2
BSL Season 21
IEM Chengdu 2025
PGL Masters Bucharest 2025
Thunderpick World Champ.
CS Asia Championships 2025
ESL Pro League S22
StarSeries Fall 2025
FISSURE Playground #2
BLAST Open Fall 2025
BLAST Open Fall Qual

Upcoming

SLON Tour Season 2
BSL 21 Non-Korean Championship
Acropolis #4
IPSL Spring 2026
HSC XXVIII
RSL Offline Finals
WardiTV 2025
RSL Revival: Season 3
META Madness #9
BLAST Bounty Winter 2026
BLAST Bounty Winter 2026: Closed Qualifier
eXTREMESLAND 2025
ESL Impact League Season 8
SL Budapest Major 2025
BLAST Rivals Fall 2025
TLPD

1. ByuN
2. TY
3. Dark
4. Solar
5. Stats
6. Nerchio
7. sOs
8. soO
9. INnoVation
10. Elazer
1. Rain
2. Flash
3. EffOrt
4. Last
5. Bisu
6. Soulkey
7. Mini
8. Sharp
Sidebar Settings...

Advertising | Privacy Policy | Terms Of Use | Contact Us

Original banner artwork: Jim Warren
The contents of this webpage are copyright © 2025 TLnet. All Rights Reserved.