Why a 9‑point Film with 100 Votes Beats an 8‑point Film with 10,000 Votes
This article examines the shortcomings of traditional Bayesian‑based movie ranking formulas, illustrates how vote count biases affect rankings, and proposes a new approach that classifies films into audience segments and incorporates longevity metrics to produce more universally appealing and enduring top‑250 lists.
Movie enthusiasts often wonder whether a film rated 9.0 by 100 users should rank higher than a film rated 8.0 by 10,000 users. This dilemma is a common challenge for algorithm engineers.
Many deep‑movie fans cite the Bayesian formula used by IMDb, which adjusts a film's score based on the number of votes ( WR = (v ÷ (v+m)) × R + (m ÷ (v+m)) × C). Here R is the average rating, v the vote count, m the minimum votes required for the Top 250, and C the overall mean vote.
The formula aims to balance rating and vote count, preventing niche high‑scoring films from dominating the list. However, the result heavily depends on the preset vote threshold m. A low m yields a simple rating‑sorted list; a high m favors only widely viewed films. IMDb has raised m from 500 to 25,000, yet the problem persists.
In China, newer movies quickly accumulate massive vote counts (e.g., Crazy Renaissance with 130,000 votes in two months), while classics like The Godfather II have far fewer votes, making the static m unsuitable for domestic rankings.
To address this, we first apply a basic Bayesian model, then iterate: separate old and new films, incorporate temporal factors, and eventually redesign the algorithm.
After reviewing Douban’s Top 250 product, we identified two key criteria:
Broad audience adaptability : A film should appeal to many user groups, not just niche fans (e.g., anime EVA scores high among anime lovers but is unsuitable for general audiences).
Sustained attention : The film should remain popular over time, not just a fleeting hit.
We solve the first criterion by clustering movies into categories, each representing a distinct audience segment. Ranking then becomes a recommendation problem: a film recommended to more segments is considered more broadly appealing. Experiments show that The Shawshank Redemption reaches far more segments than niche titles.
For sustained attention, we plot each film’s collection and rating curves over multiple time windows, analyzing curve shapes to score longevity. Rapidly declining curves indicate short‑lived popularity, prompting a rerank.
The development process follows two steps: implement the simplest algorithm (Bayesian average), then analyze its shortcomings and iteratively improve it.
Efficiency concerns are deferred until the algorithm stabilizes, as performance can later be optimized through parallelization, compiled languages, or approximation techniques.
In summary, the example illustrates a product‑centric algorithmic mindset: start with a high‑level framework, drill into details, iterate from simple to complex, and always consider both breadth and depth of audience impact.
Signed-in readers can open the original source through BestHub's protected redirect.
This article has been distilled and summarized from source material, then republished for learning and reference. If you believe it infringes your rights, please contactand we will review it promptly.
21CTO
21CTO (21CTO.com) offers developers community, training, and services, making it your go‑to learning and service platform.
How this landed with the community
Was this worth your time?
0 Comments
Thoughtful readers leave field notes, pushback, and hard-won operational detail here.
