# 基于物品的协同过滤

通过用户的历史行为分析物品之间的相似性,为用户推荐与他们过去喜欢的物品相似的其他物品
适用于:物品数量稳定、用户行为丰富的场景(电商推荐)

  • 需要有用户的历史行为数据
  • 根据历史行为数据,计算类似的物品

# 核心数学公式

r^u,i=rˉi+jN(i)sim(i,j)(ru,jrˉj)jN(i)sim(i,j)\hat{r}_{u, i}=\bar{r}_i+\frac{\sum_{j \in N(i)} sim(i, j)·(r_{u,j}- \bar{r}_j)}{\sum_{j \in N(i)}|sim(i, j)|}

  • r^u,i\hat{r}_{u,i}:用户 uuii预测评分
  • rˉi\bar{r}_i:物品 ii 的平均得分
  • N(i)N(i):与 ii 最相似的 kk 个物品的集合
  • sim(i,j)sim(i,j):物品 i,ji,j 的相似度(皮尔逊相关系数)

# 基于用户的协同过滤

找到与目标用户兴趣相似的其他用户,将这些相似用户喜欢的其他物品推荐给目标用户
适用于:用户数量相对稳定、社交属性强的场景(社交平台推荐)