推荐算法注意事项总结

本文总结了多种推荐场景中的注意事项,或者推荐中比较关键的因素,不涉及算法描述,仅仅说明关注点,仅供参考。

推荐算法有很多种,从算法的角度来说,我认为主要由以下几种:协同过滤系列(基于item和user),机器学习分类系列(喜欢和不喜欢二分类,或者回归中的分值代表喜欢程度),矩阵分解系列(mahout  ALS算法,netflix举行推荐大赛获奖算法),关联规则(电商常用)。本文将从以上几种系列进行总结。

一、协同过滤系列

协同过滤算法感觉是最热也是推荐最精准的算法之一。在SNS交友推荐中,目前协同过滤算法是最精准的算法(个人之见),原因有以下几点:1、交友网站中用户的基础属性不足以完全表达一个人,除非现在可以把人的相貌信息完全表达出来,毕竟陌生人交友首先看相貌。2、用户的行为已经将用户对其他用户的描述看法融入到动作中。

使用协同过滤注意事项:

1、用户的行为考虑尽量周全,可以将不同隐士行为给一定权值,将隐士行为综合起来得到显示的评分。

2、对推荐结果重新排序,达到利益最大化,像交友网站应该加入活跃因子和曝光因子,活跃因子升函数,曝光因子减函数,控制推荐活跃用户,保证用户曝光率均衡。

3、对于交友网站的推荐,正向推荐是用户可能喜欢的人,如果将行为用户和被行为用户顺序颠倒且评分值不变,这样推荐给被行为用户可能喜欢他的人,将两者取交集,就是可能双方互相喜欢,即推荐最高境界互惠型推荐。

4、 基于物品的协同过滤,相似度进行归一化有助于提高推荐的多样性。因为不同物品内部的相似度不平衡,有些物品内部的相似度较高,造成推荐结果倾向于该类物品。对于两个不同的类,什么样的类其类内物品之间的相似度高,什么样的类其类内物品相似度低呢?一般来说,热门的类其类内物品相似度一般比较大。如果不进行归一化,就会推荐

比较热门的类里面的物品,而这些物品也是比较热门的。因此,推荐的覆盖率就比较低。相反,如果进行相似度的归一化,则可以提高推荐系统的覆盖率。

5、在ItemBased CF中,Tanimoto系数比其他系数会得到更大的覆盖量,它不关心用户对物品的具体评分值是多少,它在关心用户与物品之间是否存在关联关系。这样导致了,不同物品之间的相似度平衡,不会偏向某个物品。

6、对基于用户的推荐系统来说,Pearson相关系数比其他对比用户的方法更胜一筹。基于物品的推荐来说,余弦相似度方法比Pearson相关度量表现更好。

7、降低流行物品的权重。很多领域存在一些很多人都喜爱的物品,让两个用户对有争议的物品(冷门物品)达成共识更有价值。可以使用反用户频率缓解。

8、基于物品的推荐来说,余弦相似度方法比Pearson相关度量表现更好。在基于物品的推荐算法中,余弦相似度由于效果精确,已经被证实是一种标准的度量体系。这种方法也被广泛用于信息检索和文本挖掘,用于比较两份文档,文档表示为词的向量。基本的余弦方法不会考虑用户评分平均分之间的差异,改进版的余弦方法能够解决这个问题,做法是在评分值中减去平均值,改进余弦方法的取值在-1和+1之间,就像pearson方法一样。

9、电商推荐中需要加入货品上架时间和购买时间因素,加入季节上下文因子。

二、机器学习分类系列

1、机器学习方式(逻辑回归、决策树、SVM)。使用历史数据中成功和失败的数据集,训练出模型,使用模型进行预测推荐。(成功案例和失败案例比较难把握)

2、机器学习方法一般会使用较多的属性,只包含基础属性效果会很差,如果包含的属性较多的话,很多用户的很多属性会为空,数据预处理比较麻烦。

3、很多模型会使用协同过滤推荐出数据,然后使用逻辑回归(使用关键属性指标)计算推荐数据推荐指数,对推荐数据进行排序。

三、矩阵分解系列

1、ALS算法在netflix大赛中取得了很好的效果,ALS在视频等少物品,多用户的推荐中比较容易发挥,因为此算法的准确度严重依赖于feature的数量,对于少物品的推荐特征值比较低,计算量较小。对于社交网站之类的推荐,推荐者与被推荐者都是人,数量集是一样的,此时如果使用ALS算法,feature数值将会非常高,计算量会巨大,feature数值缩小会导致推荐结果非常不准确。

2、矩阵分解系列在文本聚类中应用较多。

四、关联规则推荐

1、一般用于电商网站推荐,比如购买此物品的人还购买了什么。

2、电商网站物品摆放,一般也会依赖于关联规则进行调整

领域推荐注意事项:

SNS交友推荐:协同过滤推荐效果一般最佳,在推荐过程中保证用户曝光的均衡,弱化流行用户的推荐,发掘潜在用户。

