最近lz在研究推荐系统,对利用基于协同过滤算法来实现推荐非常感兴趣,因此,就自学了这一方面的内容,并且看了《推荐系统实践》一书,对这方面的理解也进了一步。
首先协同过滤算法在1992年被提出来,最初的设想是,当你去要看电影时,不知道要看哪一部,此时你可能会去询问你的朋友,关于这方面的问题,因为往往你的朋友在这一方面和你的兴趣相似,所以我们可以通过与你具有相似兴趣的朋友喜欢的电影入手来通过他们来给你推荐相关的电影。因此,这就是协同过滤算法的来源。发展至今,协同过滤算法又分为两个分支,分别是基于用户的协同过滤算法(user-based cf)和基于物品的协同过滤算法(item-based cf)两类。
那么本文研究的是基于用户的协同过滤算法。首先,我们考虑计算用户之间的相似度。比如有基于欧几里得距离的相似度、基于皮尔逊相关系数的相似度等。那么通过计算相似度,就可以得到top K的相似度中最近的前K个的用户,然后通过根据这些用户所喜爱的电影来推荐给这个用户,这也就是基于用户的协同过滤算法为不同用户来定制个性化的推荐内容的主旨。
基于用户的协同过滤算法和基于物品的协同过滤算法之java实现
最新推荐文章于 2024-06-07 14:58:07 发布
![](https://img-home.csdnimg.cn/images/20240711042549.png)