Netflix推荐系统(Part Five)-国际化和本地化推荐

Netflix在130个国家上线,面对视频可用性不均、文化差异、语言障碍及算法效果跟踪四大挑战,优化推荐系统。通过整合地理和时间访问信息、建立全球模型、优化多语言搜索及改进算法监测,提升全球用户体验。

原文来自Recommending for the World。这并不是完全和完整的翻译稿,而是一种总结和笔记。如果发现任何侵权行为,请联系我。

截止到2016年1月6日,Netflix同时在全球130个新国家上线, 超过190个国家。Netflix需要 准备好快速扩展,同时确保每个算法都可以无缝地工作,这为他们的推荐和搜索团队带来了新的挑战。 在这篇文章中,他们重点介绍了他们在使算法在全球范围内运行时遇到的四个最有趣的挑战,以及解决这些挑战如何提高了他们的推荐能力。

Challenge 1: Uneven Video Availability

众所周知,在全球的不同国家和地区的版权许可是不同的,这会导致有些异常信号发生。例如,电影A可能会在美国的Netflix上播出,电影B只在法国上市。而正常的推荐模型在很大程度上依赖于play数据的学习模式,特别是涉及视频之间的共现或播放序列。特别是,许多算法假设当某些东西没有播放时,它是一个(弱)信号,表达人们可能不喜欢它。但是,在这种特殊情况下,推荐系统永远不会观察到同时播放A和B的用户。一个基本的推荐模型会知道这两部电影只是因为观众被限制为不同而不能吸引同一类人。但是,如果A和B可以同时播放,则可能会观察到视频之间以及观看视频的用户之间的相似性。从这个例子可以看出,不同的视频可用性可能会干扰推荐系统的质量。

在搜索体验上也有类似的问题。不考虑可用性差异会降低搜索排名的质量。 例如,一个普通的排名算法的给定查询的最高结果可能将视频A排在视频B前面,但只有很少的人才能播放视频A,而大家都可以播放视频B。

内容许可证的另一个方面是它们具有开始和结束日期,这意味着类似的问题不仅出现在各国之间,而且还出现在特定国家/地区内。一个短时间可用的小众视频可能比一个长时间的知名视频更具吸引力,但后者可能会有更多的参与度。

可以想象这些问题可能会对更复杂的搜索或推荐模型产生影响,因为它们已经在诸如流行度这样简单的事情中引入了bias。 解决地理位置和时间不均衡可用性问题则算法可以为新服务提供更好的推荐。 他们将user根据地理和时间访问不同目录的信息合并到每个算法中,处理缺失数据和bias。

Challenge 2: Cultural Awareness

文化差异对于推荐是非常重要的,但这并不绝对。比如说宝莱坞在印度应该更受欢迎,而阿根廷的用户可能更喜欢阿根廷电影。但如果两个用户都是科幻电影的爱好者,并且除了地区之外的profile信息都相似,那他们也应该得到相似的推荐。
捕捉local preference的一个简单方法是为各个国家建立不同的模型。 但是,有些国家规模很小因此只能获得很少的用户数据,在这种稀疏数据上训练推荐算法会导致噪声结果,因为模型很难从数据中识别出清晰的个性化模式。

在Netflix进行全球扩张之前,他们的方法是将国家分组到具有相对一致的目录和语言的合理规模的区域,然后为每个区域构建单独的模型。这可以捕捉区域之间的taste差异,因为不同模型的超参数的调整方式不同。在一个地区内,只要有足够的成员具有一定的口味偏好和合理的历史数据,推荐模型应该能够识别和使用该偏好的模式。但是,这种方法存在一些问题。首先,在一个地区内,来自一个大国的数据量将占据该模型的主导地位,并削弱模型了解一个用户数量较少的国家的local taste的能力。如何保持分组也是一个挑战,因为内容目录随着时间的推移而变化,用户数量也在增加。最后,因为他们在许多算法中不断运行模型变量的A / B测试,所以涉及越来越多区域的组合变得势不可挡。

为了应对这些挑战,他们寻求将区域模型合并为一个单一的全球模型的方法,该模型有利于在用户较少的国家提供更好的推荐体验。当然,即使将数据结合起来,推荐系统仍然需要识别不同地区的品味差异根据迄今为止看到的数据,local taste和personal taste都会影响用户的选择。但总的来说,如果一个用户喜欢科幻电影,那么世界另一端也喜欢Sci-Fi的人会比他们喜欢食物纪录片的隔壁邻居更有参考价值。能够发现全球感兴趣的社区意味着可以进一步改进推荐系统,因为它们将基于更多数据。使用全局算法也有利于识别随时间出现的新的或不同的taste模式。

为了优化模型,他们可以使用有关内容和成员的许多signal。在这种全球背景下,两个重要的信号可能是语言和位置。他们希望让自己的模型不仅能够了解user登录的位置,还能了解视频的各个方面,例如视频的来源,所处的语言以及受欢迎的位置。

Challenge 3: Language

