常用推荐算法

推荐系统的出现

  随着互联网的发展,人们正处于一个信息爆炸的时代。相比于过去的信息匮乏,面对现阶段海量的信息数据,对信息的筛选和过滤成为了衡量一个系统好坏的重要指标。一个具有良好用户体验的系统,会将海量信息进行筛选、过滤,将用户最关注最感兴趣的信息展现在用户面前。这大大增加了系统工作的效率,也节省了用户筛选信息的时间。

  搜索引擎的出现在一定程度上解决了信息筛选问题,但还远远不够。搜索引擎需要用户主动提供关键词来对海量信息进行筛选。当用户无法准确描述自己的需求时,搜索引擎的筛选效果将大打折扣,而用户将自己的需求和意图转化成关键词的过程本身就是一个并不轻松的过程。

  在此背景下,推荐系统出现了,推荐系统的任务就是解决上述的问题,联系用户和信息,一方面帮助用户发现对自己有价值的信息,另一方面让信息能够展现在对他感兴趣的人群中,从而实现信息提供商与用户的双赢。

 

推荐算法介绍

  1 基于人口统计学的推荐

  这是最为简单的一种推荐算法,它只是简单的根据系统用户的基本信息发现用户的相关程度,然后将相似用户喜爱的其他物品推荐给当前用户。

  

  系统首先会根据用户的属性建模,比如用户的年龄,性别,兴趣等信息。根据这些特征计算用户间的相似度。比如系统通过计算发现用户A和C比较相似。就会把A喜欢的物品推荐给C。

  优势:

  a 不需要历史数据,没有冷启动问题

  b 不依赖于物品的属性,因此其他领域的问题都可无缝接入。

  不足:

  算法比较粗糙,效果很难令人满意,只适合简单的推荐

 

  2 基于内容的推荐

  与上面的方法相类似,只不过这次的中心转到了物品本身。使用物品本身的相似度而不是用户的相似度。

  

  系统首先对物品(图中举电影的例子)的属性进行建模,图中用类型作为属性。在实际应用中,只根据类型显然过于粗糙,还需要考虑演员,导演等更多信息。通过相似度计算,发现电影A和C相似度较高,因为他们都属于爱情类。系统还会发现用户A喜欢电影A,由此得出结论,用户A很可能对电影C也感兴趣。于是将电影C推荐给A。

  优势:

  对用户兴趣可以很好的建模,并通过对物品属性维度的增加,获得更好的推荐精度

  不足:

  a 物品的属性有限,很难有效的得到更多数据

  b 物品相似度的衡量标准只考虑到了物品本身,有一定的片面性

  c 需要用户的物品的历史数据,有冷启动的问题

 

  3 协同过滤

  协同过滤是推荐算法中最经典最常用的,具体的思路我已经在之前的一篇文章中提到过,大家可以去看一下。

  这里只想介绍一下协同过滤中的方法和刚才提到方法的区别。

  大家都知道协同过滤分为基于用户的协同过滤和基于物品的协同过滤。那么他们和基于人口学统计的推荐和基于内容的推荐有什么区别和联系呢?下面简单介绍一下。

  基于用户的协同过滤——基于人口统计学的推荐

  基于用户的协同过滤推荐机制和基于人口统计学的推荐机制都是计算用户的相似度,并基于“邻居”用户群计算推荐,但它们所不同的是如何计算用户的相似度,基 于人口统计学的机制只考虑用户本身的特征,而基于用户的协同过滤机制可是在用户的历史偏好的数据上计算用户的相似度,它的基本假设是,喜欢类似物品的用户 可能有相同或者相似的口味和偏好。

  基于物品的协同过滤——基于内容的推荐

  基于项目的协同过滤推荐和基于内容的推荐其实都是基于物品相似度预测推荐,只是相似度计算的方法不一样,前者是从用户历史的偏好推断,而后者是基于物品本身的属性特征信息。

  协同过滤的优势:

  a 它不需要对物品或者用户进行严格的建模,而且不要求物品的描述是机器可理解的,所以这种方法也是领域无关的。

  b 这种方法计算出来的推荐是开放的,可以共用他人的经验,很好的支持用户发现潜在的兴趣偏好

  不足:

  a 方法的核心是基于历史数据,所以对新物品和新用户都有“冷启动”的问题。

  b 推荐的效果依赖于用户历史偏好数据的多少和准确性。

  c 在大部分的实现中,用户历史偏好是用稀疏矩阵进行存储的,而稀疏矩阵上的计算有些明显的问题,包括可能少部分人的错误偏好会对推荐的准确度有很大的影响等等。

  d 对于一些特殊品味的用户不能给予很好的推荐。

  e 由于以历史数据为基础,抓取和建模用户的偏好后,很难修改或者根据用户的使用演变,从而导致这个方法不够灵活。

 

  4 混合推荐算法

  以上介绍的方法是推荐领域最常见的几种方法。但是可以看出,每个方法都不是完美的。因此实际应用中,向Amazon这样的系统都是混合使用各种推荐算法,各取所长。因此我们在使用时,也可以多考虑一下什么情况下更适合使用哪种算法,来提高我们系统的效率。

 

