从酷狗的网络红歌说起

              我比较喜欢听歌,每次无聊的时候便会打开酷狗来静静的聆听。同时我也是一个比较喜欢伤感情绪的人,每当耳边响起的是小悲伤的调子,就感觉特别的能共振。


             当然我本身却是一个有点过于乐观的人,也许喜欢悲伤的调子能够平衡一下吧~~


             好了,进入正题,以前听歌都是用的电脑端的酷狗,而这一次用的却是手机端。习惯性的我打开了网络红歌,一首首欢乐的歌曲飘来,然后就是不断的换歌,最终退出了手机端。接下来,换到了电脑端,感觉诧异啊,这才是熟悉的感觉。


             我思考,究竟是什么让电脑端和手机端的音乐类型有如此大的差距呢?认真想,推荐?推荐!应该是推荐系统在幕后操作。


             从酷狗的网络红歌说起,推荐算法的认识和原理。


             推荐算法,实现的是,根据你以前的经历推荐你可能喜欢的事物给你选择。具体的,比如购物行为,可以根据你曾经的购物行为预测判断你的喜好,进而推荐你可能喜欢的物品给你选择。这样不仅方便了用户,也给商家带来了可观的回报。


             我记得,酷狗有一个分享或者收藏的功能,也许推荐系统便是从这里开始,当然也有可能根据你的听歌偏好而开始。每一次的收藏或者偏好都被保存在数据库中,通过推荐系统的学习,便可能获得我们可能的喜爱,最终推荐相应的歌曲给我们。


              那么推荐系统一般怎么工作呢?(酷狗的算法我们无法知道,但是我们可以猜一猜。)


              1)我们有一份自己喜欢的歌单,并且当我们想换一首新歌聆听的时候,而这时的选择只有三种(如下图)。

              从酷狗的网络红歌说起_第1张图片

                

               这张图片中,我们已经有的歌单包括歌曲:匆匆那年,因为爱情,泡沫,当时的我们。可供选择的新歌为:给自己的情书,最炫民族风,我是一个粉刷匠。那么问题来了,我们该推荐那一首新歌给这个用户呢?


               2)通过我们对这个用户的分析,我们可以大概知道这个用户的偏爱,以及喜欢歌曲的特征,那么如果是面对面的推荐的话,我想一个可能的推荐顺序将是:A,B,C。当然这是基于我们本身对歌曲的认识上来推荐的,我们有自己的感性认识。


              3)但是机器呢?机器是冰冷的,没有感情的,它又会如何给我们推荐呢?如果仅仅根据上面图片的信息,推荐系统可能无法正常运行,因为推荐系统不知道A,B,C是什么类型的歌曲,也无法知道用户的喜好是什么。推荐系统的推荐基于所有用户以往的行为,分析判断一个用户的喜好并进行推荐。它拥有着的数据不仅仅是一个用户的,而应该是整个用户群体的。推荐系统基于这些用户数据学习分类并推荐。

              例子1:

     从酷狗的网络红歌说起_第2张图片

             假如系统拥有两份用户数据,根据用户过往的行为推荐用户B一首新歌。推荐系统将从用户A和用户B所拥有的歌单中学习到一个事实,用户A和用户B及其相似。他们都有着差不多的喜好。推荐系统认为他们是一类人,进行将《给自己的情书》一歌推荐给用户B。


             这个例子描述的思想其实是协同过滤的思想,协同过滤推荐分成基于用户和基于物品的两种基本类型。更具体的上述描写的是一个基于用户的协同过滤的思想。这个思想描述的基本思想是:在遥远的地方有一个和你有着共同爱好的人,那么你喜欢的歌曲而这个远方的人可能还没有接触过的歌曲,just 推荐这首歌给这个相似的人(相似的人有着相似的喜好)。

             酷狗的推荐可能更多的是基于物品的协同过滤思想而不是简单的基于用户的,其推荐系统应该更加合理并且有许多其他模块的辅助。


             4)推荐系统是一个庞大的系统,其和许多经典的数据挖掘算法有着密切的关联,推荐系统主要解决如何给用户更好的选择问题,这个选择可能不是正确的,但是应该是让大多数用户满意的。



           本文只是由从酷狗的网络红歌说起,浅浅的聊了一下自己对于推荐系统的认识,后续我们将继续深入。探讨更多关于推荐算法的知识,也许包括关联规则,聚类分类知识,时间序列等(基于用户的协同过滤算法代码已经实现,但是不提供,推荐系统算法类文章将不提供代码展示,但是欢迎一起讨论)。


          

          限于本文作者水平,上诉内容难免有错误,还望大家帮忙纠正。

你可能感兴趣的:(推荐系统的讨论,推荐系统,基于用户的协同过滤)