越读下来越觉得这本书写的是真好,系统性把握的好,知识全面,又浅显易懂,如果我在刚入学就读了这本书,估计读论文时能真正吸收为自己知识的点也会多很多啊。
首先,推荐系统它一般存在三个参与方:用户、物品提供者和提供推荐系统的网站。所以评价推荐系统时要考虑三方的利益,好的推荐系统是能够令三方共赢的系统。
一、推荐系统实验方法
1.离线实验
2.用户调查
3.在线实验
1.离线实验是论文里用的最多的方法,它都是基于数据集完成的,也就是说不需要一个实际的系统供他实验,不需要真实用户的参与,可以快速的测量大量不同的算法。缺点是不能获得很多商业上的指标,比如满意度、点击率、转化率等。
这个步骤一定要理解到位,所以一字不动的抄下来:
1.通过日志系统获得用户的行为数据,并按照一定的格式生成一个标准的数据集
2.将数据集按照一定的规则分成训练集和测试集
3.在训练集上训练用户兴趣模型,在测试集上进行预测
4.通过事先定义的离线指标评测算法在测试集上的预测结果
2.用户调查
它产生的原因是,离线实验的指标通常和实际的商业指标是有差距的,所以需要比较真实的环境,最好将算法直接上线测试,但对用户满意度不太有把握的情况下,直接上线风险较大,所以需要在上线测试前做一次用户调查。
从这里开始学术上就用的不多了,商业上比较看重。大概就是让一些真实用户在测试的推荐系统上完成任务,然后观察记录他们的行为,并让他们回答问题,通过分析行为和答案来了解测试系统的性能。(也有看过,论文里有的用用户调查的方法,当时还很不解,觉得论文实验部分很糟糕,现在才发现原来如此啊)
另外,这里要尽量保证测试用户和真实用户的分布尽量相同,比如年龄、活跃度;也不要让实验人员和用户事先知道测试的目标,避免受主观成分的影响
3.在线实验
这里一般叫AB测试。通过一定的规则将用户随机分成几组,并且对不同组的用户采用不同的算法,然后通过统计不同组用户的各种不同的评测指标比较不同算法,比如统计不同组的用户点击率,以此比较算法性能。
优点是可以获得不同算法实际在线时的性能指标,包括商业上关注的指标,缺点就是周期比较长,而且比较复杂。
二、评测指标
评测指标在不同的测试下的适用性是不同的。
1.用户满意度。获得方式主要是通过问卷调查
2.准确度。需要一个离线的数据集,在训练集上建立用户行为和兴趣模型预测用户在测试集上的行为,并计算预测行为和测试集上实际行为的重合度作为预测准确度。
- 评分预测
即预测用户在对没有评过分的商品时,会给物品评多少分。一般通过均方根误差RMSE和评价绝对误差MAE计算
- top-N推荐
即给用户一个个性化推荐列表,叫做topN推荐。一般通过准确率precision和召回率recall体现(确实是最重要的两个指标了)。
令R(u)是根据用户在训练集上的行为给用户做出的推荐列表,而T(u)是用户在测试集上的行为列表,那么推荐的准确率和召回率的公式是……
一般会选取不同的列表长度,来计算出一组准确率和召回率
3.覆盖率
覆盖率描述的是推荐系统对物品长尾的发掘能力。最简单的定位为推荐系统能够推荐出来的物品占总物品集合的比例。即长度为N的物品列表R(u)/I。
在信息论和经济学中有两个著名的指标可以定义覆盖率
- 信息熵
- 基尼系数
值得一提的是,有个著名的马太效应,即强者更强,弱者越弱的效应,可以通过基尼系数反映出来。从初始用户行为中计算出物品流行度的基尼系数=G1,再从推荐列表中计算出物品流行度的基尼系数=G2,如果G2>G1,那么具有马太效应
马太效应会让热门的物品更热门,不热门的物品更加不热门。具体体现的话,比如现在基本每个app都会有的热门排行榜 ,比如搜索引擎的PageRank也有马太效应。
4.多样性
多样性描述的是,推荐列表能够覆盖用户不同兴趣的能力。如果推荐列表只满足用户的一个西贡区的,那么多样性就比较低(这里之前都理解错了,把基尼系数理解成了多样性)
5.新颖性
新颖的推荐指的是,给用户推荐他们以前没有听说过的物品。评价新颖性的最简单方法是利用推荐结果的平均流行度,因为越不热门的物品越可能让用户感觉新颖。但这里计算的很粗糙
6.惊喜度
如果推荐结果和用户的历史兴趣不相似,但让用户很满意,那么可以说惊喜度很高;新颖性则体现在用户是否听说过这个推荐结果
举例:A喜欢周星驰,推荐给A一个有周星驰参演但大家都不太知道的电影《临歧》,那么新颖性高;B也喜欢周星驰,推荐给B红高粱,B的兴趣里没有它,但是看完后觉得很好很不错,那么是惊喜度高。
7.信任度
让用户对推荐结果产生信任也是非常重要的,度量信任度只能通过问卷调查的方式。提高信任度的两种方式:增加推荐系统的透明度;提供推荐解释(个人认为前面提到的亚马逊就做的很好)
另,对信任度的研究主要集中在评论网站的Epinion的推荐系统上,因为它有创建信任系统来建立用户之间的信任关系
8.实时性
9.健壮性
离线实验 | 问卷调查 | 在线实验 | |
用户满意度 | × | √ | ⚪ |
预测准确度 | √ | √ | × |
覆盖率 | √ | √ | √ |
多样性 | ⚪ | √ | ⚪ |
新颖性 | ⚪ | √ | ⚪ |
惊喜度 | × | √ | × |