本文为转载一思维导图内容,此链接为来源(完成本文时链接有效,不保证一直有效,如无效,望告知)
能够保证在 user 和 item 数量持续增长时推荐算法的效果依然有效
如何解决 user 和 item 矩阵的稀疏性
如何解决新用户上线、新物品上线的冷启动
新闻类内容需要考虑时效维度
如何保证推荐的是高质量内容、内容消重
用户的兴趣是动态变化的
如何提高推荐内容的多样性
如何保证推荐内容符合目标用户的兴趣
用户兴趣特征提取(建立用户兴趣标签)、内容特征提取
如何定义排序权重、同时要考虑避免过热以及增加冷门内容爆光
如何让用户做正负反馈并影响以后的推荐结果
原理:
是一种易于实现的推荐算法,它只是简单地根据系统用户的基本信息发现用户的相关程度,然后将相似用户喜爱的其他物品推荐给当前用户
优点:
缺点:
适用场景:
新用户只有基本信息,没有用户行为时,解决冷启动行为,,如首页的“浏览发现”
原理:
基于内容的关联性推荐,推荐用户喜欢和自己关注过的信息在内容上类似的信息;
例如,某人看了《三体1》,基于内容分的推荐算法会给其推荐《三体2》、《三体3》,算法认为这两者与其之前观看的内容上有非常大的关联性
优点:
缺点:
适用场景:
新用户有少量的用户行为时,发现更多相关的事物,多用于物品展示页中的“跟这个相似的物品有哪些”,适合电商网站中,引导用户查看更多同类的产品;常用关键词和标签(Tag)来描述物品元数据
适用领域:
电影、音乐、图书等的社交网站
原理:
根据所有用户对物品或信息的偏好,发现与当前用户口味和偏好相似的“邻居”用户群
根据用户喜欢的物品列表得到物品对应的用户列表,从而计算用户相似度矩阵
常用算法:
K-近邻算法(K-neighborhood)
皮尔逊相关系数(Pearson correlation coefficient)
适用领域:
新闻类网站、小说、电影网站
适用场景:
适用于用户较少的场景,否则计算用户相似度矩阵代价很大
时效性较强,适用于用户个性化兴趣没有那么明显的领域
给用户推荐多样化的内容
场景举例:
豆瓣:“你可能感兴趣的电影”
今日头条:“为您推荐了 n 篇文章”
原理:
使用所有用户对物品或者信息的偏好,发现物品和物品之间的相似度,然后根据用户的历史偏好信息,将类似的物品推荐给用户
根据用户喜欢的物品列表得到物品的相似度矩阵
常用算法:
基于物品相似度的推荐中,改进的余弦相似度效果更好
适用领域:
图书、电子商务、电影网站
适用场景:
物品数量明显小于用户数的场合,否则物品相似度矩阵代价太大
适合长尾物品丰富,用户个性化需求更强烈的领域
给用户推荐相似内容
场景举例:
起点:“喜欢这本书的人还喜欢”
亚马逊:“购买此商品的顾客也同时购买”
原理:
基于模型的协同过滤推荐就是基于样本的用户喜好信息,训练一个推荐模型,然后根据实时的用户喜好信息进行预测推荐
优点:
缺点:
适用场景:
对于用户数量远远大于产品,并且产品相对稳定的电商系统,计算产品相似度计算量小,适用 ItemCF;反之,对于更新频繁,物品数量海量的新闻、博客、微博等系统,UserCF效果更好
原理:
建立一套行为规则进行推荐,这类算法常见的比如基于用户点击、最多用户浏览等;常见的建立规则有:A推荐B,凡是看过A信息的用户给它推荐B信息
优点:
缺点:
适用场景:
首页热榜;最多人浏览;最新内容;关注的人动态
原理:
采用向量空间模型来分类,概念为相同类别的案例,彼此的相似度高,而可以借由计算与已知类别案例之相似度,来评估位置类别案例可能的分类
特点:
基于实例的学习方法,分类新的实例的开销可能很大
优点:
缺点:
原理:
最常用的距离计算公式,衡量的是多维空间中各个点之间的绝对距离
表示相似度时,其值取距离加一的和的倒数——距离越小,相似度越大
特点:
优点:
公式简单
缺点:
没有考虑分量之间的相关性,体现单一特征的多个分量会干扰结果
原理:
通过Pearson 相关系数来度量两个用户之间的相似性;计算时,首先找到两个用户共同评分过的项目集,然后计算这两个向量的相关系数;即相关分析中的相关系数 r,分别对 X 和 Y 基于自身总体标准化计算空间向量的余弦夹角;Pearson Correlation 实际上就是两个向量的余弦值,等于两个向量中心化后(减去均值)的内积除以长度的乘积
特点:
优点:
可以避免评分等级膨胀的问题
缺点:
原理:
把用户评分看做是 n 维项目空间上的向量,通过计算两个向量之间的夹角余弦来衡量两个用户之间的相似性
余弦相似度用向量空间中两个向量夹角的余弦值作为衡量两个个体之间差异的大小
相比距离度量,余弦相似度更加注重两个向量在方向上的差异,而非距离或者长度
特点:
余弦相似度受到向量的平移影响,如果将 x 平移到 x+1,余弦值就会改变
优点:
缺点:
余弦相似度对数值不敏感
原理:
将余弦相似度中的向量,减去用户平均评分向量后,再计算夹角余弦以修正不同用户评分尺度不同的问题
特点:
修正 cosin 考虑的是对 Item 打过分的每个 user 其打分的均值
优点:
修正余弦相似度对数值不敏感的问题
缺点:
增加了算法复杂度