作为【推荐系统】系列文章第二十四讲,将以 “新颖性(Novelty)” 作为今天的主角。满足推荐的新颖性最简单的方法就是给用户推荐他们之前没有看过的物品,但是这不是一个简单的问题,需要从多个角度进行考虑,首先就是如何定义推荐的新颖性。
Novelty
Novelty(新颖性)的概念通常涉及到:在推荐系统中有新(novel)的items。尽管一开始看起来很简单,但novelty有许多种定义。因此,为了让定义更简单,我们对novelty定义和指标划分成三个level,如下所示。Novelty指标被称为:。
level 1: Life level。在用户生命周期中一个item是novel的,也就是说,该用户从未在它的生命周期中听说过该item level 2: System level。根据用户的历史消费行为,该item对该用户是未知的 level 3: Recommendation list level。在推荐列表中无冗余的items(Non-redundant)
Life level
life level:将未知items(unknown)描述为在用户的生命周期中从未发生交互或未知的items。
对于life level novelty进行度量而创建metrics是不容易的。对于level 1 novelty的一个合理metric是:考虑超出系统上下文的信息,以便能够度量用户是否已知这个item。
System level
System level novelty在文献中也有许多定义。
一个用户的novel item可以认为是:该用户对该item完全不知或知道很少。将这样的items认为是:当一个RS预测items时,这种novelty items对用户来说是完全不知的,或者通过其它源未被发现的。 另外一种,novelty也可以被定义成:推荐的item与用户已经消费的items没有任何关联。 novelty还可以被定义成:对某用户的预测列表中未知items的比例。实际上,这样的novel items定义只考虑了:当在用户的消费历史中观察到之前已消费items;在系统外消费的items不会被考虑其中。
总之,即使作者使用了不同的话术,但他们仍具有相同的意思:level 2的novelty意味着:当考虑上系统信息时,用户未知的items。
在论文中提出的大多数metrics的评估适用于level 2,有一种metric,它会在推荐列表中计算novelty,认为是:在推荐列表中的items与用户历史中()之间的相似度。作者使用items的类目(classes)来对items间的距离进行度量。d是一个distance function,表示了item i的classes。该idea可以被推广到items的features。metric如下:
Recommendation list level
level 3指的是在推荐列表级别的novelty,也就是说,items不会被重复推荐。某种意义上,novelty被定义成在推荐列表中没有重复items,并不会涉及到用户信息。有的论文认为novelty与在推荐列表中没有冗余的items有关。level 3可以认为是level 2的特例,其中在推荐列表中没有冗余items或重复items。
level 3的novelty指标衡量指的是在推荐列表中的items。不需要用户信息。上面等式会计算在推荐列表中的items间相似度。另外,意味着item i和j间的距离。然而,该指标看起来类似于intra-list similarity,不适合对novelty进行measure。
另外,一种不同的metric来measure推荐列表中的novelty。上面等式展示了该metric。该metric会考虑items在ranked recommendation list中的items的位置,以便计算关于浏览完整个list的一个discount()。另外,该metric也会计算:当浏览时该用户已经看到过item的概率。由于该概率可能会/不会考虑用户的消费信息,该指标最适合level 2和level 3间novelty的划分。
更多干货获取
Kaggle竞赛2022年鉴:公众号回复 kaggle2022
获取推荐系统知识卡片:公众号回复 推荐系统
获取数据科学速查表(传统CTR、深度学习CTR、Graph Embedding、多任务学习):公众号回复 速查表
获取历届腾讯广告算法大赛答辩PPT:公众号回复 腾讯赛
获取KDD Cup历史比赛合集:公众号回复 KDD2020
获取






