SIGIR’09 最近刚刚结束,里面有一些有意思的 paper。今天细读了一下来自 Telefonica Research 的这篇,"The Wisdom of the Few: A Collaborative Filtering Approach Based on Expert Opinions from the Web“。这篇 paper 的核心内容非常简单,主要方式是对比分析,结论也很中肯。要点包括下面几个,
1)进行 Netflix Users vs. Experts(自己收集的)的数据对比分析
- Number of Ratings and Data Sparsity
- Average Rating Distribution
- Rating Standard Deviation (std)
认为,
- Experts 打分数据的稀疏性要好得多
- Experts 的打分对象更全面,好的坏的,流行的冷门的,都会涉及到;而不像大众打分会倾向于流行的和自己喜欢的
- 对好电影的评价,Experts 们更趋一致
- 对于每单个电影的评价,Experts 们的分歧也相对更小
- 对于每单个 User/Expert,Expert 的打分更为稳定。
2)进行 Nearest-Neighbor CF vs. Expert CF 的推荐效果对比,主要评价“准确性/MAD”和“覆盖率/Coverage”两个指标,
- 推荐准确性,NN-CF 差不多比 Expert-CF 要好 10%
- 推荐覆盖率,Expert-CF 差不多比 NN-CF 要高 10%
- 有意思的是上面的右图,用户分布与推荐准确性的关系,
- 在 MAE < 0.5 时,两种方法覆盖的用户数差不多
- 差不多在 MAE = 0.5 时,NN-CF 比 Expert-CF 多 10%
- 之后 MAE 在 [0.5, 1.0] 区间内时,NN-CF 与 Expert-CF 几乎平行
- 这个意思是说,与 Expert-CF 相比,NN-CF 仅对少部分用户(MAC<0.5的用户)有明显优势。而这部分用户又可以认为是可预测性很高的用户,Expert-CF 比较容易利用其他方法提高效果。
- 结论是,Expert-CF 大多数情况下与 NN-CF 效果相当。
3)进行 Nearest-Neighbor CF vs Expert CF 的推荐效果的用户调研,推荐系统最终是为用户服务的,用户说好,才是真的好!
- Random,随机生成的推荐列表
- Critics’ Choice,Experts 平均打分比较高的影片组成的推荐列表
- kNN-CF/Experts-CF,文中两种算法生成的推荐列表
- 左图是用户满意度,调查推荐列表里是否包含用户喜欢的影片。两个评价指标,包含喜欢影片的多少,及是否有惊喜
- 右图是用户反感度,调查推荐列表里是否包含用户讨厌的影评。两个评价指标,包含讨厌影片的多少,及讨厌程度。推荐系统里面有句名言,“错误的推荐还不如不推荐”
- 结论是,Experts-CF 的用户满意度更高。当然了,这个结论的现实性是有一些争议的,比如,参与用户的数量很少,且大多数是男性用户。不过论文作者在这方面都有提到,比较中肯。
证明了 Expert-CF 的可用性之后,吸引人的是这个方法相对传统 CF 方法,能够带来的好处。
- Data Sparsity,数据稀疏性
Experts 的打分数据数据通常涵盖面更广,使用这个数据作推荐,解决了传统 CF 的数据稀疏问题。 - Noise and Malicious Ratings,噪音及恶意打分
Experts 的打分通常更加认真或是专业,解决了用户不小心打错分及恶意捣乱的问题。 - Cold Start Problem,冷开始问题
Experts 通常更加关注自己领域内的新事物,并能够更快地给出评价。 - Scalability,可扩展性
对于 (N-User, M-Item) 的推荐问题,传统 NN-CF 的算法复杂度是 O(N2M),计算量很大。而 Expert-CF 方法可以大幅度降低计算成本。比如论文里的数据,169 experts vs. 500, 000 potential neighbors (Netflix database)。 - Privacy,用户隐私
这个因素有可能非常重要。如何更好地保护用户隐私,这是推荐系统领域的一个热点问题。想像下面的场景,有两个基于手机的推荐应用:A,把你手机上的数据上传到服务器,进行云运算,然后把推荐结果返回给你;B,你把一小撮 Experts 打分数据下载到手机上,进行本地计算,然后得到推荐结果。你会选择哪一个呢?显而易见地,基于 Experts-CF 的应用 B 应该更容易赢得用户信赖,即使是牺牲一定的准确性。







Leave a Reply