• 2009-10-27

    Mahout的推荐算法

     

    没有机会进入豆瓣,但起码有机会去看Mahout的推荐算法。NETFLIX的推荐算法已经是神经网络算法了,复杂让人难以理解。

    实际上亚马逊的算法也不难理解,简单地说还是相似度算法。业界常用的算法有

    1、基于用户的邻近度比较

    2、基于物品的邻近度比较

    最基本的数学算法其实就是余弦。和搜索引擎算相似度实际上很类似~~算法本身不难理解,但难点在于运算量巨大。所以MAHOUT这个系统大量的问题在于解决分布式计算,计算本身并不复杂,恐怖的地方在于计算量,连贝叶斯都不需要。

    10万本书和10万用户的计算量就过亿了。所以都是这种计算都是离线运算,排出距离(最近的距离,或者说是逆序)前十的用户是很简单的事情,而排出距离最远的前十用户并不增加什么计算量。如果计算后的值储存的好,得到两种迥异的结果就仅仅是查表而已。

    MAHOUT还使用了K邻近算法,那部分我一直没有去摸索。就不表了

    ====================

    PS:关键是豆瓣的算法是什么,只有豆瓣的人才知道。

    如果有兴趣的话,推荐程序员最近一期上有一篇译文,专门讲解推荐算法,当然作者自己还发明了一种基于【有向图】的算法。

     


    历史上的今天:

    臭味相投 2009-10-27
    融资难 2008-10-27