推荐解释对推荐系统的重要性

  • 更新时间: 2017-12-15
  • 来源: 原创或网络
  • 浏览数: 43次
  • 字数: 3855
  • 发表评论

推荐解释之重要,在于他可以让用户理解推荐,并且知道他的行为是怎样影响他的推荐结果的。

推荐解释对推荐系统的重要性,by 5lulu.com

好的推荐解释的例子有上图amazon的推荐解释。另外大家常用的google reader也是有推荐解释的。他的推荐解释是基于user的,他会告诉你这篇文章谁也喜欢,或者是谁分享的。这个时候,用户如果要获得好的推荐,他可以通过选择follow谁来决定。所以说,有了好的推荐解释,甚至可以不用算法。我个人把twitter本身也看做一个有解释的推荐系统。用户可以通过选择follow来决定自己的首页上显示什么样的消息。

一个好的推荐系统,不在于其算法的复杂性,也不在于其精度或者其他指标。而是在于他能成为一个循环的良性系统。一个系统要进入良性循环,反馈是最重要的。而反馈是用户给的,如果用户能给出好的反馈,那么推荐系统就会越来越好。这几年推荐系统的研究逐渐复杂化,大家都在比拼自己算法的高深和玄妙,其实没有必要。复杂的算法只是用来应付坏的数据,而如果数据足够的好,简单的算法效果是最好的。

用户有的时候困惑于我们的推荐,他们会很奇怪,为什么我们给他推荐这个东西。从而产生对推荐系统的不满。这个时候,如果我们给他以解释,告诉他我们为什么推荐这个,已经推荐结果和他的日常行为之间的关系。用户就可以知道如何反馈行为给推荐系统。同时对奇怪的推荐的不满程度也会下降。

其实揭示算法的本质,goole很早之前就做了。google鼓励大家seo,并且告诉大家什么样的网页权重会高。这也促进了互联网上网页格式的统一,对google本身也是好的。当然这也会引来作弊,这是双刃剑,无法避免。

国内的推荐系统在解释方面不是很重视,豆瓣似乎一直是没有解释的,他只是简单区分了友邻的推荐和基于浏览历史的推荐。

我感觉,好的推荐系统是应该以可解释性为中心的。一个不可以解释的推荐系统终将不能成为一个持久的系统。当然很多算法的解释性不好。KNN的解释很容易,而SVD的算法几乎就是没法解释的。而往往常规的推荐系统设计是以精度为中心的。我现在对精度的看法是,这件事基本不靠谱。我们实验测的精度,和用户满意度之间有没有线性正比关系,我相当怀疑。一个用户对一个系统满意,不仅仅在于推荐本身是否满足他的需要,而且在于系统告诉他,他应该怎么做才能获得自己想要的结果。

对实验精度的另一个批判是,这其实只是预测精度。预测这件事情有的时候很容易做对,他的难易在于被预测item的信息量。如果我预测太阳从东方升起,那肯定是100%的精度。而我对现有推荐算法的看法是,我们的所谓预测精度的提高,往往都是在提高对容易预测对的事情的预测精度,而对于不容易预测对的事情的精度,我们几乎没有提高。比如在netflix prize中,对于高方差的电影(用户看法极端不一致的电影),我们的预测精度的提高甚至连1%都没有。要知道,如果一个电影全世界的人都打4分,你预测一个新人也打4分,预测对了,也是没有意义的。


标签: 方差 消息 信息量 knn 线性

我来评分 :6
0

转载注明:转自5lulu技术库

本站遵循:署名-非商业性使用-禁止演绎 3.0 共享协议