推荐系统实战阅读笔记(一)

1.什么是推荐系统

用户没有明确的需求,你需要的是一个自动化的工具,它可以分析你的历史兴趣,从庞大的电影库中找到几部符合你兴趣的电影供你选择。这个工具就是个性化推荐系统。

推荐系统的主要任务
推荐系统的任务就是联系用户和信息,一方面帮助用户发现对自己有价值的信息,另一方面让信息能够展现在对它感兴趣的用户面前,从而实现信息消费者和信息生产者的双赢
推荐系统与搜索引擎的区别
和搜索引擎一样,推荐系统也是一种帮助用户快速发现有用信息的工具。和搜索引擎不同的是,推荐系统不需要用户提供明确的需求,而是通过分析用户的历史行为给用户的兴趣建模,从而主动给用户推荐能够满足他们兴趣和需求的信息。因此,从某种意义上说,推荐系统和搜索引擎对于用户来说是两个互补的工具。搜索引擎满足了用户有明确目的时的主动查找需求,而推荐系统能够在用户没有明确目的的时候帮助他们发现感兴趣的新内容。

从物品的角度出发,推荐系统可以更好地发掘物品的长尾( long tail)
需要推荐的两个因素
1.信息过载
2.用户没有明确的需求

2.应用举例

亚马逊的推荐系统

  • 基于内容的推荐【推荐你之前浏览过的相似内容】
  • 基于好友关系的推荐【推荐facebook上好友喜欢的内容】
  • 相关商品推荐【相关不是相似,而是一种打包销售,比如著名的尿布和啤酒更配哦】

个性化广告
个性化广告投放目前已经成为了一门独立的学科——计算广告学——但该学科和推荐系统在很多基础理论和方法上是相通的,比如它们的目的都是联系用户和物品,只是在个性化广告中,物品就是广告。
个性化广告投放和狭义个性化推荐的区别是,个性化推荐着重于帮助用户找到可能令他们感兴趣的物品,而广告推荐着重于帮助广告找到可能对它们感兴趣的用户,即一个是以用户为核心,而另一个以广告为核心。

3.推荐系统的评价指标

3.1 实验方法

离线实验
优点:
不需要有对实际系统的控制权
不需要用户参与实验
速度快,可以测试大量算法
缺点
无法计算商业上关心的指标(如点击率、转化率等)
离线实验的指标和商业指标存在差距
用户调查
如果要准确评测一个算法,需要相对比较真实的环境。最好的方法就是将算法直接上线测试,但在对算法会不会降低用户满意度不太有把握的情况下,上线测试具有较高的风险,所以在上线测试前一般需要做一次称为用户调查的测试
用户调查需要有一些真实用户,让他们在需要测试的推荐系统上完成一些任务。在他们完成任务时,我们需要观察和记录他们的行为,并让他们回答一些问题。最后,我们需要通过分析他们的行为和答案了解测试系统的性能
优点
它的优点是可以获得很多体现用户主观感受的指标,相对在线
实验风险很低,出现错误后很容易弥补。
缺点
缺点是招募测试用户代价较大,很难组织大规模的测试
用户,因此会使测试结果的统计意义不足
在线实验
AB测试是一种很常用的在线评测算法的实验方法。它通过一定的规则将用户随机分成几组,并对不同组的用户采用不同的算法,然后通过统计不同组用户的各种不同的评测指标比较不同算法,比如可以统计不同组用户的点击率,通过点击率比较不同算法的性能。
优点:
可以公平获得不同算法实际在线时的性能指标,包括商业上关注的指标。
缺点:
1.周期比较长,必须进行长期的实验才能得到可靠的结果。因此一般不会用AB测试测试所有的算法,而只是用它测试那些在离线实验和用户调查中表现很好的算法。
2.一个大型网站的AB测试系统的设计也是一项复杂的工程。一个大型网站的架构分前端和后端,从前端展示给用户的界面到最后端的算法,中间往往经过了很多层,这些层往往由不同的团队控
制,而且都有可能做AB测试。如果为不同的层分别设计AB测试系统,那么不同的AB测试之间往往会互相干扰。比如,当我们进行一个后台推荐算法的AB测试,同时网页团队在做推荐页面的
界面AB测试,最终的结果就是你不知道测试结果是自己算法的改变,还是推荐界面的改变造成的。因此,切分流量是AB测试中的关键,不同的层以及控制这些层的团队需要从一个统一的地
方获得自己AB测试的流量,而不同层之间的流量应该是正交的

3.2 评价指标

这里写图片描述
这里写图片描述

猜你喜欢

转载自blog.csdn.net/qq_23269761/article/details/81295705
今日推荐