当你按下“随机播放”时,QQ音乐和网易云们都做了什么?

图片
下班了,又一次走进熟悉的地铁站,听着已经听过无数遍哐当哐当的地铁轨道声,你突然觉得每天的日子有点乏味和单调,就像太阳每天从东边升起,又从西边落下。
戴上耳机,打开你最喜欢的歌单,就像往常那样。你点下随机播放的按钮,希望把掌控权交给播放器和算法,让它们带给你一点未知的新鲜。
你有没有想过,随机播放算法究竟是如何给我们呈现一个随机歌单的?
「真随机」还是「伪随机」
历史上最经典的随机音乐播放器,应该还要数 iPod Shuffle。
2005 年的时候,苹果公司推出了经典的 iPod Shuffle,iPod Shuffle 在当时来说可以算是一个异类,那时候的音乐播放器(还在直接叫 MP3 的时代)基本上都已经有了一块用来显示音乐信息的屏幕,用户可以自由的选择自己喜欢的音乐,甚至有些 MP3 还能播放视频,比如 2006 年没魅族推出的 miniplayer M6 已经搭载了 2.4 英寸显示屏。
图片
而 iPod Shuffle 没有屏幕,整体比起苹果自家的 iPad Nano 来说也来的简陋。但最大的问题是,用户如何选择自己喜欢的歌曲?
答案是随机列表,你可以通过 iTunes 同步你喜欢的音乐,也可以直接同步一个你喜欢的播放列表,但是在 iPod Shuffle 上,你所能获取的最大感受是「随机播放的魅力」。
实际上,我们所说的「随机播放」常见的方式有两种,一种叫「Shuffle」,一种叫「Random」。
图片
▲ 洗牌算法. 图片来自:9to5Mac
Shuffle 一般叫做「洗牌算法」,它的原理是像扑克洗牌一样,将不同数量的扑克牌进行随机排列就能得到一个乱序的顺序。随机播放歌单也是如此,每次播放的时候会将这个列表中的歌曲进行洗牌,从而获得一个乱序的播放,也就是「伪随机」算法。
而 Random 则是真正的随机播放,也就是说每次切换音乐都是独立的未知数,会随机到不同的音乐,就像「抓阄」一样,它没有列表的概念,所以没有上一首和下一首的概念,是「真随机」算法。
怎么判断是「真随机」还是「伪随机」,其实只要按下「上一首」就知道了,如果切换到是你刚才听过的那一首,那就是「伪随机」的洗牌算法,如果是每次都在切换不同的歌,那么就是「真随机」算法。
图片
▲ 洗牌算法本质来自洗扑克牌. 图片来自:Phys.org
这两种哪种方法更好一些?对于目前的用户来说,洗牌算法要更能接受一些,理论上它更加具备可控性,又能满足用户乱序播放的要求,还能防止重复听到一首歌的可能性。
目前在各大音乐 App 中用得比较多的是「洗牌算法」,比如用户数量很大的网易云音乐和 QQ 音乐等播放器都在使用。
好的随机算法应当是怎样的
但即便「洗牌算法」本身有足够多的优点,但原始的「洗牌算法」已经无法满足日益增长的听歌需求,或者说也有播放器越改越糟糕的情况。比如知乎提问中,很多人都感觉网易云音乐的随机算法有着很大问题,比如只放一小部分固定的歌曲,而有些歌曲似乎永远随机不到。甚至有的用户还表示自己删除的一首歌曲还能被随机到。
图片
其实 App 对于这个「随机列表」是有干预的,而并非简单的进行洗牌,而但从结果上说,到底用户感知是好还是差,就看各家对于「洗牌算法」的理解和设计了。尽管吐槽网易云算法的用户不少,但也并不影响推荐歌单和评论等受到欢迎的功能。
根据知乎简介为 QQ 音乐产品经理的用户刘彦彬的回答,在洗牌算法之中也会掺杂更多的大数据算法干预:
根据产品团队调研,用户想要的其实不是真正的「随机播放」,而是用户更多是不知道听哪首,更多是选择困难,希望能帮我做决定。而且,尽量的符合我当前的心境。
随机算法可以解决选择困难,但是并不能真正解决用户需要的心境,因为「洗牌算法」并不会知道用户究竟想要什么。但是音乐应用其实是可以做到这一点的,在足够大的个人听歌数据样本和大数据调研情况下,算法可以做出一些判断,用户此刻更想要听哪些歌。
图片
举个简单的例子,比如说在夜深人静的深夜点开随机播放,那么用户很大可能性是不想听比如金属、摇滚等过于吵杂的音乐,结合用户以往的听歌历史,这个时候随机算法就会根据用户当前的环境时间,更多的随机到轻音乐。
不然你以为那些听歌报告为什么那么详细,你夜里不睡觉循环了多少遍哪首歌,它都一清二楚。
QQ 音乐产品经理刘彦彬还总结了好的随机算法应该具备的几条特征:
记录我本地或最近一段时间的听歌记录,尽量在随机时不会推荐出来,保证随机的新鲜感
洗牌算法做好,尽可能的隔开某个歌手,某张专辑,让用户从感官上感觉是一个随机列表
可以在本地做用户操作记录,比如跳过歌曲的次数,对用户不感兴趣的歌曲进行降权或者过滤,精选随机的池子
在对歌曲标签丰富后,可以做的事情就更多了,比如根据当前的场景,推荐本地适合收听的歌曲优先随机播放,这些都有助于让用户感知智能。
图片
▲ Spotify 的随机播放. 图片来自:REGENDUS
即便是对于 Spotify 这样的流媒体音乐,依然有许多用户会觉得随机播放不「随机」,Spotify 的洗牌算法当然是随机的,但他们开始思考为什么用户会这样觉得。
从基础上说,Spotify 从提供服务开始就用的是Fisher-Yates 洗牌算法,他们觉得这个洗牌算法做的最出色。
▲ 如果用不同颜色代表不同歌手,这意味完全真随机时,上下两种列表都可能出现
不过,Spotify 一开始并不理解用户说的「不随机」是什么意思,但在研究之后发现,用户的核心理念是不希望一位歌手在短时间内重复出现,但这里其实用户陷入了了一个经典的「赌徒谬论」,当人们连续几次没有中彩票时,就会认为自己下次中奖的几率会增大,而其实每次概率都是独立而相同的。
但如果用户连续听到某一位歌手的作品时,他们就会粗暴的觉得这个算法「有问题」。
结论表示,用户并不喜欢「完美的随机」。
比起「完美」,用户更喜欢的是「平衡」
那什么是「不完美的随机」?
在马丁·菲德勒(Martin Fiedler)的博客文章「混洗音乐的艺术」中,他展示了为什么完全的随机列表是糟糕的。
假设在你的播放器中存在三种不同曲风的流派分别是 A、B、C,其中 A 有 10 首,B 和 C 都是 11 首,一共 32 首歌。如果使用真正的随机算法来洗牌会出现怎样的情况?可能是:
AACBBCBACABBCCACCCCABBACBACABABB
其中出现了连续的 C 曲风流派,以及在四分之一的时间里是没有 B 曲风流派的,对于用户来说,重复单一的曲风无疑是糟糕的。而绝对的随机算法,很可能在大部分情况下都会生成这种糟糕的播放列表,因为绝对的随机也意味着「不平衡」。
图片
▲ 图片来自:Marie Claire
更好的随机里列表是为了满足用户无法下决定但又想要获得新鲜感的心理,这时就应该尽可能的避免重复和单调,所以下面这种播放列表才是更合适的:
ABCBCABACBACBCABCACBABCACBACBCAB
Spotify 借鉴了这个算法,但将之修改为更适合自己的方式,并且同时借鉴了抖动算法(例如 Floyd–Steinberg抖动),最终将歌曲更加均匀平衡的分散到播放列表之中。
就是这样,今天,各家的随机播放算法虽然大都基于「洗牌算法」的模式,但也都有着自己的「调味秘方」,有的用户会喜欢,也有做的糟糕的,不停被用户吐槽的。
但本质上,随机播放算法的重点不在于「随机」,而是一场产品和用户之间的心理博弈对决,甚至它们会随着你的听歌习惯的逐渐养成,自身也在改变着随机歌单的加权倾向。
越听,它们就会越了解你。