推荐系统的发展方向

  1 需要考虑在保证推荐准确性的同时增加推荐的多样性,使特殊喜好的用户得到推荐

  2 需要考虑用户对系统的实时反馈,更好的利用反馈数据强化推荐算法

  3 考虑时间,空间,任务等因素,来更好的完成推荐

时间: 2024-07-29 11:05:34

常用推荐算法的相关文章

基于用户的协同过滤推荐算法原理和实现

      在推荐系统众多方法中,基于用户的协同过滤推荐算法是最早诞生的,原理也较为简单.该算法1992年提出并用于邮件过滤系统,两年后1994年被 GroupLens 用于新闻过滤.一直到2000年,该算法都是推荐系统领域最著名的算法.       本文简单介绍基于用户的协同过滤算法思想以及原理,最后基于该算法实现园友的推荐,即根据你关注的人,为你推荐博客园中其他你有可能感兴趣的人. 基本思想       俗话说"物以类聚.人以群分",拿看电影这个例子来说,如果你喜欢<蝙蝠侠&

微博背后的大数据算法探寻:微博推荐算法简述

在介绍微博推荐算法之前,我们先聊一聊推荐系统和推荐算法.有这样一些问题:推荐系统适用哪些场景?用来解决什么问题.具有怎样的价值?效果如何衡量? 推荐系统诞生很早,但真正被大家所重视,缘起于以"facebook"为代表的社会化网络的兴起和以"淘宝"为代表的电商的繁荣,"选择"的时代已经来临,信息和物品的极大丰富,让用户如浩瀚宇宙中的小点,无所适从.推荐系统迎来爆发的机会,变得离用户更近: 快速更新的信息,使用户需要借助群体的智慧,了解当前热点.信息

探寻微博背后的大数据原理:微博推荐算法简述

在介绍微博推荐算法之前,我们先聊一聊推荐系统和推荐算法.有这样一些问题:推荐系统适用哪些场景?用来解决什么问题.具有怎样的价值?效果如何衡量? 推荐系统诞生很早,但真正被大家所重视,缘起于以"facebook"为代表的社会化网络的兴起和以"淘宝"为代表的电商的繁荣,"选择"的时代已经来临,信息和物品的极大丰富,让用户如浩瀚宇宙中的小点,无所适从.推荐系统迎来爆发的机会,变得离用户更近: 快速更新的信息,使用户需要借助群体的智慧,了解当前热点. 信

用Spark学习矩阵分解推荐算法

