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

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

3天内不再提示

使用机器学习对Spotify主页面进行个性化设置

Tensorflowers 来源:TensorFlow 作者:TensorFlow 2020-11-18 17:26 次阅读

机器学习是我们在 Spotify 所做一切的核心所在。特别是在 Spotify 的主页面上,它使我们能够提供个性化的用户体验,并为数十亿粉丝提供欣赏艺术家作品并从中获得启发的机会。这就是 Spotify 的独到之处。

在我们的工程部门,我们正在努力联合自主团队,通过建立工具和方法上的最佳实践来提升工作效率。我们最近采用的标准化机器学习基础架构为我们的工程师提供了能够快速创建和迭代模型的环境和工具。我们称其为 “铺平道路” 方法,其中包括利用 TensorFlow,Kubeflow 和 Google Cloud Platform 的服务。

加入 Spotify 之前,我曾在 Netflix 从事个性化算法和主页面内容的工作。我以前的经验与现在我在 Spotify 担任工程副总裁兼机器学习负责人的工作非常相似。但是,个性化 Spotify 的主页面会带来一系列新的挑战,我将稍后分享。

机器学习使我们能够推荐艺术家,歌单和播客,从而使用户变得更佳活跃并更有可能长期订阅。理论上这些都很棒,但是怎样能使我们比竞争对手做得更好呢?毕竟,我们并不是唯一一家试图构建定制化着陆页,以其独特价值吸引用户的内容流媒体平台。

Spotify 的主页面

答案:个性化的力量

与 Netflix 一样,我们使用一系列的卡片和架子来组织主页面。卡片是用来展示歌单,播客,专辑,艺术家页面等内容的方形图像。架子是用来将这些卡片打包并排成一行。您可以将它想象为一个书橱(Spotify 主页面)在使用书架(架子)来保存和展示图书(卡片)。

以此类推,每个人的书架都会根据他们的兴趣和阅读历史来进行特别的布置。但是,与实体书架不同,Spotify 使用机器学习根据用户之前喜欢或可能喜欢的内容来个性化架子和卡片,并向数百万用户个性化地展示。

我们将机器学习与用户的数据相结合,包括他们的播放历史、音乐口味、播放时长以及他们对推荐内容的喜好程度。这样的结合使得我们拥有了高级别的个性化能力,能够实时创建个性化主页面满足多达 2.48 亿月活跃用户 (MAU, Monthly Active Users) 的需求。我们要说的是,并没有“一个”真正的 Spotify。实质上,该产品有 2.48 亿个版本,每个用户都在使用专属于他们的独特版本!

卡片和架子

参与度与基于研究的推荐

从机器学习的角度来看,我们使用 Multi-Armed Bandit 作为框架解决利用与探索的难题。在工程领域之外,“利用”可能具有负面含义。但是,在制造个性化内容体验的推荐系统中,“利用”表示应用程序会根据用户先前选择的音乐或播客提供推荐内容。“探索”通过推荐未知内容,根据用户与推荐内容的互动反馈以进一步了解用户的喜好。“利用”与“探索”大不相同,后者基于不确定的用户参与度,并且更多的被用作研究工具。这种平衡框架确保我们在面对无论是新用户还是老用户都能实现个性化设置。我们还采用反事实训练和推理来评估我们的算法,而无需 A/B 测试或随机实验。

利用与探索
https://dl.acm.org/doi/10.1145/3240323.3240354

借助来自用户的数据,我们得以呈现您喜欢的内容,这些数据包括最近播放的专辑,反复播放的曲目和订阅的播客等。同时,我们会根据收听历史记录推荐新的曲目和艺术家。这些曲目打包成歌单的形式,例如歌单“更加喜欢”,“为您推荐”和“为您定制”。尽管主界面看起来自然且连续,但是您看到的几乎所有内容都是由“利用与探索” (Exploitation and Exploration) 方法生成的。

当然,只有在不间断地使用大量数据进行实验时,此方法才有效。为了让您直观地感受到规模上的差别,我们再次将 Spotify 主页面与 Netflix 的主页面进行比较。两个主页面都有相似的设置和挑战,对吗?不完全对。最大的区别在于用户和内容数据的规模大小,随之而来的便是我们必须扩展机器学习的规模以匹配如此大规模的需求。

数字说明了一切。Netflix 拥有约 1.58 亿用户,在 Spotify,我们有 2.48 亿用户。最重要的是,Netflix 在所有地区共计拥有约 5,800 部电影和节目,而 Spotify 却拥有超过 5,000 万首音乐曲目和 500,000 个播客电台。

还要注意的是,单集 Netflix 的内容的时长是从半小时(类似于情景喜剧)到长达几个小时(电影)。而 Spotify 上面的一支曲目的典型时长大概是三分半钟。考虑到需要索引的内容数据的频率和数量,这会导致在规模上的巨大差异。

结果呢?就是我们需要一个高度可扩展的环境,让我们可以运行大量、不间断的实时实验,从而使我们能够更好地利用我们的数据,为听众提供出色的体验。

从脆弱到牢不可破

在 Spotify 成立之初,我们编写了许多自定义资料库和 API,以推动我们的个性化工作背后的机器学习算法。这向机器学习团队提出了一些挑战。在尝试扩展我们的机器学习实践时,支持多个系统对于我们的工程师而言并不是理想的维护方式,并且与我们当前为提高工程师生产力所做的努力不符。

例如,我们需要研究 Multi-Armed Bandit 框架下的不同学习模型,包括逻辑回归,提升树 (Boosted Tree) 和更复杂的模型,如最新的深度神经网络体系结构。我们一直在不断重写代码,以使系统的各部分保持一致。完成一项实验后,留给我们的是一个有隐患而脆弱的系统,扩展性也很差,还需要在快速的生产环境中支持多个框架。在这种环境下是很难进行迭代和创新的。

这就是为什么我们转向标准化机器学习基础架构如此宝贵和及时的原因。TensorFlow Estimators 和 Tensorflow Data Validation 帮助我们最大程度地减少许多以前需要人工自定义的工作量。借助 TensorFlow Estimators,我们可以比以前更快地训练和评估模型,从而大大加快了迭代过程。

此外,迁移到 Kubeflow 非常有价值,因为它帮助我们更好地管理工作负载,并加快实验和产出 (Roll out) 的速度。现在,更快的自动训练显著加速了我们的机器学习算法的训练过程。

使用 Tensorflow Data Validation,我们无论在开发过程中还是在评估和产出期间均可以发现数据流水线和机器流水线中的错误。现在,借助仪表板,我们可以快速观察到流水线中存在的任何数据缺失或不一致之处,这要归功于仪表板所绘制的不同数据集上的要素和计数的分布图。

在一种情况下,我们看到训练数据中缺少付费会员的样本,而评估流程中缺少了免费用户的数据样本。从机器学习的角度来看,丢掉这些有价值的数据集是很可怕的,所幸我们可以用 TFDV 快速捕获它。更棒的是,我们还可以配置仪表板针对特定阈值触发警报,因此我们的工程师不必担心数据流水线的错误会流入系统。

架构升级带飞研发

为用户创建个性化主页的体验代价不菲。以前,我们的工程师花费大量时间来维护数据和后端系统。后来我们使用前文提到的工具(TensorFlow Extended、Kubeflow 和 Google Cloud Platform 生态系统)对我们的 ML 基础架构进行标准化。ML 架构标准化让我们在工程实践和生产力方面有了更好的理解。我们新近建立的最佳实践有一个显著优势,即它可以帮助我们在短期内大大提高用户满意度(对比基于流行度的基线)。

话虽如此,我们的实践只是初出茅庐。我们决定继续研究如何掌控机器学习与 AI 的力量,为我们的用户提供更加个性化的体验。

投资技术就是投资工程师

我们对这些技术的投资也是对机器学习工程师及其生产力的投资。我们希望我们的工程师专注于创新,并在 Spotify 推动机器学习的发展,而不是参与耗时的基础架构维护工作。我们的工程文化围绕着尽可能高产和高效的原则来帮助我们继续扩展平台,同时也为创作者和消费者创造了良好的用户体验。

定制 Spotify 主页面只是 Spotify 个性化的冰山一角。机器学习是一个令人兴奋的创新领域,我们仍在不断努力解决创建个性化体验方面的挑战。如果您有兴趣帮助我们解决机器学习工程方面的挑战,欢迎查看招聘职位并加入我们的团队。

责任编辑:lq

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

    关注

    87

    文章

    26443

    浏览量

    264044
  • 机器学习
    +关注

    关注

    66

    文章

    8122

    浏览量

    130558
  • Spotify
    +关注

    关注

    0

    文章

    25

    浏览量

    2618

原文标题:案例分享 | 悦耳为君:使用机器学习对 Spotify 主页面进行个性化设置

