协同过滤

协同过滤算法是一种常见的推荐系统算法,核心思想是利用用户历史行为数据,通过计算相似度,来找到与目标用户或目标商品喜好相似的商品。

基于用户的协同过滤算法:它通过分析用户间的相似性来进行个性化推荐。具体来说,如果用户A和用户B在评分或点赞行为上表现出高度的一致性,那么系统会推断出用户B可能对用户A喜欢的物品感兴趣。这种方法的核心在于,通过挖掘用户间的相似偏好,来预测并推荐那些用户可能喜欢但尚未接触的物品。

为了实现这一目标,首先需要构建一个用户-物品评分矩阵。这个矩阵以用户为行、物品为列,矩阵中的每个元素代表相应用户对相应物品的评分。接下来,算法会计算矩阵中用户向量之间的相似度,这可以通过多种方法完成,如余弦相似度、杰卡德系数、欧式距离、汉明距离或皮尔逊相关系数等。

通过比较这些相似度指标,算法可以识别出与用户A最相似的N个用户,标志为用户群体T(A,N),并且将T中A未交互过的物品提取出来,对于每个物品item计算它的加权平均值,选择制值最高的K个物品作为A的推荐项。

例如,如果用户A和用户B都对某一系列电影给出了高评分,但用户A还对另一部未被用户B观看过的电影给出了高分,那么基于他们的相似偏好,这部未被用户B观看过的电影就有可能被推荐给用户B。

基于物品的协同过滤算法:如果用户U喜欢物品A,而物品A和物品B有很高的相似性,那么用户U也有可能很喜欢物品B。

为了实现这一目标,首先需要建立用户–物品表,记录每个用户最近点击交互过的物品列表,以及每个物品的喜好程度,根据时间倒排列,取前n个物品

物品–物品表:记录每个物品与其相似的物品列表及相似度,根据相似度倒排列,取前k个相似物品。


:D 一言句子获取中...