Welcome to WebmasterWorld Guest from 54.226.62.26

Forum Moderators: open

Message Too Old, No Replies

How to Normalize User Ratings from 1 - 10 ?

     

NeedExpertHelp

8:49 pm on May 18, 2010 (gmt 0)

5+ Year Member



Hi,

I have a social networking site that allows users to rate pics from other users. Every rating is stored in a MySQL database.

For now, I've been computing the direct average, but those averages seem to be all over the place.

How can I normalize those ratings?

<snipped specifics>

Many thanks!

[edited by: whoisgregg at 5:05 pm (utc) on May 20, 2010]
[edit reason] Whoops, no URLs please. See TOS [webmasterworld.com] :) [/edit]

damon_cool

10:28 pm on May 18, 2010 (gmt 0)

5+ Year Member



"For now, I've been computing the direct average, but those averages seem to be all over the place."

What's the data look like, what does the result look like.

NeedExpertHelp

11:17 pm on May 18, 2010 (gmt 0)

5+ Year Member



"For now, I've been computing the direct average, but those averages seem to be all over the place."

What's the data look like, what does the result look like.
The average of all ratings is below a 5 and the top rated people have an average of below 6.

Some users just like to vote 1 or 10 (dislike / like), others are very harsh, others are quite lenient, some vote within a small range, others utilize the full scale, so it's all over the place which is why I think the scores need to be normalized.

The big sites do it, and now I know why. I just don't know *how* to do it. :)

Thanks!

damon_cool

6:43 pm on May 19, 2010 (gmt 0)

5+ Year Member



While starting out your site you might have a situation where you would have ratings that don't jive with your idea of how they should be.

You could drop the lowest 10% and the highest 10%

Or you could add in a fudge factor to bump up all ratings a little

Or you could use the Standard Deviation +1 or +2?

BillyS

6:53 pm on May 19, 2010 (gmt 0)

WebmasterWorld Senior Member billys is a WebmasterWorld Top Contributor of All Time 10+ Year Member



>>You could drop the lowest 10% and the highest 10%

I think that's called a trimmed mean, I don't think it would work in the case because he'd be throwing away 1s and 10s. The result would be even closer to 5/6...

BillyS

6:54 pm on May 19, 2010 (gmt 0)

WebmasterWorld Senior Member billys is a WebmasterWorld Top Contributor of All Time 10+ Year Member



Sorry for the second post, I just had an idea.

I think you could "normalize" the data by calculating how far the best rating was from the lowest rating. That then becomes your scaling factor.

whoisgregg

5:08 pm on May 20, 2010 (gmt 0)

WebmasterWorld Senior Member whoisgregg is a WebmasterWorld Top Contributor of All Time 10+ Year Member



You'll need to actually normalize each user's ratings first.

A person who always rates either 1 or 10 gets normalized where 1 = 3 and 10 = 6.
A person who rates in a narrow range (from 5-8 say) gets normalized where 5 = 2, 6 = 4, 7 = 6, 8 = 8.
A person who always rates 10 gets those converted to a 5.
etc.

Once you've normalized those, then you can get an accurate rating for each item.

serutan

3:57 pm on May 26, 2010 (gmt 0)

10+ Year Member



Why do you want to normalize the votes instead of just letting them fall where they may, like we do in real elections? One person might always blanket vote 1 or 10 without even looking. Those votes mean nothing, but another might only bother to vote when they really like or hate something. Those votes actually express a valid opinion. If you're going to change bunches of votes you might as well just "normalize" by rating all the pics yourself and ignoring the votes. Come to think of it, there are probably sites that do exactly that.
 

Featured Threads

Hot Threads This Week

Hot Threads This Month