20th Century Fox — 利用机器学习来预测电影观众
文 / Miguel Campo-Rembado,SVP of Data Science, 20th Century Fox 和 Sona Oakley,Solutions Architect, Google Cloud
电影业的成功仰赖电影公司吸引观众的能力,但有时说起来容易做起来难。观影爱好者是一个多元化群体,他们对电影的爱好多样、兴趣广泛。从历史角度来看,电影公司在决定是否投资某个剧本时严重依赖经验,而这可能会招致巨大风险,在投资新的原创故事时尤其如此。将故事与观众匹配是一个反复迭代的复杂过程,因此 20th Century Fox 总裁、首席数据战略分析师兼媒体主管 Julie Rieger 与数据科学高级副总裁 Miguel Campo-Rembado,以及该公司的数据科学家团队决定使用数据理清这个过程。
适合使用机器学习解决的数据挑战
了解电影观众的市场细分是电影公司的核心职能。多年来,电影公司在高层次数据处理方面进行投资,尝试厘清客户细分情况,以及对未来电影的观众作出预测。然而迄今为止,由于技术和制度障碍,细分市场层面的精细预测仍然难以实现,更不必说客户层面。
通过与 Google Cloud 这样的合作伙伴一起努力,Miguel 和他的团队已经能够消除其中一些障碍。我们一同建立起一个隐私保护健全的数据合作伙伴关系,以便更好地了解观影爱好者,还开发出内部深度学习模型,并使用精细客户数据和电影剧本来训练该模型,以使其能够识别出观众对不同类型电影偏好的基本模式。在 18 个月的时间里,这些模型已经成为重要商业决策的常规考虑因素,并为评估电影的基调、核心观众与弹性观众的相似性,以及可能的财务业绩提供一份最客观、最讲求数据,也最高效的参考信息。
下面我们来更详细地讨论这些方法。对于电影,只分析从剧本中选取的文本远远不够,因为这些文本只能提供故事的框架,并不具备能够吸引观众观影的任何额外推动力。公司团队想知道是否有某种办法可以使用先进的现代计算机视觉技术来研究电影预告片,因为电影预告片仍然是整个电影营销活动中最核心的元素。新电影的预告片发布是一项备受期待的活动,有助于预测未来的成功,因此公司理应确保预告片能够打动观影爱好者。为了实现这一目标,20th Century Fox 的数据科学团队与 Google 的 Advanced Solutions Lab 合作创造出 Merlin Video。这是一个计算机视觉工具,可用于通过学习电影预告片中的密集表征来帮助预测特定预告片未来电影观众。
设计数据管道
团队的第一步工作是确定应选择哪项技术为工具提供支持。当然是要选择 Cloud Machine Learning Engine (Cloud ML Engine),并将其与 TensorFlow 的深度学习框架一同使用。由于是托管式服务,因此 Cloud ML Engine 自动配置和监控所有资源,这样团队就可以集中精力为 Merlin 构建深度学习模型,而无需配置基础架构。Cloud ML Engine 与 Cloud Dataflow 的集成还使其可以在 Data Studio 中无缝生成报告,从而使团队能够更深入地理解流程的工作原理。对该系统的日常维护(主要是数据获取)既简单又轻松,而且可以完全由数据科学家处理,无需其他业务部门的工程师介入。
Merlin 的结构流程图
合适的基础架构就位后,团队开始在 YouTube 视频的公开可用数据集(YouTube 8M https://research.google.com/youtube8m/ )上进行分析。此数据集包含一个 Google 的预训练模型,能够用于分析特定的视频特点,例如颜色、照度、多种脸型、几千种物体,以及一些景观。如上表所示,Merlin 架构中的第一步是解析这些预定义特征,并将其用作前兆,以确定预告片的哪些元素最能预测观影爱好者的偏好。
例如,如果某些观众以前主要观看主演为男性角色的动作电影,那么他们是否很有可能会看另一部主演为男性角色的动作片?下面我们以《金刚狼》( "Logan" ) 为例,进行深入探讨。该片是一部 20th Century Fox 发行的动作电影,金刚狼一角由 Hugh Jackman 饰演。下图是官方预告片中,第 12 秒画面的快照。
《金刚狼》官方预告片,第 12 秒画面
对于这张快照,Merlin 返回以下标签:facial_hair(面部毛发)、beard(胡须)、screenshot(屏幕截图)、chin(下巴)、human(人类)、film(电影)。在完成对整个预告片的逐秒分析后,Merlin 展示出《金刚狼》中最常出现的标签,如下图所示:
Fox 的屏幕截图工具 Merlin 标记的标签,按频率降序排列
在分配对《金刚狼》的标签分析任务后,20th Century Fox 团队想要将这种新的分析与之前从其他电影预告片中生成的标签进行比较,以识别类似的电影。我们可以假定,《金刚狼》的观众和其他动作电影的观众存在重叠,但要验证假设,需要应对双重挑战。第一个挑战是预告片中标签的时间位置:标签在预告片中的出现时间很重要。第二个挑战是这些数据的高维度。对于任何给定的电影,其预告片中都可能有大量能够预测观众兴趣的元素,Merlin 的目标正是同时分析这些元素。Cloud ML Engine 的弹性使数据科学团队能够快速进行迭代和测试,而不会有损深度学习模型的完整性。如此一来,Merlin 便在数日之内就成为可随时用于电影制作的工具,而不必花上数月或数年。
具体来说,分析管道将这些单个组件(标签)送入数据科学团队开发的自定义神经网络中。这个自定义模型会学习电影预告片中标签的时间序列。时间序列(例如,针对某个物体的长镜头与间歇短镜头)可以传达一些相关信息,例如电影类型、电影情节、主要人物角色,以及电影制作人的摄影选择。当与历史客户数据结合后,便可以使用序列分析来创建对客户行为的预测。该管道还包括一个基于距离的 “协同过滤” (CF) 模型和一个逻辑回归层,可以将所有模型输出组合到一起,以生成电影上座概率。该模型经过端到端训练,可以将逻辑回归的损失反向传播到所有可训练的组件(权重)。Merlin 的数据管道每周更新,以便分析新发布的预告片。管道结构如下图所示:
最后一步,团队使用 BigQuery 和 BigQueryML 将数百万的客户预测与其他数据资源合并,以创建实用报告,并为营销活动快速设计媒体计划原型。
验证模型
我们回到《金刚狼》这个示例,看看得出的数据能否印证我们的直觉,即之前看过由 “粗犷” 男性主演的动作片的观影爱好者可能也会看《金刚狼》。我们可以在电影上映后处理有关该观众之前看过哪些电影的数据。下表展示了前 20 名真正的影迷观众(Comp ACT)与前 20 名预测观众 (Comp PRED) 的比较情况。我们重点分析前 5 部真正的电影(下表中以绿色标示),看看它们是否也出现在我们的预测栏中,结果是前 5 部电影都出现在预测栏中。
Merlin Video 的结果输出:真正的观众与预测观众的对比
从表面上看,我们的直觉没错。《金刚狼》的主要观众实际上是喜爱超级英雄(这点我们已经知道)和 “粗犷男主角动作片”(这一点我们尚不能完全确定)观众的组合。观察一下对 “粗犷男主角动作片” 这一关键词的预测,例如《豪勇七蛟龙》(The Magnificent Seven)(上图中以蓝色标示)、《疾速追杀》(John Wick)(上图中以绿色标示)和《终结者:创世纪》(Terminator Genisys)(上图中以蓝色标示)也出现在前 20 名真实观众的列表中,我们就能更清楚地看到这一点。这是双赢的结果,因为新观众 “加入” 了超级英雄的核心观众,而且我们或许可以通过他们将该电影的覆盖人群扩展到核心观众之外。
这些工具对 20th Century Fox 的营销和数据团队有非常重大的影响。该团队现在可以部署更多精密工具来确定客户意向,而不只是依赖粗略的观众调查结果。这些数据分析比电影公司之前一直依赖的分析数据集至少详细两个数量级。自 2017 年《马戏之王》(The Greatest Showman) 上映以来,20th Century Fox 一直在使用此工具,并会继续将其用于分析他们最新上映的电影。现在,他们还开始整合从家庭娱乐来源购买和租用的数据,以确定观众成员与他们观看过的电影之间更大的关联性。
最后,由于数据更加精细,该团队可以查看实际票房表现与内部预测的比较情况,以了解哪些细分等级的预测与实际相符。现在,Miguel 的数据科学团队会在每个星期一的早上创建记分卡,然后通过电子邮件将其发送给公司的其他人员。
如果您想详细了解 Merlin 的基础研究,可以在 此处 找到原创研究论文(https://arxiv.org/abs/1810.08189)。
更多 AI 相关阅读:
强化学习中的好奇与拖延
运用深度学习技术检测转移性乳腺癌
Super Res Zoom,借助 Pixel 3 增强图像清晰度和细节
20th Century Fox — 利用机器学习来预测电影观众相关推荐
- 如何使用机器学习来预测新型冠状病毒
机器学习相信我们很多人都接触过,但是很多大牛利用机器学习来预测新型冠状病毒,当然无论对错,其实这正是我们学习技术的价值,让我们的知识能够应用于生活,对我们的身边的事情能够起一个指导作用.如果大家感兴趣 ...
- ML/DL之预测分析类:利用机器学习算法进行预测分析的简介、分析、代码实现之详细攻略
ML/DL之预测分析类:利用机器学习算法进行预测分析的简介.分析.代码实现之详细攻略 目录 机器学习算法进行预测的简介 机器学习算法进行预测的分析 机器学习算法进行预测的代码实现 机器学习算法进行预测 ...
- 如何利用机器学习预测股市,成为百万富翁?
全文共5549字,预计学习时长11分钟 正如人们所想象的一样,在华尔街工作充满机遇与挑战.大家都西装革履.脸色阴沉.手持香烟吞云吐雾.在世界金融中心的喧嚣里,每个人的实际目标都很简单.不过是冒着将事物 ...
- 【数据分析】利用机器学习算法进行预测分析(五):Prophet
时间序列预测中的机器学习方法(五):Prophet 本文是"时间序列预测中的机器学习方法"系列文章的第五篇,如果您有兴趣,可以先阅读前面的文章: [数据分析]利用机器学习算法进行预 ...
- 机器学习实战——KNN算法预测电影类型
预测电影类型 现有爱情片和动作片(不是爱情动作片,雾)的打斗场面和接吻场面的次数统计,然后给出一个电影打斗场面和接吻场面出现的次数,预测其类型. 那么如何预测呢?当然用KNN了. KNN算法的原理就是 ...
- 机器学习来预测硬盘故障
随着AIOPS越来越热,有一群系统研发工程师正在努力尝试利用机器学习和大数据让苦逼的运维保障工作变得高大上, 比如流量请求智能调度,服务异常自动修复,机器故障提前预测等等. 机器学习 通过对历史数据的 ...
- NLP的介绍和如何利用机器学习进行NLP以及三种NLP技术的详细介绍
文章目录 什么是NLP? 为什么要学习NLP? 深度学习 技术1:文本嵌入(Text Embeddings) 技术2:机器翻译 技术3:会话 易水寒 发表于 2018-06-10 10:26:10 本 ...
- 50多种适合机器学习和预测应用的API,你的选择是?(2018年版本)
对于做工程项目和搞科研的人来说,有现成的模块或工具使用是一件多么美妙的事情啊,无需访问源码或理解内部工作机制的细节即可完成相应的任务.常用的方法是调用一些API,即一些预先定义的函数,目的是提供应用程 ...
- Python 3 利用机器学习模型 进行手写体数字检测
0.引言 介绍了如何生成手写体数字的数据,提取特征,借助 sklearn 机器学习模型建模,进行识别手写体数字 1-9 模型的建立和测试. 用到的几种模型: 1. LR,Logistic Regres ...
最新文章
- Python天天美味(5) - ljust rjust center
- Apache提示You don‘t have permission to access / on this server问题解决
- 时间序列预测之一:指数平滑法(二)R语言——代码实现
- corpora for america English
- 如何逼疯一名数学系学生?
- 基础省选+NOI 第5部分 数论进阶
- 祝贺!吴晟成为 Apache 软件基金会首位中国董事!
- mysql5.6 主从 延迟_MySQL5.6升级5.7时,出现主从延迟问题排查过程
- 斐波那契数列 java
- 大白话理解可达性分析算法
- win10计算机图标怎么放桌面壁纸,win10系统桌面图标显示和背景修改的具体方法...
- PDF文件旋转页面的简单方法
- (Python3) Numeric (数字)类型
- 小米 2021 秋招面试总结
- WPS文件转Excel文件怎么转?建议看看这些方法
- 你真的会用区块链赚钱吗?论区块链的商业思维
- 计算机英语教学设计反思,小学五年级英语教学设计与反思
- GMSL高带宽数据接入的方法
- 【Python自动化测试14】Python自动化测试基础与进阶练习题
- 什么时候要把方法写成静态的。什么时候写成实例化方法。
热门文章
- 2021全球与中国波长选择开关(WSS)市场现状及未来发展趋势
- mysql接受表单数据类型_PHP如何接收表单数据数组并插入MySQL数据库?其中表单数据类型包括图片文件类型,要实现图片..._慕课问答...
- Matlab exercise05
- iOS 下一维码与二维码识别相关资料
- Real-Time Rendering——Chapter 8 Light and Color光和颜色
- 解锁AI技能:深度学习利用OCT图像诊断眼内视网膜疾病
- [转载] 晓说——第30期:海上霸主航母(下)
- Tauri+Vue3创建桌面应用
- 黑马JavaScript核心操作BOM与DOM课程笔记1-DOM
- ElasticSearch6.5.4快速入门