How would YOU compute IMDB movie rating?
Asked Answered
D

2

5

I'm doing this only for learning purposes. I've no intentions of reversing the methods of IMDB.

I asked myself I owned IMDB or similar website. How would I compute the movie rating?

All I can think of is Weighted Average(which is nothing but Arithmetic Mean)

For a movie data provided below computation would be

(38591*10 + 27994*9 + 32732*8 + 17864*7 + 7361*6 + 2965*5 + 1562*4 + 1073*3 + 891*2 + 3401*1) / 134434 = 8.17055953

alt text


My rating 8.17055953 doesn't match with IMDBs rating (=weighted average). So my conclusion is I'm missing something here or my score is not an ideal score. I'm might be missing lot of things.

  1. Whats wrong with my score? Why is it not ideal?
  2. If you had to compute. How would you have done it?
Disremember answered 15/9, 2010 at 12:36 Comment(1)
Everyone: claws is not asking about the ranking mechanism for the Top/Bottom listing. This question is about how IMDb turns the arithmetic mean into the weighted mean. Take "Manos: The Hands of Fate" — Unweighted mean 2.1, weighted mean 1.5. (Or "The Godfather", another example of ballot stuffing.)Unchristian
H
8

Not exactly on topic, but useful for you:

How the ranking is calculated.

I hope that helps.

P.S. This is confirmed on this page:

IMDB Chart

Hirai answered 15/9, 2010 at 12:42 Comment(2)
I found the Wikipedia page a bit hard to digest (not an actuary), but something at the bottom of the IMDB page - at the bottom of the Top 250 page the say "true Bayesian Estimate" and provide the same formula as Wikipedia.. . I found this page a bit easier to read: wiki.answers.com/Q/…Interphone
That is a less wordy and much more comprehensible article, thanks for the link :)Hirai
S
4

First up: your calculation (which is an un weighted average, or simply the mean) has a typo: you have 19562 '4' ratings, but you should have 1562. Correcting this gives ~8.17, which rounds to the same as IMDB's Arithmetic mean'.

Next, if you do want a weighted average, you need something to weight with! So if for example users have a 'reputation' or similar (even just a length of time registered), you could use that as a multiplier for the weight of their rating. At the end, divide by the sum of weights rather than the total number of votes, and you have a weighted average.

A scaling factor of some kind for the weight would probably be needed - eg if SO did something like this, it might be a little unfair for Jon Skeet's opinion to carry two hundred thousand times the weight of a newly-registered user's opinion :)

Surround answered 15/9, 2010 at 12:42 Comment(0)

© 2022 - 2024 — McMap. All rights reserved.