Netflix大部分的推荐机制都是采用机器学习的算法

原文地址:https://blog.csdn.net/yubei2155/article/details/79343942
Netflix大部分的推荐机制都是采用机器学习的算法。传统方式上,我们会收集一组用户如何使用我们服务的数据,然后在这组数据上采用一种新的机器学习算法。接下来我们会通过A/B测试的方式测试这个算法与当前的系统进行比较。A/B 测试通过一组随机的用户数据去测试新的算法是否比当前的系统更好。A组的成员会得到通过现在的系统生成的图片而B组会得到新的算法所生成的图片。如果B组的用户在Netflix有更高的转化率,那我们就会把这个新的算法推广到整个客户群。但有一点不好的是,这种方式会产生损失(Regret):许多用户在很长一段时间内无法得到这种更好的用户体验。下图展示了这一过程:

为了降低损失(Regret),我们不再采用批量机器学习的方式,而是考虑在线机器学习。针对配图的个性化定制,我们采用的线上学习框架是“上下文老虎JI”(contextual bandits)。相比于以前等着收集一整批次的数据,等着学习一个模型,然后等着一个A/B测试来得出结论,“上下文老虎JI”能针对每个用户和情境快速找出最优的个性化配图选择。简要地说,“上下文老虎JI”是一类在线学习算法,这类算法通过在一个变化的情况下不断将所学模型应用于每个用户情景的好处来平衡收集足够的数据去学习一个无偏模型的代价。在我们之前非个性化的图片筛选框架中,我们用的是“非上下文情境的老虎JI”(non-contextual bandits),这种方法在寻找最佳配图时不考虑上下文情境。而对于个性化来说,用户就是上下文情境,因为我们期望不同的用户对配图有不同的回应。

“上下文老虎JI”的一个重要属性是它们天生就能将损失(Regret)最小化。“上下文老虎JI”的训练数据是通过在学习模型的预测中注入受控的随机化变量获得的。随机化方案的复杂程度可以变化,从具有均匀随机性的简单ε贪婪公式(epsilon-greedy formulations)到能够根据模型的不确定性自适应地改变闭环方案。我们笼统地称之为数据探索(data exploration)。一个影片的所有备选配图数量和系统部署到的用户总体大小决定了数据探索策略的选择。有了这样的探索,我们需要记录关于每个配图选择的随机化的信息。这个记录允许我们修正偏斜的选择倾向,从而如下所述,用不偏倚的方式执行离线模型评估。

由于实际上有的用户的配图呈现选择可能并不会用那次预测中最好的图像,所以“上下文老虎JI”里的数据探索一般都是有一定代价的(Regret)。这一随机化对于用户体验(进而对于我们的指标)有怎样的影响呢?对于超过一亿用户来说,数据探索导致的损失(Regret)一般都很小,而且被隐式地分摊到了我们庞大用户群的每个用户,来帮助提供目录中的一小部分配图的反馈。这使得平均每个用户的数据探索代价微不足道,这对于选择“上下文老虎JI”来运转我们用户体验中的关键部分,是一个非常重要的考量。如果数据探索的代价很高,那用“上下文老虎JI”做随机化和数据探索就会不太合适。

在我们的线上探索方案中,我们获得的训练数据集记录了对于每个(用户,影片名,图片)元组,其对应的影片是否被播放。此外,我们还能够控制数据探索使得配图筛选结果不要改变得太过频繁。这使得特定的配图与用户是否播放影片之间的归因变得清晰。我们还通过关注用户参与的质量来仔细地确定每个观察值的标签,从而避免学习的模型推荐了“标题党”图片:那些诱使用户开始播放,但最终导致低质量参与(很快就关掉)的图片。

Netflix大部分的推荐机制都是采用机器学习的算法。传统方式上,我们会收集一组用户如何使用我们服务的数据,然后在这组数据上采用一种新的机器学习算法。接下来我们会通过A/B测试的方式测试这个算法与当前的系统进行比较。A/B 测试通过一组随机的用户数据去测试新的算法是否比当前的系统更好。A组的成员会得到通过现在的系统生成的图片而B组会得到新的算法所生成的图片。如果B组的用户在Netflix有更高的转化率,那我们就会把这个新的算法推广到整个客户群。但有一点不好的是,这种方式会产生损失(Regret):许多用户在很长一段时间内无法得到这种更好的用户体验。下图展示了这一过程:

为了降低损失(Regret),我们不再采用批量机器学习的方式,而是考虑在线机器学习。针对配图的个性化定制,我们采用的线上学习框架是“上下文老虎JI”(contextual bandits)。相比于以前等着收集一整批次的数据,等着学习一个模型,然后等着一个A/B测试来得出结论,“上下文老虎JI”能针对每个用户和情境快速找出最优的个性化配图选择。简要地说,“上下文老虎JI”是一类在线学习算法,这类算法通过在一个变化的情况下不断将所学模型应用于每个用户情景的好处来平衡收集足够的数据去学习一个无偏模型的代价。在我们之前非个性化的图片筛选框架中,我们用的是“非上下文情境的老虎JI”(non-contextual bandits),这种方法在寻找最佳配图时不考虑上下文情境。而对于个性化来说,用户就是上下文情境,因为我们期望不同的用户对配图有不同的回应。

“上下文老虎JI”的一个重要属性是它们天生就能将损失(Regret)最小化。“上下文老虎JI”的训练数据是通过在学习模型的预测中注入受控的随机化变量获得的。随机化方案的复杂程度可以变化,从具有均匀随机性的简单ε贪婪公式(epsilon-greedy formulations)到能够根据模型的不确定性自适应地改变闭环方案。我们笼统地称之为数据探索(data exploration)。一个影片的所有备选配图数量和系统部署到的用户总体大小决定了数据探索策略的选择。有了这样的探索,我们需要记录关于每个配图选择的随机化的信息。这个记录允许我们修正偏斜的选择倾向,从而如下所述,用不偏倚的方式执行离线模型评估。

由于实际上有的用户的配图呈现选择可能并不会用那次预测中最好的图像,所以“上下文老虎JI”里的数据探索一般都是有一定代价的(Regret)。这一随机化对于用户体验(进而对于我们的指标)有怎样的影响呢?对于超过一亿用户来说,数据探索导致的损失(Regret)一般都很小,而且被隐式地分摊到了我们庞大用户群的每个用户,来帮助提供目录中的一小部分配图的反馈。这使得平均每个用户的数据探索代价微不足道,这对于选择“上下文老虎JI”来运转我们用户体验中的关键部分,是一个非常重要的考量。如果数据探索的代价很高,那用“上下文老虎JI”做随机化和数据探索就会不太合适。

在我们的线上探索方案中,我们获得的训练数据集记录了对于每个(用户,影片名,图片)元组,其对应的影片是否被播放。此外,我们还能够控制数据探索使得配图筛选结果不要改变得太过频繁。这使得特定的配图与用户是否播放影片之间的归因变得清晰。我们还通过关注用户参与的质量来仔细地确定每个观察值的标签,从而避免学习的模型推荐了“标题党”图片:那些诱使用户开始播放,但最终导致低质量参与(很快就关掉)的图片。

-------------------------------------------------------------------------------------------------------------------------------------------------
————————————————
版权声明:本文为CSDN博主「执著Duang」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/yubei2155/article/details/79343942

原文地址:https://www.cnblogs.com/boonya/p/12154240.html

时间: 2024-11-03 04:06:14

Netflix大部分的推荐机制都是采用机器学习的算法的相关文章

趁热打铁第二季《当下大部分互联网创业公司为什么都愿意采用增量模型来做开发?》

<当下大部分互联网创业公司为什么都愿意采用增量模型来做开发?> 这是为什么呢? 究其原因: (1)现在互联网技术日新月异,用户的需求也不是一成不变的.而增量模型的灵活性可以使其适应这种变化大大优于瀑布模型和快速原型模型.并且大部分公司还不能一下子就做出功能完善的的软件.所以采用增量模型来做开发是很符合软件开发潮流的. (2)现在软件开发越来越快,首先开发出具有核心功能的软件来快速占领市场,这样客户就很快有自己的用户量,占领一部分市场. (3)同时也能够加强用户与开发者,客户与用户的交流,以锲合

当下大部分互联网创业公司为什么都愿意采用增量模型来做开发

增量模型与螺旋模型类似,都有迭代的过程,因此优点之一也是允许变更需求,通过向用户演示迭代所产生的部分系统功能,可以尽早地收集用户对于系统的反馈,及时改正对于用户需求的理解偏差,从而保证开发出来的系统真正的解决客户的问题,降低业务偏差的风险. 从软件统一开发过程来看,我们把软件开发生命周期划分为四个阶段,先启阶段确定项目开发的目标和范围,精化阶段确定系统架构和明确需求,构建阶段实现剩余的系统功能,产品化阶段完成软件的产品化工作,将系统移交给客户.其每个阶段的结束标志就是一个主要的里程碑,而每个里程