两个鬼故事韩翃的简介大泽佑香零食起名电视剧三十而已全集在线观看免费凤姐结婚照微信号怎么起名才好听鸡年女宝杨姓起名三藏起名网免费取名字史姓女宝起名大全abcc的词语随机惩罚一名幸运观众声字取名男孩起名大全两字起名大全关姓起名字兽宴2012年日历姓氏肖的起名鼠年起名用晨好吗狗年宝宝女孩起名大全给姓贾的女儿起个名怎么清理c盘斗罗大陆马红俊玩阿银车厘子是什么英雄联盟ud集团起名大全霸气郑州市车管所保罗乔治受伤赞美母亲的诗句雁归西窗月电视剧免费观看完整版起名不能两个字了少年生前被连续抽血16次?多部门介入两大学生合买彩票中奖一人不认账让美丽中国“从细节出发”淀粉肠小王子日销售额涨超10倍高中生被打伤下体休学 邯郸通报单亲妈妈陷入热恋 14岁儿子报警何赛飞追着代拍打雅江山火三名扑火人员牺牲系谣言张家界的山上“长”满了韩国人?男孩8年未见母亲被告知被遗忘中国拥有亿元资产的家庭达13.3万户19岁小伙救下5人后溺亡 多方发声315晚会后胖东来又人满为患了张立群任西安交通大学校长“重生之我在北大当嫡校长”男子被猫抓伤后确诊“猫抓病”测试车高速逃费 小米:已补缴周杰伦一审败诉网易网友洛杉矶偶遇贾玲今日春分倪萍分享减重40斤方法七年后宇文玥被薅头发捞上岸许家印被限制高消费萧美琴窜访捷克 外交部回应联合利华开始重组专访95后高颜值猪保姆胖东来员工每周单休无小长假男子被流浪猫绊倒 投喂者赔24万小米汽车超级工厂正式揭幕黑马情侣提车了西双版纳热带植物园回应蜉蝣大爆发当地回应沈阳致3死车祸车主疑毒驾恒大被罚41.75亿到底怎么缴妈妈回应孩子在校撞护栏坠楼外国人感慨凌晨的中国很安全杨倩无缘巴黎奥运校方回应护栏损坏小学生课间坠楼房客欠租失踪 房东直发愁专家建议不必谈骨泥色变王树国卸任西安交大校长 师生送别手机成瘾是影响睡眠质量重要因素国产伟哥去年销售近13亿阿根廷将发行1万与2万面值的纸币兔狲“狲大娘”因病死亡遭遇山火的松茸之乡“开封王婆”爆火:促成四五十对奥巴马现身唐宁街 黑色着装引猜测考生莫言也上北大硕士复试名单了德国打算提及普京时仅用姓名天水麻辣烫把捣辣椒大爷累坏了

两个鬼故事 XML地图 TXT地图 虚拟主机 SEO 网站制作 网站优化