Netflix现已发展到支持21种语言,他们的内容库包含比以往更多的本地内容。这种增加导致了许多挑战,特别是对于上面提到的即时搜索算法。该算法的关键目标是帮助每个成员在搜索时找到可以播放的内容,同时最大限度地减少交互次数。这与用于评估信息检索系统的标准排名度量不同,后者不考虑交互量。在查看交互时,很明显不同的语言涉及非常不同的交互模式。例如,韩语通常使用韩语字母键入,其中音节由单个字符组成。例如,要搜索“올드보이”(Oldboy),在最糟糕的情况下,成员必须输入九个字符:“ㅇㅗㄹㄷㅡㅂㅗㅇㅣ”。使用视频标题的基本索引,在最好的情况下,成员仍然需要键入三个字符:“ㅇㅗㄹ”,它将在该标题的第一个音节中折叠:“올”。在为韩文编写的特定索引中,成员只需要编写一个字符:“ㅇ”。使用最少的交互集优化最佳结果,并自动适应具有显着不同书写系统的新引入的语言,这是他们正在努力改进的领域。

另一项与语言相关的挑战涉及推荐。如上所述,虽然taste模式在全球范围内传播,但最终人们最有可能享受以他们理解的语言呈现的内容。例如,可能有一部很棒的法国科幻电影,但如果没有英文字幕或音频,就不应该推荐给喜欢科幻电影但只会说英语的会员。但如果用户同时说英语和法语,这就很有可能是适当的推荐。人们也喜欢观看最初用他们的母语或其它常用语制作的内容。虽然我们不断尝试为我们的内容添加新的语言字幕和配音,但我们还没有为所有内容提供所有语言。此外,不同文化下的用户对于使用字幕或配音观看也有不同的偏好。将这些结合起来,可以看到推荐可以通过对语言偏好的认识来提高。但是,用户理解哪些语言是很难明确定义的,因此我们需要从辅助数据和观看模式中推断出它。

Challenge 4: Tracking Quality

Netflix的目标是构建对所有用户同样有效的推荐算法,无论他们住在哪里或说什么语言。他们现在面临的挑战是如何确定算法何时对用户的某些子集来说是次优的。

为了解决这个问题,可以通过手动切片一组维度(国家,语言,目录…)来查看算法的性能。然而,这些切片中的一些导致非常稀疏和嘈杂的数据。他们也可以查看全球观察到的指标,但这会极大地限制检测问题的能力。另一种方法是学习如何最好地将观察分组,以便自动检测异常值和异常。正如他们致力于改进推荐算法一样,他们正在创新衡量指标,设备和监控以提高通过它们检测新问题的能力。

代码转载自:https://pan.quark.cn/s/a4b39357ea24 本文重点阐述了利用 LabVIEW 软件构建的锁相放大器的设计方案及其具体实施流程,并探讨了该设备在声波相位差定位系统中的实际运用情况。 锁相放大器作为一项基础测量技术,其核心功能在于能够精确锁定微弱信号的频率参数并完成相关测量工作。 在采用 LabVIEW 软件开发的锁相放大器系统中,通过计算测量信号与两条参考信号之间的互相关函数,实现对微弱信号的频率锁定,同时输出被测信号的幅值信息。 虚拟仪器技术是一种基于计算机硬件平台的仪器系统,其显著特征在于用户可以根据实际需求自主设计仪器功能,配备虚拟化操作界面,并将测试功能完全由专用软件程序实现。 虚拟仪器系统的基本架构主要由计算机主机、专用软件程序以及硬件接口模块等核心部件构成。 虚拟仪器最突出的优势在于其功能完全取决于软件编程,用户可以根据具体应用场景灵活调整系统功能参数。 在基于 LabVIEW 软件开发的锁相放大器系统中,主要运用 LabVIEW 软件平台完成锁相放大器功能的整体设计。 LabVIEW 作为一个图形化编程环境,能够高效地完成虚拟仪器的开发工作。 借助 LabVIEW 软件,可以快速构建锁相放大器的用户操作界面,并且可以根据实际需求进行灵活调整功能扩展。 锁相放大器系统的关键构成要素包括测量信号输入通道、参考信号输入通道、频率锁定处理单元以及信号幅值输出单元。 测量信号是系统需要检测的对象,参考信号则用于引导系统完成对测量信号的频率锁定。 频率锁定处理单元负责实现测量信号的锁定功能,信号幅值输出单元则负责输出被测信号的幅值大小。 在锁相放大器的实际实现过程中,系统采用了双路参考信号输入方案来锁定测量信号。 通过分析两路参考信号之间的相...
边缘计算环境中基于启发式算法的深度神经网络卸载策略(Matlab代码实现)内容概要:本文介绍了在边缘计算环境中,利用启发式算法实现深度神经网络任务卸载的策略,并提供了相应的Matlab代码实现。文章重点探讨了如何通过合理的任务划分与调度,将深度神经网络的计算任务高效地卸载到边缘服务器,从而降低终端设备的计算负担、减少延迟并提高整体系统效率。文中涵盖了问题建模、启发式算法设计(如贪心策略、遗传算法、粒子群优化等可能的候选方法)、性能评估指标(如能耗、延迟、资源利用率)以及仿真实验结果分析等内容,旨在为边缘智能计算中的模型推理优化提供可行的技术路径。; 适合人群:具备一定编程基础,熟悉Matlab工具,从事边缘计算、人工智能、物联网或智能系统优化方向的研究生、科研人员及工程技术人员。; 使用场景及目标:①研究深度神经网络在资源受限设备上的部署与优化;②探索边缘计算环境下的任务卸载机制与算法设计;③通过Matlab仿真验证不同启发式算法在实际场景中的性能表现,优化系统延迟与能耗。; 阅读建议:建议读者结合提供的Matlab代码进行实践操作,重点关注算法实现细节与仿真参数设置,同时可尝试复现并对比不同启发式算法的效果,以深入理解边缘计算中DNN卸载的核心挑战与解决方案。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值