Spotify「每周发现」:一次内部黑客马拉松如何改变了音乐推荐的边界

2015年,Spotify 的数据科学团队在一次内部黑客马拉松中意识到:用户在平台上拥有数千万首歌,却只是反复听那十几首老歌。解决这个问题的答案,来自于一个关于人类音乐品味的大胆假设。

Spotify「每周发现」:一次内部黑客马拉松如何改变了音乐推荐的边界

Spotify「每周发现」:一次内部黑客马拉松如何改变了音乐推荐的边界

2015年初,Spotify 的数据科学家 Edward Newett 在分析用户行为数据时,发现了一个反常的现象。

平台上有超过3000万首歌,绝大多数用户的月均收听量却集中在那几十首熟悉的歌曲上。更令人沮丧的数据是:当用户打开应用,大多数时候他们点开的是”喜欢的歌曲”或者一个自己几年前建立的老播放列表,然后一遍一遍地听同样的内容。

从商业逻辑来看,这是一个严重的问题。Spotify 每年向版权方支付数十亿美元,拥有全球最大的合法音乐库,但用户实际上把这个庞大的库当作一个只有几十首歌的私人收藏在使用。这意味着 Spotify 最核心的差异化价值——海量曲库——在日常体验中几乎没有被发挥出来。

Newett 把这个发现带到了团队讨论里,提出了一个问题:用户不是不想发现新音乐,他们只是不知道应该从哪里开始。

Echo Nest 收购埋下的种子

理解「每周发现」的诞生,需要先理解 Spotify 在2014年做出的一个战略收购。

2014年3月,Spotify 以约5000到6000万美元的价格收购了总部位于波士顿的音乐情报公司 Echo Nest。这次收购在当时不算新闻头条,但它带来的技术资产,是「每周发现」得以存在的底层基础。

Echo Nest 有两项核心能力。第一项是音频分析:他们能够对任何一首歌曲进行深度的声学特征提取,包括节奏(Tempo)、调性(Key)、能量(Energy)、可舞性(Danceability)、乐器性(Instrumentalness)、现场感(Liveness)等十几个维度的数值,把一首歌变成一个多维向量。第二项是语义分析:通过抓取互联网上数百万篇关于音乐的文章、评论、博客,Echo Nest 建立了一个关于歌手、专辑、歌曲之间语义关联的知识图谱——哪些词语被用来描述哪些艺人,哪些艺人被认为风格相似,哪种音乐被认为适合什么场景。

这两套技术合在一起,给了 Spotify 一个在数据意义上”理解音乐”的能力:不只是知道用户听了什么,还能理解这些音乐本身的特征和文化含义。

收购完成后,Echo Nest 的团队成为了 Spotify 内部推荐算法的核心力量。但真正的突破,需要等到另一种数据被充分利用。

30亿个播放列表的集体智慧

Spotify 在2014到2015年积累了一个在当时规模惊人的数据资产:用户自主创建的播放列表,总数超过30亿个。

这些播放列表,在算法意义上是极其宝贵的信号。每一个播放列表,都是一个人类策划者在表达”这些歌曲属于同一个场景/情绪/品味”。当一个用户把周杰伦的《青花瓷》和陈奕迅的《富士山下》放在同一个播放列表里,这两首歌之间就建立了一种关联——不是基于音频特征的相似,而是基于人类感性判断的相近。

Spotify 的算法团队意识到,如果把30亿个播放列表里所有的歌曲共现关系都提取出来,训练一个类似词向量(Word2Vec)的歌曲嵌入模型,就能得到一个在语义空间里对歌曲进行表示的向量,而这个语义空间是由人类的音乐品味定义的,而不是由音频特征定义的。

简单来说:如果足够多的人把歌曲A和歌曲B放在同一个播放列表里,那么在这个模型里,A和B的向量就会非常接近。这种接近不需要两首歌有相似的节奏或编曲,只需要人们在情感上认为它们”属于一起”。

这个洞见,成了「每周发现」算法的核心信号之一。

黑客马拉松的48小时

「每周发现」不是一个自上而下的战略产品决策,而是诞生于 Spotify 的一次内部黑客马拉松。

2015年初,Spotify 伦敦团队的工程师 Sophia Ciocca(后来她写了一篇关于这段历史的详细文章)和 Edward Newett 等人,用黑客马拉松的两天时间,构建了「每周发现」的第一个原型。

