Fixing Steam's User Rating Charts
lars_doucet writes: Steam's new search page lets you sort by "user rating," but the algorithm they're using is broken. For instance, a DLC pack with a single positive review appears above a major game with a 74% score and 15,000+ ratings.
The current "user rating" ranking system seems to divide everything into big semantic buckets ("Overwhelmingly Positive", "Positive", "Mixed", etc.), stack those in order, then sort each bucket's contents by the total number of reviews per game. Given that Steam reviews skew massively positive, (about half are "very positive" or higher), this is virtually indistinguishable from a standard "most popular" chart.
Luckily, there's a known solution to this problem — use statistical sampling to account for disparate numbers of user reviews, which gives "hidden gems" with statistically significant high positive ratings, but less popularity, a fighting chance against games that are already dominating the charts.
The current "user rating" ranking system seems to divide everything into big semantic buckets ("Overwhelmingly Positive", "Positive", "Mixed", etc.), stack those in order, then sort each bucket's contents by the total number of reviews per game. Given that Steam reviews skew massively positive, (about half are "very positive" or higher), this is virtually indistinguishable from a standard "most popular" chart.
Luckily, there's a known solution to this problem — use statistical sampling to account for disparate numbers of user reviews, which gives "hidden gems" with statistically significant high positive ratings, but less popularity, a fighting chance against games that are already dominating the charts.
http://www.evanmiller.org/how-... This was linked before on slasdot IIRC. This is basically a blog post saying "hey this can be used on steam too, not just amazon!"
Like all things Valve does on Valve Time, Steam is _slowly_ getting better so I'd imagine this will get fixed ... eventually.
At least we can give a thumbs up or down to games. The ability to write reviews takes advantage of the best kind of marketing:
Word of Mouth.
It's really too bad the way Valve has screwed the pooch with Steam over the last few years. They literally had The gaming platform for PC all locked up. There was a time where I was desperately hoping they'd have an IPO so I could invest. But they tried to make the store so user friendly to Game controllers... a use case that may very well never become popular... that it's almost useless. Now, the only reason I think they are still relevant is because no one has bothered to try and challenge them. But I think they are 1 clever startup away from losing their position for good.
There are games on steam to this day, that I cannot find... even using Google searches with the site:steampowered.com modifier. I have to go to the damned games external website and use their link to get to the thing I want to buy. I want to buy it and Steams own search doesn't bring it up because their search algorithm is so broken. I try to browse games and it limits what I can browse to a few dozen. Yet, when I go back 2 days later, its the same few dozen... why doesn't it just show me game after game until I've seen them all? There are over 4000 games on Steam!!
And you know... I know what people are going to reply to me with... "You didn't click X!" or "You moron, you have to go to the blah page!" or whatever... I'm sure it's entirely my fault for not knowing how to do it right. But let me tell you something... the biggest moron on the planet can walk into Walmart and leave with less money. That's the key to their success. You cannot enter a Walmart and avoid seeing something you need to buy today. You don't have enough money? No worries there's a god damned bank on premises to give you a loan! It's easy to find something you like, it's easy to get it to the register and its easy to get it to your car.
Why Valve? Why is it so god damned hard to give you my money?!?! I can go on the google play store and spend money with one damned finger! My 4yr old spent $20 on Angry birds slingshots before my wife locked her phone. He couldn't even figure out how to launch a game from your damned app!
As a developer with a title on Steam, I can say ratings are just 1 of many issues with the store.
I can't tell you how many support tickets I have to go through because steam can't properly launch or update the main binaries that are covered under their drm. Most of the time it's AV issues, but once in a blue moon it's steam borkin' out. (0.25-0.5% of sales)
In the backend specific game information can't be shown to specific users. So I'm locked out of my real time statistics because my publisher has other titles from other developers...
But the worst, the god awful worst, are games on Early Access that are pure shit or have been abandoned... They drag the entire system down and majorly screw over legitimate titles that are in Early Access. IMO Steam should have a purging system for these titles. Perhaps even give coupon codes to users who bought games that have been purged.
As for the rating system. It definitely needs to be weighted. But there should also be incentive to give a ratings (even if they give a review anything) and there should be at least a "maybe" option. The thumbs up/thumbs down system doesn't really do it for me. Specially since I have negative ratings on my project such as "Game needs a German translation. 5/10" :\
If the only two choices are positive/negative (or thumbs up/thumbs down or some other equivalent 0/1 scheme), here's a formula that should work fairly well:
(n_positive + 1) / (n_positive + n_negative + 2)
So a single positive review gives you a score of .6667, and a single negative review gives you .3333. For large numbers of reviews, the score quickly converges to the actual fraction. If you don't have any reviews, you are at .5000.
The mathematical justification for this formula is that if you try to use a Bayesian approach to estimating the true probability of getting a positive review, and you start with a flat prior, this formula gives you the average of the posterior probability after observing the given number of positive and negative reviews. The full posterior distribution is a beta distribution with parameters alpha=n_positive+1 and beta=n_negative+1.
This formula is often used when applying Monte Carlo techniques to the game of go. I believe a lot of programmers simply start the counters of wins and losses at 1 to avoid corner cases (like division by 0), and they accidentally use the correct formula.
Actually the problem they are wrestling with here is one that has science has had to deal with for a long time: the uncertainty on a measurement. The star ratings are a measure of the popularity of a game so what you are really asking is "given the ratings it received which game is best?".
Unfortunately with a finite statistical sample you always have some degree of uncertainty and, within this uncertainty your data does not provide any ranking at all: you simply do not know which game is best to any sensible degree of certainty. However while correct this would lead to really confusing rankings since to be fair you would need to randomize the order within the uncertainty of each game's score. This would be complex and confusing to users!
Instead what they suggest is using a confidence level limit: what score can I be confident that 95% of people would rate the game higher than? We do this all the time in particle physics when we put limits on some new physics which we looked for an did not see. For example the precursor to the LHC, LEP had a result that it was 95% confident that the Higgs boson had a mass higher than 116 GeV/c2 (IIRC). There are better ways to do this than the method they quote but since this is just a game rating and not science it's a fine method to use.
The said comment is complete and utter bullshit. When he did his Guns of Icarus thing with other people, he always disclosed it in video description. After some desperate gamasutra folks (who notably have massive vested interest in sinking Bain, NerdCubed and a couple of other big youtube gaming commentators, because they have been massively eating into their audience numbers) started whining that disclosure in video description was not enough (according to the laws, yes it is), he added a short message to the beginning of every such video where he states any potential sources of interest he may have, down to having received a review copy.
Notably, gamasutra itself does not do this, and has been central to the whole gamergate scandal which revolves exactly around this kind of acting, only with gamasutra folks not disclosing their conflicts of interest anywhere. Not in descriptions, not in topics, not in articles. Nowhere.
Frankly, Bain goes to ridiculous lengths to disclose any potential conflict of interest he has nowadays, to the point of holding 3-hour talk marathons with developers (including CEO of the company that bought the sponsored content you talk about) and games media journalists partially on this topic and then puts those on his channel:
https://www.youtube.com/watch?...
If you really care about the issue, join #gamergate and go after people who actually do this crap.
Yep there's one about it!
It made me not get very enthusiastic about app stores and such.
I've noticed one big difference between the "professional" reviews on major sites and user reviews on Steam/Amazon etc.
By and large, the professional game reviews tend to cluster their scores in the 6/10 - 8/10 range. You have to be exceptionally good to get above that level or exceptionally bad to fall below it. You also - in most cases - get relatively little variation between professional review scores. A game might be 8/10 on one site and 9/10 on another, but it is rare to see a gap larger than 2 or at most 3 points. It does happen - Alien Isolation has had professional reviews ranging from 4/10 to 10/10 - but generally only with unusual games that go outside the usual templates (like Alien Isolation).
User reviews on the other hand, tend to be much more polarised. It's by no means unusual for games to pick up 10/10s from some users and 1/10s for another. Personal biases are much more likely to feature in user reviews ("I'm giving this game a 1/10 because I don't like something the developer said on twitter" or "I'm giving this game a 10/10 because I've spent the last 2 years boring everybody rigid about how good it is going to be and don't want to backtrack"). Often, the scores tend to average out in more or less the same place as the professional reviews once you have enough of both, but with much more divergence on the user reviews.
So which is more useful?
By and large - and with some important caveats - I find the professional reviews more honest and useful. A lot of people complain about the clustering of scores in the 6/10 to 8/10 range, but the nature of the modern games industry (quite risk-averse, with a lot of project oversight) means that most commercially produced games tend to fall into that range. If you assume a 6/10 is "not great, but overall more good than bad" and an 8/10 is "high enjoyable but not ground-breaking", then you're left with a spectrum into which most major releases fit. The industry does throw out the occasional piece of brilliance - which is usually recognised. And sometimes, things go wrong and it throws out the odd turkey (Aliens: Colonial Marines being perhaps the most recent example). When those things happen, most of the big review sites do seem to reflect them.
But those caveats I mentioned before are important. The first is that at the end of the day, the people doing the professional reviews are still human and they still have their own biases, preconceptions and agendas. True, they have people watching them to make sure that they don't give free reign to those... but occasionally, those checks and balances fail. In fact, most of the big review sites have a few known quirks that you learn to watch for. Eurogamer, for instance (which despite the criticism I'm about to hand out, I do, in general, rate highly), has a real Nintendo-nostalgia fetish and a habit of over-scoring first party Nintendo games. At the same time, until fairly recently, it went through a phase of trying to shoehorn political correctness into its reviews and marking down a few games which committed real or perceived transgressions (though I've noticed less of this recently).
The next big caveat with professional reviews is around bugs. The big review sites are often given pre-release copies of games, so that the reviews can go live before release. Indeed, a lack of pre-release reviews is often an early sign that a game will be a turkey (again... Aliens: Colonial Marines had a review embargo until its release day). Thing is, sometimes those review copies are unfinished code. And sometimes they aren't. But regardless, there is a tendancy for professional reviewers to either ignore or to be instructed to ignore bugs, on the basis that "they'll be fixed for release". And, surprise surprise, they often aren't fixed for release. User reviews are often your first warning that a game is a buggy mess - though on PC you do have to try to separate out the inevitable complaints that pop up on every new release's forms to the effect that "it won't run on my 8 year old PC running a
And in case you're actually interested: here's the current status of the boycott campaign known as #gamergate:
https://gitorious.org/gamergat...
12 mysogynist kids apparently have indeed moved on. The >12.000 adults pissed off at utter lack of ethics and betrayal by people they expected to stand by them and their hobby on the other hand are just getting started.
It's not an algorithm, except in the trivial sense. It's a formula for calculating an adjusted rating value that discounts extreme ratings for items with small numbers of reviewers.
This actually matches what you do intuitively when you see an item with a single rating of 5.0 at the top of a list, just above another item with an average rating of 4.9 from a thousand users. You mentally deduct a bit from the "top rated" item because you know it's probably too high. Likewise a 1.0 rating from a single user is probably too low, so you mentally add a bit to that.
The question is, how much to deduct or add from the score?
The approach suggested is to ask a slightly different question. Instead of "what is the average rating of the product", you ask "what percentage of positive ratings can I be 95% certain the product would score above have if *everyone* rated it?" It turns out there's a number of mathematical formulas that are supposed to tell you precisely that.
There's still a lot of arbitrariness in this approach. Why 95%? I'm reasonably sure that results would be just as intuitively reasonable if we chose 80% instead. But if 95% seems to generate intuitively reasonable results there's no particular reason to monkey with that parameter.
BUT, I think, the level of arbitrariness involved probably means we could choose a simpler approximation than the Wilson interval if we could dream one up. The more familiar Wald interval taught in basic statistics courses is somewhat simpler, but not so much that it's worth worrying about, at least not if you're doing the calculation on a database server which typically has a few CPU cycles to spare.
If I were to attempt something like this on a massive scale in an environment where CPU cycles were precious, I'd probably devise some kind of simple algebraic scaling formula that tweaked scores toward the mean, depending on the number of ratings. The results wouldn't be quite as good as the Wald or Wilson intervals, but maybe not so much less good that anyone would notice.
Post may contain irony: discontinue use if experiencing mood swings, nausea or elevated blood pressure.
Because this method returns a ranking that seems more intuitively "right"?
It's worth asking why that should be. Think about a rating scale of one to four stars. What does *averaging* those ratings mean? Yes, I know the *formula* for computing an average, but being able to *compute* an average isn't the same thing being able to *interpret* that average. Why? Because a two star rated item isn't really "twice as good" as one star, a four star rating isn't really "four times as good" as a one star or "twice as good" as a two star. In other words we're not measuring something like height, or number of widgets sold. We're *characterizing* something as shit, meh, OK, or awesome.
The method proposed is more mathematically defensible. It converts each 1 to 4 score into a coin flip (Bernoulli process for you probability geeks): positive or negative. This actually captures what the rating system does better than treating the ratings as meaningful numbers.
This doesn't automatically mean you'll get more intuitively pleasing results than using weighted averages; YMMV. But I think this system is bound to give more *consistently* intuitive results across applications and datasets. Weighting the average is an easy, but extremely arbitrary operation. As a compromise you might come up with a formula to tweak the score *toward the mean* depending on how few reviews there were; by adjusting the parameters you use you could probably get that formula to yield an intuitively satisfying ranking. The advantage of using a confidence interval as suggested is that approach is highly likely to yield a reasonable result out of the box, across a wide variety of datasets.
And after all, even if it looks like a "hot mess" to people who haven't taken advanced statistics, how hard is it to copy and paste a bit of code?
Post may contain irony: discontinue use if experiencing mood swings, nausea or elevated blood pressure.