Toby Segaran 是 Recommender Systems 及 Semantic Web 方面的大牛,著有两本很受欢迎的技术著作,《Programming Collective Intelligence》[1]、 《Programming the Semantic Web》。他具备一项羡煞旁人的技能——轻描淡写之间理清算法脉络,让枯燥的公式变成具有喜感的代码。我是他的 fans。
今年上半年,他受 Andreas Weigend 之邀,在 Stanford 的 Data Mining and Electronic Business 课堂上做了一次有关“Recommender Systems”的讲座。Andreas Weigend 之前在 Amazon 任职,位居首席科学家,在 Amazon 的推荐引擎建设方面做出了大量的贡献。下面是 Toby 自己列出的一些主要观点,
- Amazon makes 20-30% of its sales from recommendations. Only 16% of people go to Amazon with explicit intent to buy something
- The data that you collect matters much more than the algorithm you use. Amazon’s
algorithm is essentially a large product-product correlation matrix for
the past hour, but it works for them because hey collect so much data
through user actions
- Many problems including shopping, targeted advertising, dating, finding events, etc. can be framed as recommendation problems
- Very important take away: find ways to collect as
much user input as possible without being disruptive. People don’t
train systems, they try to benefit themselves, but this is the best
kind of training data
- There are a lot of different types of data that can train a system:
votes, clicks, page-view time, purchases, tagging, adding a title — the
user does these things anyway, and you can use the data
- A/B testing is an effective and underused way to learn about
people. Simply by varying the way you phrase something, you can learn
more about your users
- Very few systems now are combining metadata or content with
collaborative filtering. The consensus in the class when discussing a
music recommendation system was that this could be very effective
课程相关的资料在这里,看完这个,再对比我曾经所学的课程,想死的心都有了!
如果有一篇文章,在来源(作者、发布的网站)你不确认的情况下,如何判断其是否可读呢?
选择只能是:标题+摘要。这个没招儿,那么多文章,必须有一个快速筛选的方法。标题是最一目了然的地方,这也是为什么那么多标题党的原因。摘要通常有两个方法,发布者给出,或者是自己快速扫一眼。人确实太NB了,随便扫一眼,就够计算机折腾一壶了。那计算机有办法模拟人来理解文章吗?语义分析。这个我不展开说了。
当文章看多了之后,我们会积累下来什么经验呢?
- 某作者小A写的文章比较靠谱。这个信任的作者。
- 某网站小E摘选的文章比较靠谱。这个其实信任的是编辑。
因此总结下来,评价一篇文章可读性的因素主要是 3 个:
- 内容是否是我感兴趣的。
- 我是否信任这个作者。
- 我是否信任某个第三方的评价。
一个好的阅读工具,应该能够有效地帮助我们发掘和强化这三个因素。
Social Media 之所以流行,恰恰是因为它针对上面三个因素引入了一些新的特性。Social Media 有一个基本假设,即群体智慧,意思是说,参与到 social 中的群体越多,media 所反应出来的智慧越高超。
- Tag,针对第一个因素。提高了内容判断的效率和准确性。作者小A的标题是有主观性的,而 Tag 是广大读者打的,更趋于客观。
- Blog,针对第二个因素。作者小A以一种更加容易辨识的主体出现,读者对小A的认识更立体化,并且可以产生交互,容易记忆。
- Digg/Share/推荐,针对第三个因素。这里是最体现群体智慧的地方,三个臭皮匠能顶一个诸葛亮。大家都说好,那么它真好的可能性,应该会比某网站小E说好的可能性要大。
- SNS,更强化了上面的第三个因素。如果是你的好朋友推荐的,那么你觉得好的可能行就更大了。
据此,我个人简单分析一下最近国内热门的几个 Social Media 应用。
玩聚SR。一句话点评:个人认为是玩聚旗下感觉最对路的应用。

上图中底部的“分享者”一栏,目前看来用处不大,因为放眼望去这些分享者大多我不认识,不但不能增强阅读的信任感,反而是一种干扰:这些我不认识的人推荐出来的东西我要看吗?还不如像 digg 那样,只显示 digg 数字,放大数字带来的心理暗示:这么多人推荐,我也看看吧!
玩聚SR的页面,我个人感觉有些乱,会头晕。从用户体验角度看,可有可无的,最好不要。这个分享者列表,不如拿掉,在网页快照里面显示就好了。
豆瓣新九点。一句话点评:我是曾经的豆瓣一套的坚定拥护者,这次新九点终于把其融合了进来,很好。

上图中底部的“5人推荐”一栏,是个失败的设计。我看豆瓣的文章,首先看是谁推荐的,如果找到一个我非常认同的人,那么我必看,反而推荐人数并不是决定因素了。而豆瓣没有有效地利用这一点,导致和其他的阅读工具缺乏区别化。
用户访问某个网站,是有心理预期的。
玩聚SR,我没想在上面找到多少我认识的人,而大部分分享者我都不认识的事实,也正强化了这个心理预期。因此分享者列表作用小,推荐数作用大。
豆瓣,是我熟悉的网站,这上面有我熟识的朋友。用户带着这样的惯性从豆瓣来到九点,朋友作用大,数字作用小。
定位你最希望服务的用户,设计产品。不该用的用了,该用的确却没用,可惜了。
推荐继续阅读 NullPointer 的两篇 blog:
- 从豆瓣的推荐功能说起——SNS网站的内向和外向
- 接着说豆瓣的推荐功能——社会化推荐的动力和阻力
Digg 最近完成了新一轮的融资,总共 $28.7 million,不过目前国内关注 Digg 的人似乎已经不多了。在官方 blog 里吸引我的是他们提到的一些 new features,“… personalizing the Digg experience, enhancing the recommendation system across other areas of the site, creating deeper category …”。Personalization 越来越成为主流,这是个好事情!
2008年6月底,Digg 终于放出了大家期待已久的 recommendation engine。在运行1个多月之后,他们公布了统计效果:
- 用户活跃度显著提高:增长了40%。
- 运转的很好很强大:平均每个用户会得到200条推荐,这些推荐,平均来自于34个“像你”的用户;整个站点会产生54,000,000条推荐。
- 友邻活动/添加友邻增长了24%。
- 评论增长了11%。
我不是 Digg 的深度用户,基本是在他们放出 recommendation engine 之后,才逐渐增加了 Digg 的使用频度,而且也还是断断续续的。但就简单体验来看,效果还是蛮不错的。如果你是 Digg 的忠实用户,非常欢迎到这里来讨论。
另外,最近在使用各类 SNS 的过程中,被好友动态折腾到不行。而且清一色的流水帐布局,乱,没有效率,也缺乏新意。我简单地提了个小设想,“在好友范围内,统计一天里最 popular 的东西”。回头却发现,FriendFeed 早在8月份的时候就已经推出了这个 feature。最近基本上没怎么使用 FriendFeed,疏忽了,看来接下来需要提高 FriendFeed 的使用频率,跟踪研究一下效果。