【发布时间】:2020-02-03 15:03:12
【问题描述】:
在寻找项目邻居的过程中,我首先需要计算相似度。如何在稀疏矩阵中计算它?对吗?
【问题讨论】:
标签: recommendation-engine cosine-similarity
在寻找项目邻居的过程中,我首先需要计算相似度。如何在稀疏矩阵中计算它?对吗?
【问题讨论】:
标签: recommendation-engine cosine-similarity
在item-based协同过滤中,我们计算item之间的相似度。
这里我们可以使用余弦相似度,因为无论向量有多稀疏,余弦相似度都会根据向量之间的余弦角或向量空间中两个向量的接近度来计算邻居。不是基于 thè 向量的值。 例如:-
Per1 Per2 Per3
Item1 5 3 1
Ttem2 2 3 3
如果我们计算两个向量的余弦相似度:
Cos_sim_1 = (5*2 + 3*3 + 1*3) / sqrt((25+9+1)*(4+9+9)
Cos_sim_1 = 0.792
如果矩阵是稀疏的:
Per1 Per2 Per3 Per4 Per5 Per6 Per7 per8
Item1 5 3 1 0 0 0 0 0
Ttem2 2 3 3 0 0 0 0 0
以及稀疏向量的余弦相似度:
Cos_sim_2 = (5*2 + 3*3 + 1*3 + 0*0 + 0*0 +0*0 +0*0 +0*0) / sqrt((25+9+1+0+0+0+0+0)*(4+9+9+0+0+0+0+0))
Cos_sim_2 = 0.792
【讨论】: