《推荐系统实践》读书笔记
2024-01-05 09:59:55 0 举报
AI智能生成
《推荐系统实践》读书笔记(上)
作者其他创作
大纲/内容
1. 好的推荐系统
1.1 什么是推荐系统
1.2 个性化推荐系统的应用
电子商务
电影和视频网站
个性化音乐电台
物品空间大
消费每首歌的代价很小
物品种类丰富
听一首歌耗时很少
物品重用率很高
用户充满激情
上下文相关
次序很重要
很多播放列表资源
不需要用户全神贯注
高度社会化
社交网络
社交网络信息对用户进行个性化的物品推荐
信息流的会话推荐
给用户推荐好友
个性化阅读
基于位置的服务
个性化邮件
个性化广告
上下文广告
搜索广告
个性化展示广告
1.3 推荐系统评测
推荐系统实验方法
1. 离线实验
2. 用户调查
3. 在线实验
评测指标
1. 用户满意度
2. 预测准确度
3. 覆盖率
4. 多样性
5. 新颖性
6. 惊喜度
7. 信任度
8. 实时性
9. 健壮性
10. 商业目标
评测维度
用户
物品
时间
2. 利用用户行为数据
2.1 用户行为数据简介
日志
浏览
点击
购买
评分
评论
2.2 用户行为分析
2.2.1 用户活跃度和物品流行度的分布
长尾分布
用户活跃度:用户产生过行为的物品总数
物品流行度:对物品产生过行为的用户总数
2.2.2 用户活跃度和物品流行度的关系
用户越活跃,越倾向于浏览冷门的物品
2.3 实验设计和算法评测
2.3.1 数据集
2.3.2 实验设计
训练集和测试集的划分
多次试验防止过拟合
2.3.3 评测指标
准确率:最终的推荐列表中又多少比例是发生过的
召回率:有多少比例的用户-物品评分记录包含在最终的推荐列表中
覆盖率:最终推荐列表中包含多达比例的物品
2.4 基于领域的算法
2.4.1 基于用户的协同过滤算法
1. 基础算法
1)找到和目标用户兴趣相似的用户集合
2)找到这个集合中的用户喜欢的,且目标用户没有听说过的物品推荐给目标用户
2. 用户相似度计算的改进
惩罚两用户共同兴趣列表中热门物品对他们的相似度影响
3. 实际在线系统使用的例子
2.4.2 基于物品的协同过滤算法
1. 基础算法
1)计算物品相似度
2)根据物品的相似度和用户的历史行为给用户生成推荐列表
2. 用户活跃度对物品相似度的影响
活跃用户对物品相似度贡献小于不活跃用户
3. 物品相似度的归一化
增加推荐的准确度
提高覆盖率和多样性
2.4.3 UserCF和ItemCF的综合比较
UserCF
性能:适用于用户较少的场合
领域:时效性较强,用户个性化兴趣不太明显的领域
实时性:用户有新行为,不一定造成推荐结果的立即变化
冷启动:新用户对少量物品产生行为猴不能立即进行推荐;新物品上线后,如有行为发生,则会推荐给其他用户。
推荐理由:无
ItemCF
性能:适用于物品数明显小于用户数的场合
领域:长尾物品丰富,用户个性化需求强烈的领域
实时性:有新行为,一定导致结果事实变化
冷启动:新用户只要对一个物品产生行为,就可推荐其他物品;但新物品没有办法立即推荐给用户
推荐理由:可让人信服
哈利波特问题
热门物品对算法的影响,对热门物品施加惩罚
2.5 隐语义模型
2.5.1 基础算法
思路:对于某个用户,首先得到他的兴趣分类,然后从分类中挑选他可能喜欢的物品
问题
如何给物品进行分类
如何确定用户对哪些类的物品感兴趣,以及感兴趣的程度
对于一个给定的类,选择哪些属于这个类的物品推荐给用户,以及如何确定这些物品在一个类中的权重
隐语义模型
按照用户行为进行分类
分类粒度可调节
可给出一个物品属于每个类的权重
多维度分类
通过统计用户行为计算物品在分类中的权重
LFM
隐性反馈数据集抽取负样本:采样并保持正负样本量相当;选取热门却没有用户行为的物品
重要参数
隐特征的个数F
学习速率alpha
正则化参数lambda
负样本/正样本比例ratio
2.5.2 基于LFM的实际系统的例子
雅虎首页
2.5.3 LFM和基于领域的方法的比较
LFM有较好的理论基础,是一种学习方法
离线计算的空间复杂度,LFM在大量用户物品时能节省内存空间
离线计算的时间复杂度,由于进行迭代,LFM的时间复杂度稍高于领域算法
LFM不能进行在线实时推荐
LFM无法进行推荐解释
2.6 基于图的模型
2.6.1 用户行为数据的二分图表示
2.6.2 基于图的推荐算法
相关性较高的顶点
两个顶点之间有很多路径相连
连接两个顶点之间的路径长度都比较短
连接两个顶点之间的路径不会经过出度比较大的顶点
随机游走的personalRank算法
3. 推荐系统冷启动问题
3.1 冷启动问题简介
用户冷启动
物品冷启动
系统冷启动
3.2 利用用户注册信息
人口统计学信息
年龄、性别、职业、民族、学历、居住地
用户兴趣的描述
从其他网站导入的用户站外行为数据
基于注册信息的个性化推荐流程
获取用户的注册信息
根据用户的注册信息对用户进行分类
给用户推荐他所属分类中用户喜欢的物品
粒度越细,精度和覆盖率越高
3.3 选择合适的物品启动用户的兴趣
思路
通过让用户对物品进行评分来收集用户兴趣
物品特点
比较热门
具有代表性和区分性
启动物品集合需要有多样性
3.4 利用物品的内容信息
内容相似度和ItemCF相结合
3.5 发挥专家的作用
心情
剧情
类别
时间
地点
观众
获奖
风格
态度
画面
标记
0 条评论
下一页