用数据分析预测奥斯卡最佳影片奖
一年一度的奥斯卡颁奖又要开始了。 2005年, 李安导演凭借《断背山》获得最佳导演奖,可惜与最佳影片奖失之交臂。 这次, 李安导演又一次携《少年派的奇幻漂流》再次冲击奥斯卡。
在一周前的金球奖, 《逃离德黑兰》爆冷击败了《林肯》和《少年派的奇幻漂流》获得最佳影片奖。 这让很多人都觉得不可思议。 虽然艺术评委的思维模式往往与大众相左(参考阅读:社会化舆情分析,你信奥斯卡还是IBM), 但实际上数据分析仍然有可能为我们“剧透”今年的奥斯卡最佳影片奖得主。 好吧, 以下本人就试着用R分析一下吧。
奥斯卡的原始数据可以到www.appdata.com去下载这个文件, 这个文件包括了从1927年到2010年奥斯卡提名和获奖的所有数据。
有了这个原始数据集, 我们就可以开始我们的数据分析项目了。
首先确定项目的目标: 我希望能够分析从最佳影片提名中预测最后产生的获奖影片。 首先要做得是确定预测样本的特征值, 观察了一下原始数据集, 我们可以把一些肯定与最佳影片无关的奖项去掉(比如最佳动画长片, 最佳短片, 最佳外语片等)。 最后 我选择了下面这些奖项:
最佳男主角, 最佳男配角, 最佳女主角, 最佳女配角, 最佳艺术指导, 最佳摄影, 最佳服装设计, 最佳导演, 最佳影片剪辑, 最佳化妆, 最佳原创音乐, 最佳原创歌曲, 最佳混音, 最佳音效, 最佳视觉效果和最佳剧本。
其中, 奥斯卡的最佳剧本其实分最佳原创剧本和最佳改编剧本, 但是原始数据把二者合并了。 (这也是数据分析中常常会碰到的情况。 不过对我们来说影响不大)。
然后, 就是根据这些特征值, 对数据集进行整理。 这部分工作, 其实在一般的数据分析项目里, 大约占到60%的时间。 确实没有搞模型什么的有意思, 不过很多数据分析项目实施的好坏和数据整理其实有很大的关系。
我在这里主要是把特征值进行扩展, 把获得提名和获得最后奖项做为两个特征来看, 对每个奖项, 如果获得提名, 则获得提名定值为1, 否则为0。 如果该奖项没有获得提名, 则获得最后奖项的值为0 , 如果获得提名并得奖, 则为1。 同时还需要把历年的“最佳影片”的提名和获奖数据从原始数据集中取出来。 这些工作可以用R语言来完成,见附件中的代码。 总共最后整理成了一个共有 485个观察样本, 每个样本有32个特征值的数据集。 接着, 把这485个样本进行分组, 我按照80:20原则, 把80%的样本作为训练样本组, 20%的样本作为验证预测模型的验证组。
接下来就是进行预测模型的选择。 由于我们是个分类问题, 所以可以选择分类模型。 这个数据集相对较小, 因此不同模型的差别应该不大。 这里我先选择用回归树来做分析。 用R里面的回归树的包, 可以很容易的进行决策树的构建。 最后的决策树模型的ROC是0.877. 下图是决策树的示意。
决策树的一个好处就是比较直观, 这个决策树简单来说, 就是这样进行预测判断的, 首先是判断是否获得“最佳导演奖”, 如果获得最佳导演, 则判断是否有“最佳影片剪辑提名”。 如果没有, 则获奖概率为38%, 如果有最佳影片剪辑提名, 看是否获得“最佳剧本”奖, 如果没有, 则得奖概率为63%, 如果获得了, 则继续看是否获得“最佳混音”提名。 如此类推。
如此看来, 获得奥斯卡最佳影片奖的关键是获得奥斯卡最佳导演奖。 如果没有导演奖, 那么获最佳影片奖的概率顶多就是37%。
好, 我们来看看《少年派》, 少年派获得了导演奖的提名, 而如果获得了导演奖, 那么由于它本身已经是“最佳影片剪辑”提名, 所以即便不能拿到“最佳剧本”奖, 获奖概率也能达到63%, 而如果再拿到“最佳剧本奖”, 由于已经获得“最佳混音”提名, 所以几乎就能够铁定获奖了。
而对《林肯》来说也是这样的, 因为林肯也获得了最佳导演, 最佳剪辑和最佳剧本的提名, 所以, 《少年派》和《林肯》之间的对决主要是在最佳导演的争夺上了。 至于《逃离德黑兰》, 由于没有获得最佳导演奖的提名, 所以, 它的获奖概率最多可以到37%。 当然, 这个概率也比5选1的20%的概率要高。
为了看一看各个特征值对于最终获奖的影响, 我们也可以用逻辑回归的模型看一下, 下面是逻辑回归的出来的各特征值的权重, (ROC = 0.873,和决策树差不多)。
最佳导演获奖 | 3.826687 |
最佳化妆获奖 | 3.036705 |
最佳音效提名 | 1.908622 |
最佳男主角获奖 | 1.641444 |
最佳服装获奖 | 1.611889 |
最佳剧本获奖 | 1.27472 |
最佳影片剪辑提名 | 0.838309 |
最佳原创歌曲提名 | 0.763278 |
最佳男配角提名 | 0.644326 |
最佳艺术指导获奖 | 0.558941 |
最佳影片剪辑获奖 | 0.471427 |
最佳女配角获奖 | 0.454053 |
最佳服装提名 | 0.383574 |
最佳混音获奖 | 0.343589 |
最佳混音提名 | 0.295055 |
最佳化妆提名 | 0.198427 |
最佳原创音乐提名 | 0.188186 |
最佳艺术指导提名 | 0.171621 |
最佳女主角获奖 | 0.108964 |
最佳导演提名 | 0.094558 |
最佳女配角提名 | 0.083959 |
最佳视觉效果获奖 | -0.02597 |
最佳男配角获奖 | -0.19262 |
最佳摄影获奖 | -0.32458 |
最佳原创音乐获奖 | -0.37605 |
最佳女主角提名 | -0.39106 |
最佳男主角提名 | -0.59084 |
最佳摄影提名 | -0.71286 |
最佳原创歌曲获奖 | -0.75752 |
最佳剧本提名 | -0.78589 |
最佳视觉效果提名 | -0.86435 |
最佳音效获奖 | -2.07864 |
这里面可以看到, 最佳导演获奖依然是影响最大的因素, 其次是最佳化妆奖。 有意思的是, 有些提名或者获奖反而会降低得“最佳影片奖”的概率。 比如说“最佳音效奖得奖”或者“最佳视觉效果提名”。 也可能这些是对“最佳影片”的落榜影片的“安慰奖”。
本站有一篇文章“数据可视化是科学, 也是艺术”,指出数据可视化是科学艺术和设计的结合,而我们现在做的,则是用数据分析预测艺术市场。 在我们观看奥斯卡颁奖典礼的时候, 因为最佳影片是最后一个颁奖的, 所以大家可以把决策树拿出来, 对照着前面颁奖的情况进行观看, 是不是会更有意思呢。
对数据分析爱好者来说, 我的R代码和整理过的数据集见附件(
奥斯卡预测数据分析文件
第一时间获取面向IT决策者的独家深度资讯,敬请关注IT经理网微信号:ctociocom
除非注明,本站文章均为原创或编译,未经许可严禁转载。
相关文章: