协同过滤推荐算法
一、推荐算法 当你在电商网站购物时,天猫会弹出“和你买了同样物品的人还买了XXX”的信息;当你在SNS社交网站闲逛时,也会看到“你可能认识XXX“的信息;当你在微博添加关注人时,也会看到“你可能对XXX也感兴趣”等等。所有这一切,都是背后的推荐算法运作的结果。 推荐算法,不是某一个也不是某一类算法,凡是能实现推荐功能的算法(比如关联算法、分类算法、聚类算法),都可称之为推荐算法。 推荐功能就是为用户(User)推荐商品(Item)。 依据不同的角度,推荐大致分为以下几种: 1)基于内容的推荐:这一类一般依赖于自然语言处理NLP的一些知识,通过挖掘文本的TF-IDF特征向量,来得到用户的偏好,进而做推荐。这类推荐算法可以找到用户独特的小众喜好,而且还有较好的解释性。 2)基于流行度的推荐:常见的比如基于最多用户点击、最多用户浏览等,属于大众型的推荐方法,在目前的大数据时代并不主流。 3)基于人口统计信息的推荐:这一类是最简单的,它只是简单的根据用户的基本信息发现用户的相关程度,然后进行推荐,目前在大型系统中已经较少使用。 4)混合推荐:这个类似机器学习中的集成学习,博采众长,通过多个推荐算法的结合得到一个更好的。 5)协同过滤推荐:目前最主流的,花样繁多,在工业界已经有了很广泛的应用。它的优点是不需要太多特定领域的知识,可以通过基于统计的机器学习算法得到较好的推荐效果。工程上容易实现