本文是一个云村九级用户,根据多年的使用体验,对网易云音乐个性化推荐系统(私人FM,每日歌曲推荐,推荐歌单)运作模式的猜测分析。
很早以前刚开始使用网易云音乐的时候,我就对其个性化推荐系统有过一些猜测,当时以为只是基于协同过滤算法做出的推荐。但是在最近阅读了一本有关数据挖掘的书籍,看到了不少数据分析实例后,我有了一些不一样的看法。先说基础的推荐算法。
1.基础算法
1.1协同过滤算法(Collaborative Filtering)
一个构建个性化推荐系统的经典算法,起源于1992,被Xerox公司用于个性化定制邮件系统。其核心思想十分简洁,分为以下两点。
- 基于用户的协同过滤
已知用户A喜欢的产品用户B都喜欢,又知道用户A喜欢产品C,推出用户B也喜欢产品C。
- 基于产品的协同过滤
已知喜欢产品X的用户都喜欢产品Y,又知道用户Z喜欢X,推出用户Z也喜欢产品Y。
以上两种协同过滤的思想都在于通过相似性来过滤产品,完成个性化推荐。网易云音乐属于典型的用户数目多于歌曲数的音乐软件,因此应当使用的是基于用户的协同过滤算法,下面以此为例,分析个性化推荐的可能实现过程。
先对每首歌的喜欢程度进行简单的量化:
比如:单曲循环=5, 分享=4, 收藏=3, 主动播放=2 , 听完=1, 跳过=-1 , 不感兴趣=-5 。
根据上面的这些操作,可以得到每个用户对每首歌的打分情况。