13.6 Mahout应用:建立一个推荐引擎

13.6.1 推荐引擎简介

每天人们都会产生各种各样的想法:喜欢一个产品、不喜欢一件事、不关心某个东西。在人们毫无察觉的情况下,这些事情在悄然发生。一个正在播放的流行歌曲可会引起你的注意,也可能对你没有任何影响。歌曲引起你的注意可能是因为它很好听或者它很让人厌烦。同样的事情也会发生在其他的事情上。这就是人们的喜好。

每个人都有着不同的喜好,但是这些喜好会遵循着类似的规律。对于一个人来说,如果一个新的事物与他之前喜欢的事物相似,那么他很有可能也会喜欢这个新事物。如果一个外国人喜欢吃中国饺子,那么他很有可能会喜欢中国的包子。因为它们都是带馅的面食。此外,如果你的朋友喜欢周国平的散文,那么你也很有可能会喜欢周国平的散文。因为朋友之间会有一些共同的喜好。

在日常生活中,预测人们的喜好是没有问题的。假设有两个人A和B。对于B是否喜欢电影《指环王III》的问题,大多数人只能靠猜测。但如果A知道B喜欢《指环王I》和《指环王II》,那么可以推测B喜欢《指环王III》。如果B对指环王系列电影一点也不了解,A基本可以断定,B是不会喜欢《指环王III》的。

推荐引擎就是对人们的喜好做出预测的一种技术。它会依据已经获得的各种信息,对用户的购买行为做出预测,从而达到相应目的。现实生活中,人们都经历过网站向客户推荐产品,这些推荐都是基于客户浏览信息的推荐。网站试着推断客户的喜好,以此来向客户推荐他们可能会喜欢的产品。

卓越网使用了推荐引擎技术,在购买一本书的同时,网站会利用顾客的购买习惯和书籍之间的关系为顾客推荐他们可能会感兴趣的书籍或音像制品。例如,当某一名顾客想要购买《云计算》这本书时,在页面的下方会出现购买此商品的顾客同时购买的书籍。这样顾客就可能会顺便买一本相关的书。推荐引擎技术不仅可以帮助顾客更容易地发现自己想要的商品,而且可以帮助商家售卖更多的商品。社交网站人人网利用推荐引擎技术,向用户推荐一些可能是用户朋友的人。对于最有可能是朋友的人,人人网会自动把这些最可能是该用户朋友的人放在最前方,以供用户选择。推荐引擎技术已经悄然地影响着人们的生活,只是人们可能并没有注意它。