目前使用比较普遍的个性化推荐算法有三种,分别是:协同过滤推荐算法、基于内容的推荐算法和基于社交网络的推荐算法。
1、协同过滤推荐算法
该算法的基本思想是,如果你的朋友或者亲戚购买了某件商品并且评价不错,那么你很有可能也会购买该商品。根据相似度比较的对象不同,可以细分为基于用户的推荐和基于物品的推荐。在用该算法的有Amazon等一些电商平台。
a)基于用户的最近邻推荐
基于用户的协同推荐的基本思想是:寻找当前用户的最近邻(即计算用户之间的相似性),从而根据最近邻的喜好预测你也可能喜欢什么。
b)基于物品的最近邻推荐
该算法的核心是计算物品两两之间的相似度,从而为用户推荐相似的物品。当需要对用户推荐物品A时,通过确定与A最相似的物品B,计算用户对这些近邻物品B评分的加权总和来得到用户对物品A的预测评分。
2、基于内容的推荐算法
基于内容的推荐与协同过滤推荐不同,它不需要用户对物品的评分数据,也不需要比较多个用户或多个物品之间的相似度。该算法的基本思想是根据用户的历史兴趣数据,建立用户模型,然后针对推荐物品的特征描述进行特征提取,最后将物品特征与用户模型相比较,相似度较高的物品就可以得到推荐。
基于内容的推荐目前主要应用于文本、视频、音频的推荐,比如新闻、视频和电台等。
3、基于社交网络的推荐算法
基于社交网络的推荐是协同过滤推荐在社交网络中的延伸,同时又具有基于网络结构推荐的特点。大体上可以分为两类,即基于邻域的社交网络推荐和基于网络结构的社交网络推荐。
a)基于邻域的社交网络推荐
其基本思想是查询社交网络中当前用户所有的好友,根据好友的兴趣数据,向当前用户推荐好友喜欢的物品集合。
b)基于网络结构的社交网络推荐
该算法把用户、用户的好友、用户的喜好和好友的喜好连接起来形成一个社交网络结构图。同时,根据用户之间的熟悉程度和喜好相似度,来定义用户之间和用户的喜好之间的权重,然后选择与用户没有直接相关的物品,按照优先级别生成推荐列表。
个性化推荐的一些缺陷
也许你已经发现,现如今很多产品的个性化推荐系统还谈不上智能。我就经常遇到在某电商平台买了一台电脑,接下来就向我推荐各种品牌的电脑。对于买电脑这种低频行为,该个性化推荐显得太粗糙了一点。还有当我在一些资讯App浏览新闻时,总是受到相同内容的新闻信息,让我没有继续使用下去的欲望。
一个好的个性化推荐系统,用户能够从系统提供的推荐列表中购买自己确实需要但在购买过程中没有想到的商品,有利于流量和商品转化,也会让用户对该系统产生依赖。个性化推荐系统不仅能够为用户提供个性化的推荐服务,而且能与用户建立长期稳定的关系,从而提高用户的忠诚度。
网站设计架构和程序时个性化推荐系统是一个非常复杂系统,背后还涉及到很多问题。比如冷启动问题、数据稀疏性问题、推荐的精确度和准确度问题等。
1、冷启动问题
如果用户的标签信息为零,那么个性化推荐就等于不存在。这个情况下,往往是让用户进入兴趣标签填写的页面,或者通过搜集用户在其它平台的标签数据来进行推荐。
2、数据稀疏性问题
很多电商平台的信息数据之大,使得任意两个用户浏览的商品交集非常小,这时候通常采用商品聚类或者用户聚类的方式。
3、推荐的精确度和准确度问题
通过收集更多的用户标签,不断优化推荐算法,多种推荐算法的组合推荐来最大化保证推荐的精确度和准确度。
4、传统的个性化推荐,无法保证推荐的实时性
比如网易云的用户无意中听到了一种没听过的曲风,觉得很好听又连续听了几首。如果这时候推荐的还是他过去爱听的,这就不能很好地满足用户的需求。
5、精确度与多样性的平衡问题
盲目的精确推荐可能会使用户的视野越来越狭窄,也就无法向用户推荐其它多样的物品和信息。如何平衡两者的关系是一个要解决的问题。