0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

流媒体巨头Netflix的“独门线上评估秘笈”——Interleaving

nlfO_thejiangme 来源:lq 2019-08-02 14:58 次阅读

有经验的算法工程师肯定非常清楚,在一个模型的开发周期中,占工作量大头的其实是特征工程和模型评估及上线的过程。在机器学习平台已经非常成熟的现在,模型结构的实现和调整反而仅仅是几行代码的事情。所以如果能够将模型评估和线上AB Test的效率提高,那一定是大大解放算法工程师效率的事情。

今天这篇文章我们就介绍一下流媒体巨头Netflix的“独门线上评估秘笈”——Interleaving。

众所周知,Netflix是美国的流媒体巨头,其广为人知的原因不仅是因为其多部知名原创剧,高昂的市值,在推荐技术领域,Netflix也一直走在业界的最前沿。那么驱动Netflix实现推荐系统快速迭代创新的重要技术,就是我们今天要介绍的快速线上评估方法——Interleaving。

Netflix推荐系统问题背景

Netflix几乎所有页面都是推荐算法驱动的,每种算法针对不同的推荐场景进行优化。

如下图所示,主页上的“Top Picks行”根据视频的个性化排名提供推荐,而“Trending Now行”包含了最近的流行趋势。这些个性化的行共同构成了Netflix将近1亿会员“千人千面“的个性化主页。

图1:个性化Netflix主页示例。每一行是一个推荐类别,对于给定的行,从左到右的视频排序由特定的排序算法确定。

对于强算法驱动的Netflix来说,算法的迭代创新当然是必不可少的。为了通过算法最大化Netflix的商业目标(这些商业指标包括每月用户订阅数、观看总时长等等),需要进行大量的AB Test来验证新算法能否有效提升这些关键的产品指标。

这就带来一个矛盾,就是算法工程师们日益增长的AB Test需求和线上AB Test资源严重不足之间的矛盾。

因为线上AB Test必然要占用宝贵的线上流量资源,还有可能会对用户体验造成损害,但线上流量资源显然是有限的,而且只有小部分能够用于AB Test;而算法研发这侧,算法驱动的使用场景不断增加,大量候选算法需要逐一进行AB Test。这二者之间的矛盾必然愈演愈烈。这就迫切需要设计一个快速的线上评估方法。

为此,Netflix设计了一个两阶段的线上测试过程:

图2:使用Interleaving进行快速线上测试。用灯泡代表候选算法。其中,最优的获胜算法用红色表示。Interleaving能够快速地将最初的候选算法集合进行缩减,相比传统的AB Test更快地确定最优算法。

1. 第一阶段利用被称为Interleaving的测试方法进行候选算法的快速筛选,从大量初始想法中筛选出少量“优秀的”Ranking算法。

2. 第二阶段是对缩小的算法集合进行传统的AB Test,以测量它们对用户行为的长期影响。

大家一定已经对传统的AB Test方法驾轻就熟,所以这篇文章专注于介绍Netflix是怎样通过Interleaving方法进行线上快速测试的。

传统AB Test存在的问题

传统的AB Test除了存在效率问题,还存在一些统计学上的显著性差异问题。下面用一个很典型的AB Test问题来进行说明。

这里设计一个AB Test来验证用户群体是否对“可口可乐”和“百事可乐”存在口味倾向。那么按照传统的做法,我们会将测试人群随机分成两组然后进行“盲测”,即在不告知可乐品牌的情况下进行测试。第一组只提供可口可乐,第二组只提供百事可乐,然后根据大家一定时间内的可乐消耗量来观察人们是更喜欢“可口可乐”还是“百事可乐”。

这个实验一般意义上确实是有效的,很多时候我们也是这么做的。但也确实存在一些潜在的问题:

1. 总的测试人群中,对于可乐的消费习惯肯定各不相同,从几乎不喝可乐到每天喝大量可乐的人都有。

2. 可乐的重消费人群肯定只占总测试人群的一小部分,但他们可能占整体汽水消费的较大比例。

这两个问题导致——即使AB两组之间重度可乐消费者的微小不平衡也可能对结论产生不成比例的影响。

在互联网场景下,这样的问题同样存在。比如Netflix场景下,非常活跃用户的数量是少数,但其贡献的观看时长却占较大的比例,因此Netflix AB Test中活跃用户被分在A组的多还是被分在B组的多,将对结果产生较大影响,从而掩盖模型的真实效果。

那么如何解决这个问题呢?一个方法是不对测试人群进行分组,而是让所有测试者都可以自由选择百事可乐和可口可乐(测试过程中仍没有品牌标签,但能区分是两种不同的可乐)。在实验结束时,统计每个人可口可乐和百事可乐的消费比例,然后进行平均后得到整体的消费比例。

这个测试方案的优点在于:

1. 消除了AB组测试者自身属性分布不均的问题;

2. 通过给予每个人相同的权重,降低了重度消费者对结果的过多影响。

