1.1推荐系统
搜索引擎 用户主动提供准确的关键词来寻找信息
推荐系统 不需要用户提供明确需求,而是通过分析用户的历史行为给用户的兴趣建模
推荐系统挖掘长尾商品,其销售额不容小觑,长尾商品代表了一小部分用户的个性化需求。
决定看什么电影:
1.问朋友,社会化推荐
2.寻找和之前看过电影内容类似的电影,基于内容的推荐
3.查看排行榜,看别人看什么电影。更进一步,找到和自己历史兴趣相似的用户,看看他们在看什么电影,基于协同过滤的推荐
推荐算法本质是将用户和物品联系起来。
推荐系统就是自动联系用户和物品的一种工具,它能够在信息过载的环境中帮助用户发现令它们感兴趣的信息,也能将信息推送给它们感兴趣的用户。
1.2应用
电子商务以亚马逊为例
个性化推荐和相关商品推荐列表
1.个性化推荐
推荐结果包括
标题、缩略图以及属性;推荐物品的评分;推荐理由(可选择,该数据不用于生成推荐)
基于物品的推荐、基于好友的个性化推荐列表
2.相关列表推荐
两种:
1.包含购买了该物品的用户也经常购买的其他商品
2.包含浏览过这个商品的用户也经常购买的其他商品
不同用户行为计算物品相关性
应用是打包销售
电影和视频网站
Netflix
Youtube做了一个实验证明个性化推荐的有效性,比较个性化推荐的点击率和热门视频列表的点击率,实验结果表明个性化推荐的点击率是热门视频点击率的两倍。
Hulu
个性化音乐网络电台
个性化推荐成功应用的条件:存在信息过载,用户大部分时候没有明确需求
Pandora lastfm 豆瓣电台
它们共同的特点,不能点歌,用户能对当前播放的音乐选择喜欢、不喜欢和跳过。
Pandora使用专家进行标注,称为音乐的基因。基于内容的推荐,基于基因计算歌曲的相似度。
Lastfm记录所有用户的听歌记录和歌曲反馈,给用户推荐和他相似听歌爱好的其他用户喜欢的歌曲。(没有专家标注)。
社交网络
三个应用:
1.利用用户的社交网络信息对用户进行个性化的物品推荐
2.信息流的会话推荐
3.给用户推荐好友
Facebook的数据:用户之间的社交网络信息,另一个是用户的偏好信息。
1.根据用户好友喜欢的信息,给用户推荐他们的好友最喜欢的物品
2.每个分享和它的所有评论被称为一个会话,给这些会话排序,使用户能够尽量看到熟悉的好友的最新会话
3.除了利用用户社交网络信息和历史行为进行推荐,还能利用个性化推荐服务给用户推荐好友。
个性化阅读
基于位置的服务
给用户推荐离他近的且他感兴趣的服务
个性化邮件推荐系统
对邮件进行排序
个性化广告
广告定向投放
主要技术:1.上下文广告,根据用户正在浏览的内容投放
2.搜索广告,根据搜索记录投放
3.个性化展示,根据用户兴趣投放
1.3推荐系统评测
推荐系统三个参与方:用户、物品提供方、提供推荐系统网站。
评测推荐算法要考虑三方:满足用户的需求,让各个出版社的书都被推荐,推荐系统收集到高质量的用户反馈
准确的预测,预测准确度,能通过离线方式计算出来。准确的预测并不代表好的推荐,例如预测太阳从东边升起。好的推荐系统不仅能够准确预测用户的行为,而且能扩展他们的视野,挖掘他们的潜在兴趣,但却不容易发现的东西。同时,把长尾中的物品推荐给用户。
推荐系统实验方法:
离线实验,证明它在很多离线指标上优于现在的算法
将日志系统得到的数据划分训练、测试集,在训练集上训练用户模型。
速度快,无法计算商业上的指标且计算的指标与商业指标存在差距
用户调查,证明它的用户满意度不低于现在的算法
预测准确度和用户满意度存在差距
用户调查成本高,人少会失实,测试环境和现实环境不同
在线实验,它在我们关心的指标上优于现有的算法
将推荐系统上线做AB测试,将它和旧的算法进行对比。
按照一定规则将用户随机分组,对不同组采用不同的算法,然后统计各种不同的评测指标
可以公平获得不同算法实际在线时的性能指标,周期长,所以只测试离线测试和用户调查表现好的算法。
评测指标
用户满意度,通过用户调查和在线实验获得
用户调查,问卷。
在线系统,利用购买率,推荐结果的反馈,点击率,用户停留时间和转化率等衡量
预测准确度
度量一个推荐系统或推荐算法预测用户行为的能力,离线评测指标
1.评分预测,根据历史评分给没见过的物品进行打分
Rmse mae
2.topn推荐,给用户一个个性化推荐列表,预测准确率一般通过准确率/召回率度量,更符合实际需求
3.覆盖率
描述推荐系统对物品长尾的发掘能力。
覆盖率 定义1:推荐出的物品占总物品集合的比例,内容提供商会关心的指标(问题!即时覆盖率100%,物品的流行度分布是不同的)
热门商品推荐覆盖率是很低的。
定义2:基于信息熵的定义 -sigma (p*log p)
定义3:基尼系数
越平均越好
评测系统是否有马太效应(弱者越弱,强者越强)通过基尼系数,计算初始用户行为的基尼系数G1和推荐列表中计算得到的基尼系数G2,G2>G1,就说明推荐算法具有马太效应。
4.多样性
描述了推荐列表中物品两两之间的不相似性,
整体多样性
推荐系统多样性最好达到的程度,用户喜欢的比例和推荐的比例相同,要考虑到用户的主要兴趣。
5.新颖性:给用户推荐那些他们以前没有听说过的物品
把用户之前在网站中对其有过行为的物品从推荐列表中过滤掉,用户有可能其他网站也看过,也需要过滤掉。利用推荐结果的平均流行度来判定推荐结果的新颖程度。
6.惊喜度:推荐结果和用户的历史兴趣不相似,但却让用户满意,而推荐的新颖度仅取决于它之前是否听说过。
提高推荐惊喜度需要提高推荐结果的用户满意度,同时降低推荐结果和用户历史兴趣的相似度。
7.信任度
同样的推荐结果以让用户信任的方式推荐给用户就更能让用户产生购买欲,而以类似广告形式的方式推荐给用户就可能很难让用户产生购买的意愿。
提高信任度方式:1.透明度,提供推荐解释2.考虑用户的社交网络信息
8.实时性
1.推荐系统需要实时地根据用户行为来更新推荐列表
2.推荐系统需要能将新加入系统地物品推荐给用户,用户推荐列表中有多大比例地物品时当天新加的来评测
9.健壮性
注入攻击,评测方法,加入噪声数据后,利用算法再次生成推荐列表,比较前后推荐列表。
方法:
设计推荐系统,利用代价比较高的用户行为,相比浏览和购买,选择购买记录作为数据。
在使用数据前,进行攻击检测。
10.商业目标
赚的钱多少
通过提高离线指标来提升在线指标。
离线优化的优化目标,在最大化预测准确度的基础上,使得覆盖率,新颖度(推荐平均他流行度),多样性大于某一阈值。
评测维度
用户 物品 时间
在什么情况下,某些推荐的效果会好一点