文章出处:【微信号:tensorflowers,微信公众号:Tensorflowers】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    Spotify测试四大主题在线学习服务:音乐、创意、商务及健康生活

    英国用户可在 Spotify App 的主页和浏览选项卡等位置寻找课程页面,而在完成课程内容后,用户还能探索各大类别下的更多课程,且可以直接通过桌面或移动端进行购买和
    的头像 发表于 03-26 10:56 113次阅读

    激光打标机:精准定位,实现个性化标识需求

    激光打标机:精准定位,实现个性化标识需求激光打标机,以其精准定位的特性,成为实现个性化标识需求的得力工具。在现代制造业中,个性化标识已成为产品差异化、品牌塑造和提升附加值的重要手段。激光打标机通过
    的头像 发表于 03-19 19:43 124次阅读
    激光打标机:精准定位,实现<b class='flag-5'>个性化</b>标识需求

    WT588F02B-C015语音芯片:内置丰富资源,助力个性化功能产品定制

    随着科技的飞速发展,语音芯片在众多领域中扮演着越来越重要的角色。作为一款备受瞩目的语音芯片,WT588F02B-C015(IO扩展)语音芯片凭借其内置丰富的资源和功能,成为了客户个性化产品定制的优选之一。本文将详细介绍WT588F02B-C015语音芯片的特点及其在个性化
    的头像 发表于 12-01 09:29 201次阅读

    普渡机器人为人们提供更具个性化和人文关怀的服务

    人 CC1。这五位机器人是布尔根兰州的首批机器人员工,主要职责是打扫卫生、配送物品及餐食,以及作为迎宾服务员招揽顾客并与客人进行交流。 “我们一直在思考如何让我们的员工有更多的时间与客人互动,以便提供更具
    的头像 发表于 10-27 17:00 930次阅读

    HarmonyOS SDK,赋能开发者实现更具象、个性化开发诉求

    随着移动互联网的逐步成熟,用户的需求越来越细化。鸿蒙生态为开发者提供的HarmonyOS SDK开放能力,高效赋能美团外卖等合作伙伴实现更具象、个性化的开发诉求,给用户提供更丰富便捷的体验。
    发表于 10-24 17:34

    大规模个性化定制研究综述!

    进入新千年,大规模个性化定制的研究逐渐成为热点。2000 年,Gilmore J H,Joseph Pine再次提出“大规模个性化旨在通过客户参与价值共创(Value Co-creation)过程并充分体验企业排他的或首选的个性化
    的头像 发表于 10-22 09:40 1004次阅读
    大规模<b class='flag-5'>个性化</b>定制研究综述!

    CryptoAuthentication个性化指南

    电子发烧友网站提供《CryptoAuthentication个性化指南.pdf》资料免费下载
    发表于 09-25 15:06 0次下载
    CryptoAuthentication<b class='flag-5'>个性化</b>指南

    AI智能呼叫中心

    智能呼叫中心通过深度学习和大数据分析,能够准确识别、分析和记录用户的个人信息、历史记录和偏好,从而为用户提供更加个性化的服务。例如,在用户拨打电话进入呼叫中心时,AI智能呼叫中心可自动弹出用户的个人资料
    发表于 09-20 17:53

    中科大提出:LLMs的个性化综述,详述大模型与个性化的挑战与机遇

    因此,我们认为现在是时候审视个性化服务的挑战以及用大型语言模型来解决它们的机会了。特别是,我们在这篇展望性论文中专门讨论了以下几个方面:现有个性化系统的发展和挑战、大型语言模型新出现的能力,以及如何利用大型语言模型进行
    的头像 发表于 08-21 16:33 556次阅读
    中科大提出:LLMs的<b class='flag-5'>个性化</b>综述,详述大模型与<b class='flag-5'>个性化</b>的挑战与机遇

    机器学习theta是什么?机器学习tpe是什么?

    解一下theta。在机器学习中,theta通常表示模型的参数。在回归问题中,theta可能表示线性回归的斜率和截距;在分类问题中,theta可能表示多项式模型的各项系数。这些参数通常是通过训练数据自动学习得到的,而不是手工
    的头像 发表于 08-17 16:30 1226次阅读

    Nike透明屏:个性化设计,如何定制一套呢?

    Nike透明屏是一款创新的技术产品,它将透明屏幕技术应用于运动鞋上,为用户提供了全新的使用体验。它具有透明度高、防水功能、智能化的特点,同时还具有个性化的设计。这款产品将为户外运动爱好者带来更加便捷、安全和个性化的运动体验。
    的头像 发表于 08-03 16:13 350次阅读
    Nike透明屏:<b class='flag-5'>个性化</b>设计,如何定制一套呢?

    【原创分享】PADS Logic如何对原理图页面进行操作呢?

    的原理图,再右击选择复制,如图1所示。即对当前页面被选择的元素拷贝完成,以在本原理图方案中进行粘贴,也可以在其他原理图方案中进行粘贴。 图1页面复制选项 2. 
    的头像 发表于 07-08 07:35 635次阅读

    使用机器学习进行预测

    电子发烧友网站提供《使用机器学习进行预测.zip》资料免费下载
    发表于 07-04 10:22 0次下载
    使用<b class='flag-5'>机器</b><b class='flag-5'>学习</b><b class='flag-5'>进行</b>预测

    PyTorch教程21.6之用于个性化排名的神经协同过滤

    电子发烧友网站提供《PyTorch教程21.6之用于个性化排名的神经协同过滤.pdf》资料免费下载
    发表于 06-06 09:30 0次下载
    PyTorch教程21.6之用于<b class='flag-5'>个性化</b>排名的神经协同过滤

    PyTorch教程21.5之推荐系统的个性化排名

    电子发烧友网站提供《PyTorch教程21.5之推荐系统的个性化排名.pdf》资料免费下载
    发表于 06-06 09:29 0次下载
    PyTorch教程21.5之推荐系统的<b class='flag-5'>个性化</b>排名