原型的逻辑是:对每个用户,分析他们在过去几个月里播放、跳过、收藏的歌曲,建立他们的”品味向量”;然后在 Spotify 的曲库里,找到与这个品味向量接近但用户从未听过的歌曲;把这些歌曲组成一个30首的播放列表,每周一更新。

原型测试的结果令人惊喜。内部测试者普遍反映,推荐的歌曲确实是他们以前没听过的,但听起来感觉”就是我会喜欢的类型”。

但黑客马拉松的原型还有一个关键问题没有解决:如何确保推荐的歌曲不只是用户品味的回声?如果算法只是推荐和用户已知喜好最接近的歌曲,结果会是一个没有惊喜的、越来越窄的回音壁。

“惊喜”工程:如何设计不可预测性

「每周发现」的最终算法,融合了三种信号:协同过滤(你和品味相似的用户都听了什么)、基于内容的过滤(你听的歌有什么音频特征)、以及基于播放列表的向量表示(哪些歌和你听的歌经常被放在一起)。

但这三种信号的简单融合,还是无法解决”回音壁”问题。Spotify 的算法团队发现,当推荐的准确度过高时,用户反而会感到一种隐性的不满——每首歌都在预期之内,没有任何惊喜,听起来就像是在重放他们已经知道的音乐世界。

解决方案是刻意引入”温度”(Temperature)参数。推荐算法不会总是选择分数最高的歌曲,而是按照一定的概率权重,从高分候选中以一定随机性抽取,让一些分数稍低但可能带来惊喜的歌曲有机会出现。

这个设计,把推荐系统从”精准预测”变成了”有根据的探索”——大多数歌曲是算法有把握用户会喜欢的,但偶尔会出现一首算法认为”用户可能不知道自己会喜欢,但基于相关信号值得一试”的歌。这种偶发的惊喜,成为了「每周发现」最被用户提到的特质:它知道你,但不是完全知道你。

2015年6月:正式上线

「每周发现」于2015年6月正式向全体用户推出。

上线的方式很克制:没有大规模的推广,没有应用内的通知轰炸,只是在每周一早上,用户打开 Spotify,发现首页多了一个新的播放列表,标题是”Discover Weekly”。

第一周,大约500万用户使用了这个功能。第二周,这个数字翻倍。到第一个月结束,「每周发现」的用户数达到了4000万,成为 Spotify 历史上传播速度最快的功能之一。

传播的动力不是推广,而是真实的惊喜反应。Twitter 上开始出现大量”Discover Weekly 又一次推荐了我超爱但从没想到的歌”的帖子,附带着截图和播放列表。这种用户自发的内容分享,比任何广告都有效——它向潜在用户传递的信息是:有人比你更了解你的音乐品味,而那个”人”是一个算法。

对于 Spotify 的商业指标,「每周发现」带来的影响是清晰可量化的:使用这个功能的用户,平均每月在平台上的时间显著增加;他们收藏的新歌数量提升;最重要的是,他们的留存率明显高于不使用这个功能的用户。

Echo Nest 的文化遗产

「每周发现」的成功,使 Spotify 在随后几年里持续投入个性化推荐功能的建设。每日混合(Daily Mix)、发布雷达(Release Radar)、时光机(Time Capsule)——这些功能都建立在 Echo Nest 技术遗产和「每周发现」算法经验的基础上。

2015年,Spotify 将 Echo Nest 作为独立品牌保持运营,但2017年,Spotify 正式将 Echo Nest 品牌并入 Spotify,标志着这次收购的完全整合。Echo Nest 的音频分析能力,成为了 Spotify 所有推荐功能的底层技术基础设施。

从更宏观的角度来看,「每周发现」对整个音乐流媒体行业的影响是深远的。苹果音乐在2015年启动时没有类似的个性化推荐系统,这是 Spotify 在用户体验上最显著的差异化优势之一。推荐算法最终成为音乐流媒体平台最核心的竞争力——不是曲库的大小(所有大平台的曲库都足够大),而是如何帮助用户从这个库里发现对他们有价值的内容。

「每周发现」证明了一件事:当技术真正服务于人类的需求,而不是展示技术本身的能力时,结果是用户真诚的、发自内心的接受。那些”它怎么知道我喜欢这首歌”的反应,不是对技术复杂性的赞叹,而是对一个系统真正理解了你的认可。

“最好的推荐不是给你你想要的东西,而是给你你不知道自己需要的东西。我们的目标不是预测用户,而是扩展他们的音乐世界。” — Spotify 推荐系统团队