何时使用用户-用户协作过滤以及何时使用项-项协作过滤?

时间:2019-09-20 16:59:54

标签: recommendation-engine collaborative-filtering recommender-systems

我对于何时使用用户-用户协作过滤以及何时使用Item-Item协作过滤感到困惑?

请帮助!

2 个答案:

答案 0 :(得分:1)

项目-项目:-查找用户X已评分的相似项目,并推荐最相似的项目。这里的相似性是指人们如何根据评分来对待两个项目。如果两个项目在相同的用户中获得相同的评分,则它们是相似的。例如:-

        Per1    Per2    Per3
Item1    5        3        1
Ttem2    2        3        3

项目vector_1 = 5P1 + 3P2 + 1P3

项目vector_2 = 2P1 + 3P2 + 3P3

如果我们计算两个向量的余弦相似度:

Cos_sim = (5*2 + 3*3 + 1*3) / sqrt((25+9+1)*(4+9+9)
Cos_sim = 0.792

用户-用户:-通过评估两个用户的评分模式来找到用户之间的相似性。 例如:-

        Item1    Item2    Item3    Item4
Per_x    5        2        5        2
Per_y    5        2        5        2

这里两个用户非常相似。这可能是您和您的朋友。

希望有帮助!

答案 1 :(得分:1)

如果通常情况下,用户数多于数据集中的项目,则使用项目-项目协作过滤将是有效的。例如:与产品相比,亚马逊将拥有庞大的客户群。

此外,用户偏好和喜好随着时间的推移而发生变化,因此很难解决用户-用户协作过滤中的此问题,但是对于项目,通常可以看到项目的评级在一段时间内变化不大。