3.当下大部分互联网创业公司为什么都愿意采用增量模型来做开发

使用增量模型开发软件时,把软件产品作为一系列的增量构件来设计.编码和测试.每个构件由多个相互作用的模块构成,并且能够完成特定的功能,这样公司开发软件时可以将一个软件分成多个构件由多个小团队来完成,提高的开发软件的效率能在较短的时间内完成.同时,增量模型的另一个优点是逐步增加产品功能可以是用户有较充裕的时间学习和适应新产品,从而减少一个全新的软件可能给客户组织带来的冲击.这对互联网创业公司来说可以在利益方面获得了成功.

抖音平台机制有哪些,热门机制算法和好友推荐机制是什么

首先任何人都不会知道抖音的机制具体是什么,有些机制说的人多了,不管真的还是假的,大家也就信了.一定要在账号实际操作过程中,理论结合实际,自己去实践一番. 流量池机制(去中心化) 抖音的流量是去中心化的,哪怕粉丝数量为0,抖动系统也会为发布的视频智能分发几十上百的流量,也就是所谓的流量池,然后根据你在这个流量池里的表现,决定要不要把你的作品推送给更多人.哪怕你的粉丝数是0,只要你有能力产出优质内容,就有机会跟大号竞争. 1.智能分发:以附近和关注为主,再配合用户标签和内容标签.第一推荐到你所发布视

从YouTube算法论文反推其推荐机制

去年,在波士顿举办的第10届ACM推荐系统大会(ACM's RecSys '16)上,来自Google的一个研究团队公布了YouTube推荐系统的深度学习论文:Deep Neural Networks for YouTube Recommendations 论文作者是Google的软件工程师 Jay Adams 与高级软件工程师 Paul Covington.Embre Sargin,他们向业界展示了YouTube在机器学习推荐算法上的深度神经网络使用情况.该论文涉及到一些非常技术.非常高级的细

redis的过期策略都有哪些?内存淘汰机制都有哪些?手写一下LRU代码实现?

redis的过期策略都有哪些? 设置过期时间: set key 的时候,使用expire time,就是过期时间.指定这个key比如说只能存活一个小时?10分钟?指定缓存到期就会失效. redis的过期策略的话 定期删除加惰性删除 定期删除:redis默认是每隔100ms就会随机抽取一些设置了过期时间的key,检查其是否过期,如果过期就删除, 假设redis里放了10万个key,都设置了过期时间,你每隔几百毫秒,就检查10万个key,那redis基本上就死了,cpu负载会很高的,消耗在你的检查过

软件人员推荐书目(都是国外经典书籍!!!)

软件人员推荐书目(都是国外经典书籍!!!) 软件人员推荐书目(一) 大师篇 一. 科学哲学和管理哲学 [1] "程序开发心理学"(The Psychology of Computer Programming : Silver Anniversary Edition) [2] "系统化思维导论"(An Introduction to Systems Thinking, Silver Anniversary Edition) [3] "系统设计的一般原理&qu

4.redis 的过期策略都有哪些?内存淘汰机制都有哪些?手写一下 LRU 代码实现?

作者:中华石杉 面试题 redis 的过期策略都有哪些?内存淘汰机制都有哪些?手写一下 LRU 代码实现? 面试官心理分析 如果你连这个问题都不知道,上来就懵了,回答不出来,那线上你写代码的时候,想当然的认为写进 redis 的数据就一定会存在,后面导致系统各种 bug,谁来负责? 常见的有两个问题: 往 redis 写入的数据怎么没了? 可能有同学会遇到,在生产环境的 redis 经常会丢掉一些数据,写进去了,过一会儿可能就没了.我的天,同学,你问这个问题就说明 redis 你就没用对啊.re

6.redis 的持久化有哪几种方式?不同的持久化机制都有什么优缺点?持久化机制具体底层是如何实现的?

作者:中华石杉 面试题 redis 的持久化有哪几种方式?不同的持久化机制都有什么优缺点?持久化机制具体底层是如何实现的? 面试官心理分析 redis 如果仅仅只是将数据缓存在内存里面,如果 redis 宕机了再重启,内存里的数据就全部都弄丢了啊.你必须得用 redis 的持久化机制,将数据写入内存的同时,异步的慢慢的将数据写入磁盘文件里,进行持久化. 如果 redis 宕机重启,自动从磁盘上加载之前持久化的一些数据就可以了,也许会丢失少许数据,但是至少不会将所有数据都弄丢. 这个其实一样,针对