电商网站推荐:关联规则推荐,协同过滤推荐(基于物品),关注新上架物品和季节性物品,弱化流行物品相似度,长尾物品的相似更有价值,长尾物品更能带动公司效益。

视频网站推荐:协同过滤,ALS算法,影评分析挖掘

时间: 2024-11-07 22:46:54

推荐算法注意事项总结的相关文章

SQL自连接(源于推荐算法中的反查表问题)

"基于用户的协同过滤算法"是推荐算法的一种,这类算法强调的是:把和你有相似爱好的其他的用户的物品推荐给你. 要实现该推荐算法,就需要计算和你有交集的用户,这就要用到物品到用户的反查表. 先举个例子说明下反查表:甲喜欢的物品有:A.B.C:乙喜欢的物品有:B.E.F:丙喜欢的物品有:A.J.K:而你喜欢的物品是:A.J.M.反查表就是喜欢A物品的有你.甲.丙,喜欢J物品的有你.丙,喜欢M物品的只有你,这就是和你喜欢的物品有联系的用户.有了这个反查表,我们就可以看出和你有关系的用户只有甲和

阿里天池大数据之移动推荐算法大赛总结及代码全公布

移动推荐算法比赛已经结束了一个多星期了,现在写一篇文章来回顾一下自己的参赛历程. 首先,对不了解这个比赛的同学们介绍一下这个比赛(引用自官网): 赛题简介 2014年是阿里巴巴集团移动电商业务快速发展的一年,例如2014双11大促中移动端成交占比达到42.6%,超过240亿元.相比PC时代,移动端网络的访问是随时随地的,具有更丰富的场景数据,比如用户的位置信息.用户访问的时间规律等. 本次大赛以阿里巴巴移动电商平台的真实用户-商品行为数据为基础,同时提供移动时代特有的位置信息,而参赛队伍则需要通

协同过滤推荐算法

协同过滤推荐算法分为基于用户的协同过滤推荐UserCF和基于物品的协同过滤推荐ItemCF.介绍见<协同过滤的实现步骤>

今日头条核心技术“个性推荐算法”揭秘

今日头条核心技术"个性推荐算法"揭秘 最近面试华兴资本, 他们比较关注今日头条算法的实现, 今天特转载网上 今日头条算法解密 [IT168 评论]互联网给用户带来了大量的信息,满足了用户在信息时代对信息的需求,也使得用户在面对大量信息时无法从中获得对自己真正有用的那部分信息,对信息的使用效率反而降低了,而通常解决 1月20日,新生代移动互联网企业今日头条在北京国家会议中心举办了"算数·年度数据发布会",数据发布会的主题名为"算数",实际上指的是&

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

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

一个简单的基于内容的推荐算法

最近闲下来又开始继续折腾推荐系统了,声明一下,本文只是介绍一下最基础的基于内容的推荐系统(Content-based recommender system)的工作原理,其实基于内容的推荐系统也分三六九等Orz,这里只是简单的较少一下最原始的.最基本的工作流程. 基于内容的推荐算法思路很简单,它的原理大概分为3步: 1.为每个物品(Item)构建一个物品的属性资料(Item Profile) 2.为每个用户(User)构建一个用户的喜好资料(User Profile) 3.计算用户喜好资料与物品属

【天池竞赛系列】阿里移动推荐算法思路解析

赛题地址:http://tianchi.aliyun.com/competition/information.htm?raceId=1 登录就可以下载数据 从4月到7月,学习了非常多也收获了非常多 题目就不多说了.一句话表达就是依据过去一个月的行为预測14年12月19号的购买情况. 看题目貌似推荐算法.自然就有队伍想到用协同过滤什么的.当然效果不好. 首先是特征的问题,然后是这是基于行为的相似,不太类似用户和商品类似的ItemCF.UserCF,还有非常多其它的原因.比方我买过一部手机,难道还要

推荐算法

目前,主要的推荐方法包括:基于内容的推荐.协同过滤推荐.基于关联规则的推荐.基于效用的推荐.基于知识的推荐和组合推荐. 基于内容的推荐 基于内容的推荐(Content-based Recommendation)是信息过滤技术的延续与发展,它是建立在项目的内容信息上作出推荐的,而不需要依据用户对项目的评价意见,更多地需要用机器学习的方法从关于内容的特征描述的事例中得到用户的兴趣资料.在基于内容的推荐系统中,项目或对象是通过相关的特征的属性来定义,系统基于用户评价对象的特征,学习用户的兴趣,考察用户

微博推荐算法学习(Weibo Recommend Algolrithm)

原文:http://hijiangtao.github.io/2014/10/06/WeiboRecommendAlgorithm/ 基础及关联算法 作用:为微博推荐挖掘必要的基础资源.解决推荐时的通用技术问题.完成必要的数据分析.为推荐业务提供指导. 分词技术与核心词提取:是微博内容推荐的基础,用于将微博内容转化为结构化向量,包括词语切分.词语信息标注.内容核心词/实体词提取.语义依存分析等. 分类与anti-spam:用于微博内容推荐候选的分析,包含微博内容分类和营销广告/色情类微博识别:内