文章目录
协同过滤算法:寻找相似的用户和物品
协同过滤算法的核心思想是:根据用户群体对产品偏好的数据,发现用户之间的相似性或者物品之间的相似性,并基于这些相似性为用户作推荐。
两种主要类型:
-
基于用户的协同过滤算法:寻找相似的用户,进而对用户推荐相似用户关注的产品。例如,如果用户A和用户B都喜欢电影A和B,那么可以向用户A推荐用户B喜欢的电影C。
-
基于物品的协同过滤算法:根据用户的历史偏好信息,将类似的物品推荐给用户。例如,如果用户A喜欢电影A和电影B,那么可以向用户A推荐与电影A和电影B相似的电影C。
商业实战中,基于物品的协同过滤算法更受欢迎,原因如下: -
物品数量相对有限:用户的数量往往非常庞大,而物品数量相对有限,因此计算不同物品之间的相似度比计算不同用户的相似度容易很多。
-
物品属性稳定:用户的喜好较为多变,而物品属性较明确不随时间变化,因此可以预先离线计算好物品间的相似度,提升推荐效率。
相似度计算方法: -
欧式距离:计算两个向量之间的直线距离,距离越小表示相似度越高。
-
余弦相似度:使用两个向量夹角的余弦值来表示相似度,值越接近1表示越相似。
-
皮尔逊相关系数:描述两个数值型变量间线性相关强弱程度的统计量,值越接近1或-1表示相关性越强。