推荐系统的几个标准

前言

推荐系统的评测指标用于评价推荐系统的各方面性能。这些指标有的可以离线获得,有的可以用户调研获得,有的只能在线获得。现在对于不同的指标做下详细的说明。

1.用户满意度

用户作为推荐系统的重要参与者,其满意度是评测推荐系统的最重要指标。但是,用户满意没有办法离线获得,只能通过童虎调查或者在线实验获得。

2.预测精准度

预测精准度是度量一个推荐系统(或者推荐算法)预测用户行为的能力。这个指标是最重要的推荐系统离线评测指标,从推荐系统诞生那天起,几乎99%的于推荐系统相关的论文都在讨论这个指标。

在计算该指标时需要一个离线的数据集,这个数据集包含了用户的历史行为记录。然后将这个数据集通过时间分成训练集和测试集。最后,通过在训练集上面建立用户的行为和兴趣模型预测用户在测试集上的行为,并计算预测行为和测试集上面的实际行为的重合度作为预测准确度。

3.覆盖度

它是描述一个推荐系统对长尾商品的发掘能力的。覆盖度的定义方法有不同。最简单的定义为推荐系统能够推荐出来的商品占总商品集合的比例。

从上面的定义可以看到,覆盖率是一个内容供应商(商家)会关心的指标。这里以图书为例,出版社可能会关心他们的数有没有被推荐给用户。覆盖率为100%的推荐系统可以将每一本书推荐给至少一个用户。此外,从上面的定义也可以知道,热门排行榜(Top 100等等)的覆盖率就很低。它只会推荐那些热门的商品,而这些商品占总商品数的比例是很小的。一个好的推荐系统,不仅仅需要比较高的用户满意度,也要有较高的覆盖度。

社会学领域有一个著名的马太效应,所谓强者越强,弱者更弱的效应。搜索引擎的PageRank算法也具有一定的马太效应,推荐系统的初衷是希望消除马太效应,让商品都有被用户浏览的机会,但是现实是主流的推荐算法(例如协同过滤算法)也是有马太效应的。

4. 多样性

用户的兴趣是广泛的,在一个视频网站中,用户可能既喜欢看《名侦探柯南》,也喜欢看成龙的功夫片,那么,为了满足用户广泛的兴趣,推荐列表需要能够极可能的覆盖用户的不同兴趣领域,即推荐结果要有多样性。

关于推荐系统的多样性最好要达到什么程度?可以通过一个例子说明。假设用户喜欢看动作片和动画片,且80%时间在看动作片,20%时间在看动画片。那么,可以提供4中不同的推荐列表。A中10部动作片,没有动画片;B中10部动画片,没有动作片;C中8部动作片,2部动画片;D中5部动作片,5部动画片。在这个例子中,一般认为C是最好的,它既考虑的多样性,有符合用户的历史行为习惯。

5.新颖性

新颖的推荐是指给用户推荐那些他们之前没有听过的物品。在一个网站中实现新颖性的最简单的办法是,把那些用户之前在网站在对其有过行为的物品从推荐列表中过滤掉。评测新颖度的最简单的办法是利用推荐结果的平均流行度,因为越不热门的商品越可能让用户觉得新颖。因此,如果推荐结果中物品的平均热门程度较低,那么推荐结果就可能有较高的新颖度。

6.惊喜度

惊喜度是最近几年推荐系统领域热门的话题。但什么是惊喜度,惊喜度和新颖度有什么区别是首先要搞清的问题。

可以举个例子说明这两种指标的区别。假设一名用户喜欢周星驰的电影,然后我们给他推荐一部叫做《临歧》的电影,二用户不知道这部电影,那么这个推荐是有新颖性的。但是,这个推荐并没有惊喜度,因为用户一旦了解周星驰的电影,就不会觉得奇怪。但是我们给他推荐一部《活着》,假设用户没有看过这部电影,那么他看完后觉得这部电影还不错,那么就可以说这个推荐让用户觉得是惊喜的。这个例子的基本意思就是,如果推荐结果和用户的历史兴趣不相似,却让用户觉得满意,那么就可以说推荐结果的惊喜度很高,而推荐的新颖性仅仅取决于用户是否听过这个推荐结果。

7.可信度

如果你有两个朋友,一个你很信任,一个满嘴跑火车,那么如果你信任的朋友推荐你去A地方旅游,你很可能听从他的推荐,但那位满嘴跑火车的推荐你去A地方去旅游,相信你多半是不会去的。这两个人可以看成两个推荐系统,尽管他们推荐的结果相同,但你却产生了不同的反应,因为你对他们的信任度是不同的。

提高推荐系统的信任度主要有两种办法。一是增加推荐系统的透明度,而增加透明度的主要办法就是提供推荐解释。只有让用户了解推荐系统的运行机制,让用户认可推荐系统的工作机制,用户才会信任来自推荐系统的推荐。二是考虑用户社交网络的信息,利用好友的信息给用户做推荐,并且用好友进行解释。这是因为用户对他们的好友计较信任,如果这个物品好友买过,那么他们对推荐结果就会相对比较信任。

8.实时性

在很多网站中,因为物品(新闻、微博等)具有很强的时效性,所以需要在物品还有时效性的时候推荐给用户。比如,给用户推荐昨天的新闻显然不如推荐刚刚发生的新闻。因此,在这些网站中,推荐系统的时效性就至关重要。

9.健壮性

任何一个能带来利益算法系统都会被人攻击。这方面最典型的例子就是搜索引擎。搜索引擎的作弊和反作弊斗争异常激烈,这是因为如果自己的商品能成为热门搜索词语的第一个搜索结果,会带来极大的商业利益。推荐系统也面临这这个问题,而健壮性指标衡量了一个推荐系统的抗击作弊的能力。