spark mllib 协同过滤算法之如何实现基于余弦相似度的用户相似度计算
spark mllib 协同过滤算法之如何实现基于余弦相似度的用户相似度计算
spark mllib 的协同过滤算法是基于余弦相似度的用户相似度计算。spark mllib 的协同过滤算法首先会计算出每个用户对每个物品的喜好程度,然后基于用户的喜好程度来计算用户之间的相似度。
首先计算每个用户对每个物品的喜好程度,这里使用的是余弦相似度计算公式:
![](https://github.com/MLLibAlgorithm/Algorithm/blob/master/image/%E5%9B%BE%E7%89%871.png)
其中,x表示用户i对物品j的喜好程度,y表示用户j对物品j的喜好程度。
计算完每个用户对每个物品的喜好程度之后,就可以根据用户的喜好程度来计算用户之间的相似度了。
这里使用的是余弦相似度计算公式:
![](https://github.com/MLLibAlgorithm/Algorithm/blob/master/image/%E5%9B%BE%E7%89%872.png)
其中,x表示用户i对物品j的喜好程度,y表示用户j对物品j的喜好程度。
计算完用户之间的相似度之后,就可以根据用户相似度来推荐物品给用户了。
相关文章