TellWorldAI 世界档案
问档案English

首页›动态›评测

评测统计学习

Netflix Prize 推荐算法竞赛(2006-2009)

Netflix 在 2006 年至 2009 年办的一场公开算法竞赛:谁把它自己的推荐算法再提高 10%,就能拿到 100 万美元;Netflix 为此公开了 1 亿条匿名电影评分。

胶片卷和评分卡汇入算法图。

背景

Netflix 的推荐功能依靠协同过滤(collaborative filtering):用大量用户对电影的评分,推断某个人可能给一部片子打几分。它自家的算法叫 Cinematch,也就是所有参赛者要打败的基准 [1]。2006 年 10 月,Netflix 公开了一份包含 1 亿条匿名电影评分的数据集,并向数据挖掘、机器学习和计算机科学界发出挑战,请他们做出比 Cinematch 更准的算法 [2]。Netflix 推荐系统副总裁 Jim Bennett 在公布比赛时表示,这次放出的 1 亿条评分来自约 50 万名订阅用户,个人信息已经去除 [3]。一份标注日期为 2006 年 10 月 2 日的公告写明:第一个达到准确率目标的个人或团队可获 100 万美元,详情见 www.netflixprize.com [4]。

数据

评分来自 48 万多名随机抽取的匿名订阅用户,覆盖近 1.8 万部电影,采集时间为 1998 年 10 月至 2005 年 12 月;其中最近产生的 300 多万条评分被抽出,作为评测集(qualifying set)[2]。具体数字是:训练集包含 480,189 名用户给 17,770 部电影打出的 100,480,507 条评分 [1];评测集共 2,817,131 条三元组,分为用于排行榜成绩的 quiz 集(1,408,342 条)和用于判定胜负的 test 集(1,408,789 条)[1]。

怎么比

参赛者要预测那 300 多万条被藏起来的评分。其中固定但不公开的一半(quiz 集)会立刻算出误差并公布在排行榜上,未公开的另一半(test 集)用来决定获奖者 [2]。成绩用均方根误差(root mean squared error,RMSE)衡量:在 quiz 集上,一个最简单的算法得 1.0540,Cinematch 得 0.9514 [1]。

奖金规则

要拿 100 万美元大奖,必须在 Cinematch 的基础上再提高 10%,也就是在 test 集上把 RMSE 做到 0.8572 [1]。在大奖无人拿走的年份里,每年向当时成绩最好的一支队伍颁发 5 万美元的进度奖 [1];NBC News 的报道也提到,如果没有最终赢家,Netflix 将每年向朝目标进步最大的人支付 5 万美元 [3]。各类奖项的获得者被要求公开记录并发表自己的方法 [2]。

参赛规模

到 2007 年 6 月,已有来自 152 个以上国家的 2 万多支队伍报名,2 千支队伍提交过预测结果,超过 650 支队伍的准确率已经超过 Cinematch [2]。超过基准因此并不罕见;真正难的是走满那 10%,直到比赛最后一次颁奖,才有人达到 [1]。

结果

2009 年 9 月 21 日,100 万美元大奖颁给了 BellKor's Pragmatic Chaos 队,其成绩比 Netflix 自己的算法好 10.06% [1]。这场竞赛从 2006 年一直办到 2009 年 [1]。

影响

它把公司内部的一个工程问题变成了公开的基准测试:数据、指标和排行榜对所有人一样,所以风格迥异的方法可以放在同一把尺子上直接比较 [1][2]。获奖者必须公开自己的方法,这一条让结果不只留在 Netflix 内部,而是进入推荐系统研究的公共记录 [2]。对参与者来说,1 亿条评分还提供了一个共同的试验场,让成千上万支队伍在同一个预测任务上工作 [2]。

来源

  1. 1
    Netflix PrizeWikipedia
  2. 2
  3. 3
    Netflix offers film recommendation prizeNBC News / Associated Press
  4. 4

引用本页: Netflix Prize 推荐算法竞赛(2006-2009). TellWorld, https://www.tellworld.net/zh/news/netflix-prize-2006. 更新于 2026-11-07

相关动态