翻译、编辑:Alex
作者为Krishna Rao Vijayanagar。
Easy-Tech #035#
推荐引擎通常是指利用机器学习(基于用户的过去选择、偏好以及内容提供商的目录)来预测特定用户有可能观看哪一部电影或者视频的系统。
由于推荐引擎是帮助用户有效浏览电影目录的工具,所以它们对于OTT平台十分重要。在机器学习的帮助下,平台可以根据每个用户与服务的互动、他们对电影的选择以及丰富的电影元数据构建个人用户画像。
在本文中,我们将从OTT服务提供商的角度来了解推荐引擎、它所需的数据、以及它的用途等。
OTT流媒体传输中的推荐引擎
在一篇发表的论文[1]中,谷歌的研究者们已经解释了他们是如何向用户推荐视频的:
看起来很复杂?好吧,这是因为YouTube需要正确推荐视频以保留用户、减少用户流失以及提高广告收入。
当然,我们在讨论电影推荐的时候,不得不提到著名的“Netflix百万美金大奖”,该奖项的目的就是根据人们的电影偏好来大幅度提升预测他们对于某部电影喜爱程度的准确率。也就是说,你是否能预测用户喜欢哪部电影并准确推荐给他们?你可以在这里查看2009年赢得百万奖金的解决方案的描述:https://www.netflixprize.com/community/topic_1537.html
本文中,我们不会深入机器学习(ML)算法,但我们将围绕数据需求、数据收集和推荐的使用展开介绍。
内容推荐引擎所需数据
推荐引擎需要大量数据(正确数量和质量)推荐和识别模式。比如,需要适当的数据来确保被推荐给用户的电影适合用户的观看偏好和模式。否则,很可能导致各种App商店和平台上的用户流失和差评。
接下来让我们快速了解一下用于推荐引擎的最重要的数据源。我将把它们分成两类:一、从电影中挖掘的数据;二、从用户中挖掘的数据。
| 电影元数据
电影元数据可以从电影公司或者内容创作者那里一次性获取。在没有此类信息的情况下,内容提供者也可以从IMDb或者类似的评分网站和机构来获取数据。
Netflix上某部电影的相关信息
下面是一些在推荐时需要的重要信息:
- 分类(动作、喜剧、爱情、年代或者混合类别)
- 语言(英语、法语、印度语、意大利语、西班牙语等)
- 电影长度(短片或者长片)
- 分级(G、PG、PG-13、R等)
- 演员、导演、制片人、海报或制作公司等信息
- 发行年份
下面让我们看下可以收集到的推荐引擎所使用的相关用户信息。
| 用户数据
除了电影元数据,你需要使用描述用户观看模式、选择、好恶的数据。而且必须谨慎处理这些用户数据。
目前已经存在相关保护用户隐私的法律,所以你在收集、处理和存储个人身份信息(Personally Identifiable Information)等时要了解这些法律。欧盟GDRP(《通用数据保护条例》)和巴西LGPD(《通用数据保护法》)的目的就是为了保护用户的隐私权和被遗忘权。
但是接下来你将看到,用户的相关数据对于推荐极其重要。你需要做的就是确保你没有违反任何数据法。
下面是一些推荐引擎感兴趣的关于用户的数据点。
- 地点
- 语言偏好
- 各个维度的观看时间或观看持续时间
- 这意味着什么?如果一个用户观看了一部由布拉德·皮特主演的动作片,那么记录用户的观看时长就很重要。
- 因为如果用户选择了这部电影,但只观看几分钟便关闭了电影,对于该电影来说,这可不是一个好信号。
- 如果电影观看时间低于X分钟(你所选择的阈值),那你就不应该将它作为这部电影或者分类的积极信号。算法可以将观看时间和导演、演员和电影分级等其他维度结合使用。
- 赞成/反对票:它们是定义用户好恶的有力指标。有几家平台(如Netflix)允许在它们的推荐引擎中使用赞成/反对某部电影这一强大功能。
Netflix的用户界面显示了与你正在观看的电影类似的电影
太好了,我们已经简单了解了为了推荐所需要收集的数据。现在,我们需要暂停,并思考一下数据的两个重要方面:质量和数量。
数据质量和数量也很重要
为推荐引擎提供正确质量和数量的数据进行推荐十分重要。如果你的数据错误或者数据量不够,那么你的预测和推荐将不准确,并导致糟糕的用户体验。
假设一个用户喜欢观看“战争”和“枪战”电影,但是却被推荐了爱情片,你觉得他的用户体验如何呢?肯定很差。
人们对于糟糕推荐的恐惧也是创建、管理、收集和清洗数据对于推荐引擎愈加重要的原因。
- 内容提供商需要与电影公司和内容创造者一起协作获取每部电影的正确元数据。
- 为了获取用户和用户观看模式信息,他们需要将视频分析系统集成到自己的基础设施。
- 当然,还要创建可以将这些不同信息源组合在一起的工具,这些工具可以清洗数据并将数据以正确的格式提供给ML/AI引擎。
除此之外,工程团队需要确保通过可扩展的API进行推荐,后端能够处理任何传入的负载,并且他们的系统可以被各类视频平台(如桌面、Android、iOS和Roku等)以及公司的其他部门(如营销部门和广告部门)所使用。
将电影信息和用户观看模式信息组合使用将使推荐变得更加强大,从而促进互动以及内容被更多人发现。
好的,现在这里为你准备了一个问题。
当你拥有大量电影信息而毫无用户信息时,该如何进行推荐?这种情况下,你会怎么做?
让我们在下文揭晓。
内容推荐中的“冷启动”问题
推荐引擎通常非常善于将内容推荐给已经在平台存在一段时间的用户,因为它已经获得了这些用户的大量信息。
但是,如果一个用户第一次注册平台呢?即平台新用户。平台没有任何关于用户、用户偏好等信息,所以很难立即就推荐内容。
这种情况被称为推荐引擎中的“冷启动问题”。 如何向一个你对其一无所知的用户推荐?又推荐什么内容?
一种规避此类问题的方法是通过使用IP定位用户的地理位置,并提供该地理位置内受欢迎的内容。或者,如果你的平台在注册阶段收集了用户性别、年龄、语言偏好等,你可以使用这些信息进行一般性的推荐,并且随着用户与平台互动而不断学习。
这与Netflix的操作很相似。他们有一个“今日印度前10”排名,而且没有很复杂,这对于冷启动问题是一个很好的解决方法。
Netflix的“今日印度前10”(来源:Netflix)
但是,当然,仅仅基于地理位置的推荐方法对于印度这样的国家来说(其中各个邦都拥有一种或者多种语言,包括口语和书面用语)并不能一劳永逸。
有一个避免冷启动的简单方法:可以在用户注册时向他们展示一个菜单,请他们在其中选择自己最喜欢的语言和分类。然后,就可以根据这些与平台的进一步互动对推荐进行改进。
反馈系统:监测推荐
在设计推荐系统时,关于推荐质量的信息收集也十分重要,比如,如果你向一位用户推荐了三部电影,他选择其中的任意一部了吗?如果用户选择了其中一部,那么他是否观看这部电影超过了X分钟?或者用户是否刚看了几分钟就退出了?
在确定推荐效果好坏方面,点击通过率(Click-Through-Rate ,CRT)是一个强大的指标,应该作为修正系数反馈给AI/ML系统。
视频内容推荐引擎的应用场景
推荐引擎对于视频平台的成功至关重要,并且有助于提升内容发现、用户互动、营销活动、再营销“休眠”用户、减少用户流失等。让我们看下其中几个应用场景:
| 增加内容消费
与流行的看法相反,人们很多时候不知道自己下一部想看什么电影,所以他们会依赖从朋友、社交媒体、电影点评等处获得的推荐。好的推荐引擎可以很自然地引导用户去观看之前从不会考虑的电影!如果操作正确的话,可以增加内容消费,同时通过租借、订阅和广告等方式提高收益。
| 改进的搜索和自动补全
平台的搜索引擎也可以根据用户偏好进行推荐。比如,如果用户在搜索框输入“The”
- The Lion King(《狮子王》,卡通/儿童分类)或者
- The Guns of Navarone(《纳瓦隆大炮》,战争)
应该智能地设计此类系统来确保自动补全不会花费太长时间,因为时间一长,就会带来糟糕的用户体验。
| 改进的目录发现
我们已经知道用户很多时候并不了解自己想看什么,系统首先可以巧妙地引导他们去观看之前未曾搜索过的电影。这就是“内容发现”过程,通过了解用户画像,内容平台可以向用户推荐电影并引导用户发现更多内容库(目录)。
Amazon Prime Video就是一个很好的例子。如果你搜索电影《星际穿越》,那么Amazon Prime也会根据不同的信号和特征向你展示类似的电影。比如,和我们第一个搜索的《星际穿越》一样,《盗梦空间》和《信条》都是克里斯托弗·诺兰执导的电影。如果是更加智能和有品位的内容推荐,将能够帮助你的用户探索和参与到分类中的大部分内容。
在Amazon Prime Video上看到的相关电影
| 智能地向用户进行再营销
平台同样可以通过推送通知、邮件、社交媒体馈送等来吸引目标用户并对其进行再营销。个性化邮件和推送通知的能力在促进互动和市场营销活动中非常重要。
结语
我希望这篇内容(电影)推荐引擎的介绍性文章能够对你有所帮助,使你可以对这个OTT工具链中有趣且重要的一部分有所了解。
「在你退出这篇文章之前,我给你留了一个问题:你能根据电影内容推荐电影吗?我指的并不是分类、电影元数据这些,而是电影中发生的情节。对于向TikTok这种元数据比较缺乏的平台来说,这种方法会非常有用。」
我们下次再见!Happy streaming!
注释:
[1] https://dl.acm.org/doi/10.1145/3298689.3346997
致谢:
本文已获得作者Krishna Rao Vijayanagar授权翻译和发布,特此感谢。
服务器托管,北京服务器托管,服务器租用 http://www.fwqtg.net
机房租用,北京机房租用,IDC机房托管, http://www.fwqtg.net