这个测试思路应用于Netflix的场景,就是Interleaving。

Netflix的快速线上评估方法——Interleaving

AB Test和Interleaving之间存在如下差异。

在传统的AB Test中,Netflix会选择两组订阅用户:一组接受Ranking算法A的推荐结果,另一组接受Ranking算法B的推荐结果。

在Interleaving测试中,只有一组订阅用户,这些订阅用户会接受到通过混合算法A和B的排名生成的交替排名。

这就使得用户同时可以在一行里同时看到算法A和B的推荐结果(用户无法区分一个item是由算法A推荐的还是算法B推荐的),进而可以通过计算观看时长等指标来衡量到底是算法A好还是算法B好。

解读图3:传统AB Test和Interleaving 在传统AB Test中,测试用户分为两组,一组暴露于排名算法A ,另一组暴露于算法B,在两组之间进行比较观看时长等核心评估指标。另一方面,Interleaving将所有测试用户暴露于算法A和B的混合排名,再比较算法相对应的item的指标。

当然,在用Interleaving方法进行测试的时候,必须要考虑位置偏差的存在,避免来自算法A的视频总排在第一位。因此需要以相等的概率让算法A和算法B交替领先。这类似于在野球场打球时,两个队长先通过扔硬币的方式决定谁先选人,然后在交替选队员的过程。

图4:使用“队长选人”的方式来混合两个排名算法的视频。ranking算法A和B分别产生了推荐视频列表。通过随机抛硬币确定是ranking算法A还是B贡献第一个视频。然后,轮流从算法A和B中从高到底选择视频。

在清楚了Interleaving方法之后,还需要验证这个评估方法到底能不能替代传统的AB Test,会不会得出错误的结论。Netflix从两个方面进行了验证,一是Interleaving的“灵敏度”,二是Interleaving的“正确性”。

Interleaving与传统AB Test的灵敏度比较

Netflix的这组实验希望验证的是Interleaving方法相比传统AB Test,需要多少样本就能够验证出算法A和算法B的优劣。我们之前一再强调线上测试资源的紧张,因此这里自然希望Interleaving能够利用较少的线上资源,较少的测试用户就解决评估问题。这就是所谓的“灵敏度比较”。

图5是实验结果,横轴是参与实验的样本数量,纵轴Netflix没有给出非常精准的解释,但我们可以理解为是判定算法A是否比算法B好的“错误”概率。可以看出的是interleaving的方法利用10^3个样本就能够判定算法A是否比B好,而AB test则需要10^5个样本才能够将错误率降到5%以下。这就意味着利用一组AB Test的资源,我们可以做100组Interleaving实验。这无疑大大加强了线上测试的能力。

图5:对Interleaving与传统AB Test指标的灵敏度。与最敏感的AB Test指标相比,Interleaving也只需要1/100的订阅用户样本就能够确定用户更偏爱哪个算法

Interleaving指标与AB Test指标的相关性

除了能够利用小样本快速进行算法评估外,Interleaving的判断结果是否与AB Test一致,也是检验Interleaving能否在线上评估第一阶段取代AB Test的关键。

图6显示了Interleaving中的实验指标与AB Test指标之间的相关性。每个数据点代表一个Ranking算法。我们发现Interleaving指标与AB Test评估指标之间存在非常强的相关性,这就验证了在Interleaving实验中胜出的算法也极有可能在之后的AB Test中胜出。

图6:Interleaving指标与AB Test指标的相关性。每个点表示一个Ranking算法的实验结果。Interleaving指标与AB Test指标存在很强的相关性。

结论

通过实验我们已经知道Interleaving是一种强大快捷的算法验证方法,它加速了Netflix各类Ranking算法的迭代创新。

但我们也要清楚的是Interleaving方法也存在一定的局限性,主要是下面两点:

1. 工程实现的框架较传统AB Test复杂。由于Interleaving实验的逻辑和业务逻辑纠缠在一起,因此业务逻辑可能会被干扰。而且为了实现Interleaving,需要将大量辅助性的数据标示添加到整个数据pipeline中,这都是工程实现的难点;

2. Interleaving毕竟只是对用户对算法推荐结果偏好程度的相对测量,不能得出一个算法完整的表现。比如我们想知道算法A能够将用户整体的观看时长提高多少,使用Interleaving是无法得出这样的结论的。为此Netflix才设计了Interleaving+AB Test两级实验结构,完善整个线上测试的框架。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 机器学习
    +关注

    关注

    66

    文章

    8122

    浏览量

    130556
  • 推荐系统
    +关注

    关注

    1

    文章

    42

    浏览量

    10027

原文标题:Netflix推荐系统模型的快速线上评估方法——Interleaving

