音乐推荐系统改进建议

在此只浅谈这方面的基本原理,从人自身出发,而不涉及机器算法优化协同过滤、SVD奇异值分解等内容。目前的机器推荐的基本原理就是假定A喜欢某首歌,B也喜欢,那么B喜欢的歌A同样也喜欢。但是这样机器无法理解,所以需要用具体数字去附加权重,一般听歌时的操作有三种:喜欢、不再出现、下一首。一首歌默认的权重为零,于是个人的操作将这样反馈给机器:

  1. 如果一个人听完了整首歌,则这首歌权重+1。
  2. 如果点了喜欢,那么权重+2
  3. 点了下一首,权重-1
  4. 点了不再出现,权重-2

这样将会有一个很大的缺陷,因为所有人评分加权是统一标准的,所以会使得听歌小众风格的人无法得到喜欢的风格。所以需要进行改进,进行更加个性化的评分:如果A用户进行的所有操作的相似度和B用户操作的相似度有某种比例的重合,则A用户的操作对B个人而言,将有个额外的加成以补偿小众用户总数少所产生的劣势。

这样如果各种比例控制的得当,已经能得到较为准确的推送结果了。但是个人的喜好并不是一成不变的,是发展的、变化的,一段时间前听的音乐很有可能在此时就失去了时效性,所以需要在对个人进行更加细化到个性化定制,对于某首歌曲的权重评分会随着时间逐渐减少以避免这种情况。

个人的需求时刻都在发生改变,受思想、情绪等多种因素的影响。这时我就很期待穿戴式设备和医疗设备的重大变革,能够通过穿戴式设备检测人体的一些数据去判断一些身体信息,比如稍微简单一点的通过心率判断个人情绪,高级一点的通过体内某种化学元素的量判断情绪,并把这些因素与推荐系统相结合,还是非常值得期待的。

像目前的一些穿戴设备已经能够测量心率了,穿戴式设备接入互联网,开放数据接口,能够使信息的整合更加紧密。之后只需要先基础的研究心率和情绪的大致关系接着把这个因素融入到推荐系统算法中,再根据用户的操作不断的优化学习心率和歌曲偏好的关系,就能够实现更加个性化的推荐。


评论

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注