大篷车
但通过最近一段时间的思考,有了一些新的发现和总结。个性化推荐本来是一个技术性很强的话题,但本文重点仅仅讨论推荐过程中的“道理”,不涉及任何深邃难懂的技术。本文的讨论主要以Zite和当前几款微博过滤产品基本特征作为参照。为了避免不必要的争议,除新浪微博官方功能外,不指明其他具体产品名称。一、基于SNS的Web阅读推荐随着近年来技术发展,如自然语言处理,数据挖掘,机器学习等领域已经形成了一批可工业化的技术,为高度个性化的内容推荐奠定了技术基础。有了加工办法,还要有原料,才能做出产品。个性化推荐亦然。个性化推荐,无非就是将用户可能喜欢的内容挑选出来呈现给他/她。而喜欢又受两个主要因素影响:(1)内容与用户兴趣的相关程度;(2)内容本身的质量(热门度)。换句话说,就是需要知道用户是谁?他喜欢什么样的东西?这个东西是不是用户喜欢的那些类型?用概括性文字表述就是:用户身份标识用户的兴趣发现内容的特征识别非常庆幸,Social为个性化内容推荐提供了以上几乎所有的原料:用户有帐号标识自己;用户的兴趣可以根据他的发帖,网络关系等历史行为数据挖掘获得;内容的类型特征可以通过自然语言处理技术获得。这一切太完美了!Zite,可以说就是这样一个生逢其时的产品,完美的将这些结合在了一起。通过输入Twitter或者Google Reader帐号,Zite会分析用户的阅读喜好(兴趣),然后根据用户喜好选取新闻/文章中与用户兴趣匹配度高的的结果呈现给用户,确实极大地提升了阅读的效率和质量。二、微博信息过滤和推荐沿着上面的思路一路前行,似乎对微博这个正在趋于爆炸的信息宝库进行某种处理,根据用户的喜好进行筛选过滤,推送用户关心的内容,会是一个不错的产品形式。但仔细思考,会发现有两个问题有待解决:1、 热门度必须注意到一个现象:微博作为一种轻量级,参与度高的公开信息源。单从条目数量上讲,微博每天的UGC数量可能比之前整个互联网一个月的产量还高,可内容却参差不齐!于是,内容的质量成了一个问题。比如喜欢笑话的用户,推荐给他一个高质量的笑话,他会很高兴;但同样是笑话,推荐一个质量平平的笑话,可能反而是一种垃圾信息。可见,做微博信息推荐需要更加重视一个因素:内容的质量(热门度)。基于机器学习等方法,目前自然语言处理技术在文本分类等工作的精度和效率,已经达到了工业化的标准。但对于语义方面的识别和处理,还是很不成熟的。目前还没有任何自然语言处理技术能对一段文章的观点、文采进行质量评估。靠谱的质量评估办法,还得依靠群众对文章的反馈来获得,即热门度。文章热门度的评估并不困难(特别对于微博),看看多少人对这条微博进行了评论和转发就可以判定它的热门程度了。但微博作为一种实时性、瞬时性很高的SNS产品,一方面强调内容质量,一方面还有参与和粘性问题需要考虑。依赖专家型用户反馈的推荐系统,实时性必定大打折扣。这也是为什么目前多款微博过滤、推荐产品的时序比较错乱的原因了(其中包括新浪微博官方提供的兴趣阅读功能)。这自然牺牲了不少用户感受。然而Zite这种产品形式对实时性要求不高,无须考虑这个问题。2、 用户期望高微博过滤和Zite阅读推荐还有一个差别。作为阅读推荐,只要把用户感兴趣的领域文章中,选取热门度较高的一些推送给用户,就可以很好满足用户期望。如果漏掉了一些重要的热门新闻,或者掺杂了少量用户并不关心的内容,只要具备一定相关性,都不会明显降低用户的阅读感受。但微博就不同了。微博用户的关注已经是用户初筛过的结果,他当然不希望漏掉这些用户的任何重要信息;另一方面,作为过滤器形式存在的产品,用户对它的无关内容过滤能力的期望也会相对比较苛刻。综合以上两点,微博过滤器的用户满意度及格线相对比较高!3、 再谈热门度除了热门度,还有一些难以具体化的因素影响着用户的喜好。例如:很多数用户可能会有这种经历,一条转发量并不是很高的微博,却可能是我非常喜欢,非常认可的。SNS的一个重要特征是,用户的喜好很大程度上取决于用户的好友们。用户对内容的认可程度往往依赖于他对信息源的认可程度。你不得不承认,即使都是你关注的用户,在你心中的分量是完全不同的。问题是,哪些关注是用户的最爱呢?很多时候,鞋好不好,只有脚知道。用户通常不会主动告诉你!4、 Facebook的EdgeRank算法是那颗银弹吗作为社交网络的鼻祖,Facebook同样面临信息过载的问题。它目前使用一种名叫EdgeRank的推荐算法。从原理和工作流程上,它确实都很简单:你对好友的任何动都被称作一个edge(包括评论,转发,赞,……),根据动作的不同,你的每次动作都会被计算一个分值,所有动作的累加得分表达了你对该好友的相关程度,这个总分将会影响该好友的微博是否跟容易再你的时间线中出现。但显然,EdgeRank的考虑了人与人的关系因素,而对话题因素考虑较少;对内容质量更是毫无涉及。对于关系至上的SNS,这个算法是有效的。但对于微博这种Social Media,他还有效吗?5、 用户细微喜好差别高度个性化的推荐,无论产品形式如何变化,最终落脚点还是对用户兴趣的深入掌握。要想对用户特征有深入的掌握,除了加强技术手段加以识别以外,充分收集用户数据也是一个非常重要的因素。俗话说,巧妇难为无米之炊。很多很重要的用户特征,比如用户对某些细节领域的关注;或是用户对某些具体关注用户有特别的重视程度,这些从他的历史数据中并不足以得到明确的判断。这个也增加了微博过滤的难度和复杂性。我们看看Zite是如何解决这个问题的。Zite面向篇幅较长的Web内容,用户首先看到的是文章分类和文章标题,而不是正文。用户点击标题后才进入文章开始阅读。这个自然流程实际隐藏着一个惊天秘密—-“我对这篇文章内容感兴趣”!是的,再高明的用户兴趣识别算法也需要不断与用户磨合反馈,倾听用户的声音!但微博过滤就不妙了,微博篇幅较短,强行增加一个点击进入的产品流程,无疑是用户体验上的自杀。那么给用户一个“Like”按钮会不会解决这个问题呢?我的答案是悲观的,用户的参与动力可能难以保证。这个需要结合第一点(热门度)和第二点(用户期望)看,一个初始状态不能较高满足用户需求的产品,用户参与动力是很难得到保证的。用户的耐心是每个新产品推广中最昂贵的资源。结论:为了提升用户需求的满足程度,必须具备高质量的用户兴趣识别能力;并在第一时间切实的满足用户的某项需求,至少达到及格线;最后,产品还需要具备很强的用户特征(喜好)收集能力,让你的每个试用用户,最终都能成为你产品的忠实粉丝,并以此感染他周围的人,帮助产品快速传播。做好社会化推荐,三分技术,七分产品和运营。