2011推荐系统峰会及全民娱乐
2011年推荐系统峰会虽然已经落下帷幕,但关于张栋在会上提的算法在一个推荐产品中所占比重的问题仍然引起大家的热议,特别是算法人员与产品/设计人员,算法人员是为外界的误读而捍卫自身的尊严,产品/设计者则乐于发现一个可以宣告自己工作价值的话题。
为免将来在社区内外出现的以讹传讹的对社区不良发展的状况,同时也为免将来别人问起时一遍又一遍地重复,作为一个全程参与、归纳并直播的人,有必要站出来说几句。首先这是一次盛大而充满技术含量的大会,其中有组委会的同学与赞助商的不懈努力,这里不再点名表扬。所以首先是对大会的一次总结,对技术无爱只求八卦的同学可以直接跳到最后。
这次大会无论从参会者的人数与覆盖面,还是从演讲者的整体水平,都是空前的。报名了1000多人,为控制会议的规模与质量,实际到会有200多人。而主讲者里,有推荐系统领域的世界级专家、有国内互联网公司资深的从业人员、有著名公司的数据与经验的分享,个个都是重磅炸弹。
最先登场的Koren是本次大会的特邀嘉宾,作为netflix prize冠军队成员,远途而来的他没有令大家失望,不仅带来一个干货十足的topic,还带来了浓郁的以色列家乡风味的口音(囧)。Koren的topic基本涵盖了这些年来他所有的相关工作,无论是参加netflix prize时的基本模型与经验;还是时间效应如何融入到model的探索;又或是如何构建快速的反馈系统以解决冷启动问题;还有像在Y!Answer那样的问答应用中如何融合多种数据属性而给出multi-channel推荐的问题;还少不了对评分的关注,二值、数值、序值类型的评分model;当然还少不了对推荐置信度的关注,推荐框架中的validator模块对于多推荐引擎混合的系统肯定会特别有用。每个话题都分量十足,毫无保留,虽然偏重于学术研究,但可为商业应用参考与启发的地方也很多,十分推荐细细参看其PPT。另一个让人印象非常深刻的是他的务实作风,报告后的Q&A环节,充分地阐释了一个学术人员的严谨,知之为知之,不知为不知,绝不会在自己不擅长的事情上妄加评论。
赞助商淘宝网在上下午分别各有一个topic,上午玄澄阐述淘宝数据的力量,下午的主题偏技术,介绍淘宝在电商推荐与广告投放方面的经验。其实,凭我的记忆,当天至少有三位主讲者或显或隐地在说明数据在系统中的重要性,Koren就认为more user input > better algorithm,难怪netflix prize最后大家都把train和test的数据都当作train来使。另一个这么提的是下面要讲的张栋,还有就是淘宝所展示的数据的力量。事后我想想,淘宝上的交易数据实质上已经对中国城市居民的购买行为有了相当高比例的采样,从中分析得到的结果可说具有很纯粹的现实的价值,在商业方面,这可能比所谓国家统计局得到的结论更令人信服。几个有趣的分析结果如:比较淘宝门票销售额可推论热度上张学友>王菲>周杰伦;从喜糖购买人群的特征可推论有40%的男性是30岁以后结婚的(大龄男青年们可以安心一些了)。如果这些数据能有一定程度的公开,这必定是一笔巨大的财富。在如此庞大的用户行为数据的基础上,淘宝也作出了一些推荐与广告方面的尝试,游龙的这个主题谈及到用户在网购不同阶段需求的不同,这让我感觉很亲切,做一个算法产品,不了解用户的需求,以为只要埋头写实现是不行的。除此之外,他们还分析了各个网站之间的跨域访问的需求,看得出来,他们很注重对用户的分析与理解,这是条正道。
张栋的话题其实带进了很多自己的归纳与思考,只是由于那页推荐产品各成分占比:UI/UE:40%>Data:30%>Knowledge:20%>Algorithm:10%的PPT,一下把大家的注意力给分散了。这里提几点自己记忆比较深刻的,一是算法在两个维度的分类:一个维度是content-based与CF,另一个维度是memory-based与model-based,这也是比较合理与清晰的划分,建议沿用。他也认为推荐系统是应用领域相关的,不可能跟搜索引擎一样有一个统一的框架与做法,即便amazon内部不同大类的商品,也需要有不同的推荐引擎,对此我深以为然。相对于对各种优秀算法的研究,张栋比较认同混合算法的威力,他述说了一段参加netflix prize的往事,他是最早参加的一批,慢慢地发现后来者层出不穷,而后期英雄榜上的队伍用的基本上都是混合的模型,成千上万个模型的组合,于是他有感:一个好的算法无法打败无数个combine起来的算法。
来自腾讯的前google研究员王益贡献了一个底层的技术主题,特别是一个轻量级的C++实现类似于map/reduce的框架。只可惜我这方面的功力不够,只能表示理解无力啊。以我当时的一句话来归纳一下吧:王益这个topic比较底层,提醒我们再强大的算法还是由底层架构运行的,再强悍的底层还是有遭雷劈的可能的。不知道这个名为MRML的框架有没有开源的可能?如果可以,广大map/reduce或hadoop粉丝倒可以看上一看。
最后一个压轴的是来自hulu的郑华带来的他们在视频推荐与广告投放方面的经验。诚实的说,郑华的这个报告披露了大量的内部数据与实实在在的实践经验,对于业界相当地有参考价值,只是当时我处于最后的疲劳期,注意力稍有不集中,当时PPT的知识点又如流光掠影般的层出不穷,以致于对这个主题只作了廖廖几条的直播,深感抱歉。也建议广大互联网从业者,无论技术的还是非技术的,不妨细细研究郑华的PPT,看看一个推荐产品是如何的领域相关,又是如何受到商业、产品、用户群体等各方面因素的约束,不光是算法,在产品设计层面又可以做些什么出彩的工作。
可以从会上各人的主题中归纳出一些当前的共识来:如推荐产品的领域相关、数据为王、模型效果的评估、算法组合技术的威力。
不再赘述,更多的内容可以参看我当时用resyschina的微博帐号做的直播http://t.sina.com.cn/resys,或是关注该帐号,等待会议PPT的放出。
然后就是关于一个推荐产品中到底什么比较重要,也即UI/UE:40%>Data:30%>Knowledge:20%>Algorithm:10%的争论。就这个事情,我曾在resyschina的新浪微博帐号上发过一些想法,这里再把思路归纳一下。
首先要注意的是这些数字本身没有任何的意义,因为没有任何一个人可以得到如此精确的数字比例,提出这些数字的人,最主要的关注点也只是它们的排序关系,我们就这种排序来讨论即可。另外要注意的是,这里的算法是个狭义的范畴,特指直接产生推荐效果的算法。因为广义来说,那几部分都可以跟算法相关。领域知识的获取除了主观上专家的意见,还有赖于客观上对用户数据的分析与探索,以产生知识与理解;另外,要得到绝对良好的数据是不可能的,所以数据的清洗、各种预处理工作也是算法工作者经验与能力的体现;再往上,就算一个产品的设计与交互方式,哪个好哪个坏,也可以通过数据的收集与算法的分析来得到辅证,极端的例子如google的统一实验框架。
但是,在这个全民娱乐的时代,专业性领域的某些言论是最容易被大众所误读了,这也是为什么严谨的科学家们不太敢说话的原因,因为你的话总是会被善良的群众作出筛选,然后以大众所最喜闻乐见的形式广播出去,同时也满足了业外人士对这个领域的好奇心。只是很可能,当大众发现不是这么回事的时候,这个专家就要被骂成“砖家”了。
顺便推荐两个来自算法从业者对这个事情的简要讨论,一个调侃,一个溯源。http://sinaurl.cn/h5BarP , http://sinaurl.cn/h5rTgS
心理学研究表明,人们往往对序列最前与最后的事件记忆最深刻,其实大家更应该关注的是中间的两个因素:数据与领域知识。因为一头一尾两个因素的热议更多的是因为职业之争,就像管理者与工程师之争一样,这样的争辩并不能产生生产力。而数据与领域知识是需要并且可以花心思做好,而且可以得到实实在在的产出的。这些数字比例的本义是,在商业应用上,很多算法都已经成熟,所以不用再花太多的心思去考虑新的算法。但对数据的探索,对应用领域的研究,甚至UI/UE的设计,还是需要算法人员与其它人员紧密的沟通,以臻于完美的。
另外一个解读,源于物以稀为贵,或者说从短板理论角度的理解。构建一个产品,或者说搭建一个系统,知识最欠缺的模块往往决定了这个系统的成败。对于推荐产品来说,有效的算法其实绝大多数来源于统计学、矩阵论、概率论、机器学习、数据挖掘等等有所交叠的领域,这些算法的基本形态已经被研究得非常透彻,所以它不太可能会成为一个推荐产品的瓶颈。关键的问题就在于如何用这些成熟的算法为你具体的领域搭建出一个有效的应用,这需要你对这个领域的理解,书的推荐、电影的推荐、音乐的推荐、电子商务的推荐都是截然不同的;算法运作的土壤是数据,巧妇难为无米之炊,所以需要你有充分的干净可用的数据;更重要的,对这个还不能广为大众所接受的产品,它应该有一个怎样的形态,用户才会接受它,理解它。所以就得出了UE/UI>数据>领域知识>算法的结论,与其说这是个重要性的排序,还不如说这是推荐产品中欠缺性的排序,或者说所需时间分配的排序。
可能会有同学举出搜索引擎的例子来,很恰巧,这是一个平台、算法作为短板的应用。Google最重要的创新之一,就是把产品/设计问题降约为一个搜索框(或者一个广告侧栏),接下来就没有产品形态什么事了,随着新网页指数级的增长,spammer的层出不穷,用户搜索需求越来越丰富,一个可伸缩的搜索平台、一个合理的评分算法、一个能准确定位用户意图的用户模型,永远都处于欠缺状态。相比于推荐引擎要考虑推荐条目的特性、商务上的约束、推荐解释的要求等等非纯粹算法的要求,搜索引擎显得要纯粹得多,技术得多。