文章出处:【微信号:thejiangmen,微信公众号:将门创投】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    USB MP4流媒体带来的好处

    USB MP4流媒体带来的好处什么是流媒体呢?从硬件角度讲是指一些便携的,播放时不占用播放设备内存,可即时播放的数码设备,例如U盘、MP3、移动硬盘、DC、DV里的SD、MMC卡等,具体说就是拥有
    发表于 05-24 18:19

    基于流媒体技术的手机视频播放系统的研究与实现

    【作者】:李露一【来源】:《华南理工大学》2009年【摘要】:随着无线通信网络从2.5G向3G进化以及手机硬件技术不断的升级换代,多媒体应用和宽带网络服务成为可能,它们的结合体就是无线流媒体
    发表于 04-24 09:24

    流媒体后视镜 柔光夜视清盲区实用性强

    `目前最火的智能后视镜无疑就是凌度A900流媒体后视镜,凌度A900流媒体后视镜是以驾驶员视野角度提供了一种扩展能力更强更智能的产品,这种技术可以解决后视方的盲区问题。流媒体后视镜不仅仅可以清除盲区
    发表于 12-13 16:33

    凌度流媒体后视镜 轻松弥补原装后视镜缺陷

    几乎每款车都会有多种智能设备,但很多汽车都是不具备的,或者是拥有的不够完善,所以很多都是通过购买车载用品改装来弥补汽车电子设备的缺失。今天小编就给大家带来一款全新的车内智能设备,凌度A900流媒体
    发表于 12-30 17:18

    【HarmonyOS HiSpark AI Camera】流媒体后视镜

    项目名称:流媒体后视镜试用计划:申请理由本人在车机应用开发领域有五年多的学习和开发经验,曾设计过车机端中控和仪表应用层的开发,对想借助发烧友论坛学习华为海思Hi3516DV300芯片实现流媒体后视镜
    发表于 11-19 20:50

    什么是视频编码?流媒体及音频编码标准是什么?

    什么是视频编码?流媒体的标准是什么?音频编码标准是什么?
    发表于 04-08 06:48

    探讨无线流媒体监控系统的相关知识

    无线流媒体监控系统的相关技术有哪些?无线流媒体监控系统组网特点是什么?无线流媒体监控系统是有哪些部分组成的?无线流媒体监控系统主要应用于哪些领域?
    发表于 05-25 06:52

    什么是流媒体服务器?

    介绍一下什么是流媒体服务器。  其实流媒体服务器从广义上来说,是属于视频服务器的一种。它主要是将视频或者音频文件进行数据压缩,然后存储等,在远程监控及视频应用方面,流媒体服务器都有广泛的应用。而视频
    发表于 06-30 09:28

    怎样去编译一个完整的流媒体服务系统呢

    流媒体技术在安防监控、网络电视、视频会议等应用领域都起着重要的作用,为人们的工作生活带来了便利。嵌入式流媒体服务器不同于传统的基于 PC 架构的流媒体服务器,嵌入式的流媒体服务器建立于
    发表于 12-14 08:18

    嵌入式Linux音频流媒体终端系统的设计资料分享

    《一种嵌入式Linux音频流媒体终端系统的设计与实现》由会员分享,可在线阅读,更多相关《一种嵌入式Linux音频流媒体终端系统的设计与实现(2页珍藏版)》请在人人文库网上搜索。1、一种嵌入式
    发表于 12-16 06:06

    流媒体是什么?

    流媒体是什么?  流媒体又叫流式媒体,它是指商家用一个视频传送服务器把节目当成数据包发出,传送到网络上。用户通过解
    发表于 01-28 10:28 2403次阅读

    区块链会对Netflix和其他流媒体竞争对手造成威胁吗?

    许多人没有意识到Netflix并不仅仅是一个流媒体平台。除了每天为数百万用户提供他们想看的视频,该公司还用自己的很大一部分收益投资了节目制作、前沿存储解决方案开发及市场调查。这种模式到目前为止一直
    发表于 09-28 14:41 579次阅读

    区块链如何颠覆Netflix流媒体公司的商业模式

    许多人没有意识到Netflix并不仅仅是一个流媒体平台。除了每天为数百万用户提供他们想看的视频,该公司还用自己的很大一部分收益投资了节目制作、前沿存储解决方案开发及市场调查。这种模式到目前为止一直
    发表于 06-13 13:38 693次阅读

    苹果发力 流媒体大战一触即发,多方争霸,各显其能

    苹果近一年来一直在疯狂购买内容,它已经准备好在流媒体领域拿回硬件市场的“亏空”。尽管主要竞争对手Netflix占据了市场主导地位,但在流媒体和付费电视仍有价格空间的情况下,用户现在有了越来越大的选择余地。
    的头像 发表于 08-29 10:24 2197次阅读

    云计算是如何推动流媒体服务的?云是流媒体的完美选择

    流媒体服务的迅速崛起是不可否认的。如今,Netflix、Amazon Prime Video和Disney Plus拥有数百万用户。其他流媒体服务,如Hulu Plus、HBO Max和CBS
    的头像 发表于 11-17 18:19 2115次阅读