基于用户的协同过滤
方法步骤:
1.收集用户信息
2.找邻居求相似度
3.预测分值
1.求相似度的方法
*皮尔逊相关系数的计算公式如下所示:
i 表示项,例如商品;Iu 表示用户 u 评价的项集;Iv 表示用户 v 评价的项 集;ru,i 表示用户 u 对项 i 的评分;rv,i 表示用户 v 对项 i 的评分;表示用户 u 的平均评分;表示用户 v 的平均评分。
*余弦相似度的计算公式如下所示:
2.计算用户 u 对未评分商品的预测分值
另一个重要的环节就是计算用户 u 对未评分商品的预测分值。首先根据上一步中 的相似度计算,寻找用户 u 的邻居集 N∈U,其中 N 表示邻居集,U 表示用户集。 然后,结合用户评分数据集,预测用户 u 对项 i 的评分,计算公式如下所示:
其中,s(u,u’)表示用户 u 和用户 u’的相似度。
例题
假设有如下电子商务评分数据集,预测评分未知的用户的评分。
原矩阵
手算
这里求相似度用的是皮尔逊相关系数公式
矩阵分解算出来的结果如下:
可见,用协同过滤跟矩阵分解两种方法预测出来的预测分值差别并不是很大。很相近。