【推荐系统实战】——知识思维导图梳理
思维导图
markdown版
利用用户行为数据
用户行为数据简介
-
显式反馈
- 用户对物品的评级,喜欢于不喜欢
-
隐式反馈
- 用户浏览、点击、观看等行为
基于邻域的方法
-
基于用户的协同过滤算法
-
当一个用户A需要个性化推荐时,可以先找到和他有相似兴趣的其他用户,然后把那些用户喜欢的、而用户A没有听说过的物品推荐给A。这种方法称为基于用户的协同过滤算法。
-
(1)计算用户相似度,找到和用户兴趣相似的集合
- N(u)表示用户u曾经有过正反馈的物品集合,令N(v)为用户v曾经有过正反馈的物品集合。
-
(2) 找到这个集合中的用户喜欢的,且目标用户没有听说过的物品推荐给目标用户。
-
子主题 4
-
-
基于物品的协同过滤算法
-
给用户推荐那些和他们之前喜欢的物品相似的物品。
-
1、计算物品之间的相似度
-
分析用户行为
- 如果同时喜欢物品i和物品j的人很多,则说明i和j相似
-
-
2、根据物品的相似度和用户历史行为生成推荐列表
- 判断用户u对物品j的兴趣,主要通过用户u的历史行为物品中与j的相似程度
-
-
UserCF和ItemCF的比较
- UserCF需要维护用户相似度矩阵,不适合用户很多的场景。ItemCF需要维护物品相似度矩阵,不适合物品很多的场景。
- UserCF时效性较强,适用于用户个性化兴趣不太明显的领域。ItemCF适用于用户个性化兴趣强烈的领域
- 冷启动:UserCF:新物品上线,只要用户对物品有点击行为,即可推荐。而ItemCF需要更新物品相似度表。 对于新用户,ItemCF可以在新用户对某个物品产生行为后,进行推荐。而UserCF需等待用户相似度矩阵的更新。
- UserCF没有可解释性,ItemCF可以根据用户历史行为提供解释
隐语义模型LFM
- 给物品进行分类,因此可以根据类别信息对用户兴趣进行分类,对用户推荐对应类别的物品。
- 需要优化如下的损失函数来找到最合适的参数p和q
基于图的模型
-
用户行为二部图表示
-
通过一种基于随机游走的PersonalRank算法得到针对当前用户节点,每个物品节点的访问概率,则根据访问概率进行推荐
推荐系统的冷启动问题
问题
-
用户冷启动
- 如何给新用户推荐
-
物品冷启动
- 如何给新物品推荐
-
系统冷启动
- 如何在一个新系统上推荐
解决方案
- 根据热门排行榜推荐
- 利用用户的人口统计学信息给新用户做推荐
- 利用用户的社交网络信息,给用户推荐好友喜欢的物品
- 用户在登录时对一些物品进行反馈,收集用户对这些物品的兴趣信息
- 对于新加入的物品,可以利用内容信息,将它们推荐给喜欢过和它们相似的物品的用户
- 在系统冷启动时,可以引入专家的知识,通过一定的高效方式迅速建立起物品的相关度表
利用用户标签数据
利用用户给物品打上的标签,为用户个性化推荐。
基于标签的推荐系统
-
一个简单的算法
- 思想:找到用户最常用的标签,推荐该标签最热门的物品
- 这里,B(u)是用户u打过的标签集合,B(i)是物品i被打过的标签集合, n u , b n_{u,b} nu,b是用户u打过标签b的次数, n b , i n_{b,i} nb,i是物品i被打过标签b的次数
-
TF-IDF
- 前面这个公式倾向于给热门标签对应的热门物品很大的权重,因此会造成推荐热门的物品给用户
- 其中, n b ( i ) n^{(i)}_{b} nb(i)记录了物品i被多少个不同的用户打过标签。
-
基于图的推荐算法
- 用户-物品-标签图
-
基于标签可以提供推荐的可解释性
给用户推荐标签
利用上下文信息
根据用户所处的上下文,如时间、地点、心情进行推荐
时间上下文信息
-
用户兴趣具有时间动态性,物品具有生命周期和时效性,用户兴趣、物品与季节有关
-
时间上下文相关的ItemCF算法
- 计算物品相似度时,增加时间衰减项。时间越接近的物品越相似。
-
时间上下文相关的UserCF算法
- 计算用户相似度时,增加时间衰减项,在时间接近的时候喜欢同一组物品的用户越相似
-
时间段图模型
地点上下文信息
-
基于位置的推荐算法
-
只有用户位置的数据集
- 根据用户位置进行分类,形成树状结构。我们可以从根节点出发,在到叶子节点的过程中,利用每个中间节点上的数据训练出一个推荐模型,然后给用户生成推荐列表。而最终的推荐结果是这一系列推荐列表的加权。
-
只有物品位置的数据集
- 计算物品位置和用户历史访问物品位置平均值的距离
-
用户位置和物品位置都有的数据集
-
利用社交网络数据
基于邻域的社交网络推荐
- 用户相似度由用户之间的共同好友决定,同时还衡量用户之间的兴趣相似度,由用户之间共同喜欢的物品数量决定
基于图的社交网络推荐
- 社交网络和用户物品二部图结合
给用户推荐好友
- 基于内容匹配,如用户的人口统计学信息、兴趣、位置信息
- 基于共同兴趣的好友推荐
- 基于社交网络图的好友推荐