在矩阵分解在协同过滤推荐算法中的应用中,我们对矩阵分解在推荐算法中的应用原理做了总结,这里我们就从实践的角度来用Spark学习矩阵分解推荐算法. 1. Spark推荐算法概述 在Spark MLlib中,推荐算法这块只实现了基于矩阵分解的协同过滤推荐算法.而基于的算法是FunkSVD算法,即将m个用户和n个物品对应的评分矩阵M分解为两个低维的矩阵: 其中k为分解成低维的维数,一般远比m和n小.如果大家对FunkSVD算法不熟悉,可以复习对应的原理篇. 2. Spark推荐算法类库介绍 在Spar

推荐系统主要算法总结及Youtube深度学习推荐算法实例概括

协同过滤 协同过滤(CF)及其变式是最常用的推荐算法之一.即使是数据科学的初学者,也能凭之建立起自己的个性化电影推荐系统,例如,一个简历项目. 当我们想要向某个用户推荐某物时,最合乎情理的事情就是找到与他/她具有相同爱好的用户,分析其行为,并且为之推荐相同的东西.或者我们可以关注那些与该用户之前购买物品相似的东西,并推荐相似的产品. 协同过滤(CF)有两种基本方法,它们分别是:基于用户的协同过滤技术和基于项目的协同过滤技术. 该推荐算法的以上情形中均包含两步: 1. 找到数据库中有多少用户/项目

5类系统推荐算法,告诉你用户需要什么

◆ ◆ ◆ 序言 最近因为PAC平台自动化的需求,开始探坑推荐系统.这个乍一听去乐趣无穷的课题,对于算法大神们来说是这样的: 而对于刚接触这个领域的我来说,是这样的: 在深坑外围徘徊了一周后,我整理了一些推荐系统的基本概念以及一些有代表性的简单的算法,作为初探总结,也希望能抛砖引玉,给同样想入坑的伙伴们提供一些思路. ◆ ◆ ◆ 什么是推荐系统 1. 什么是推荐系统? 推荐系统是啥? 如果你是个多年电商(剁手)党,你会说是这个: 如果你是名充满文艺细胞的音乐发烧友,你会答这个: 如果你是位活跃在

推荐算法---协同过滤推荐算法

基于用户的协同过滤推荐算法原理和实现       在推荐系统众多方法中,基于用户的协同过滤推荐算法是最早诞生的,原理也较为简单.该算法1992年提出并用于邮件过滤系统,两年后1994年被 GroupLens 用于新闻过滤.一直到2000年,该算法都是推荐系统领域最著名的算法.       本文简单介绍基于用户的协同过滤算法思想以及原理,最后基于该算法实现园友的推荐,即根据你关注的人,为你推荐博客园中其他你有可能感兴趣的人. 基本思想       俗话说"物以类聚.人以群分",拿看电影这

达观推荐算法实现:协同过滤之item embedding

推荐系统本质是在用户需求不明确的情况下,解决信息过载的问题,联系用户和信息,一方面帮助用户发现对自己有价值的信息,另一方面让信息能够展现在对它感兴趣的用户面前,从而实现信息消费者和信息生产者的双赢(这里的信息的含义可以非常广泛,比如咨询.电影和商品等,下文中统称为item).达观数据相关推荐是达观推荐系统中的重要组成部分,其价值在于,在没有用户画像信息的情况下,也能给用户以好的推荐体验,比如资讯类,通过达观相关推荐算法找到item相关的其他item,可以提供对某一类或者针对某一事件多角度多侧面的

网站拉拢用户的核心机密:推荐算法

文章描述:互联网无处不在的"推荐算法". 数据显示,三分之一的用户会根据电子商务网站的推荐买东西,这是任何广告都不可能做到的成绩.媒体上播放的大众化广告对消费者的影响已经越来越低,于是有人做出预见--个性化推荐技术将成为广告的终极形式.     很多年前,看过一部电影叫作<谁知女人心>,好莱坞大牌梅尔·吉布森饰演的男主角是一个典型的大男子主义者.一次浴室触电的意外突然让这个大男人获得了神奇的本领--"读心术",可以轻而易举地洞悉身边女人们的心事,听到她们