协同过滤算法代码实现
时间: 2024-03-26 10:27:35 浏览: 73
协同过滤代码实现
协同过滤算法是一种基于用户行为数据的推荐算法,主要分为基于用户的协同过滤和基于物品的协同过滤。下面是一个简单的基于用户的协同过滤算法代码实现示例:
```python
# 用户评分数据
user_ratings = {
'User1': {'Item1': 3, 'Item2': 1, 'Item3': 5},
'User2': {'Item1': 4, 'Item2': 2, 'Item3': 5},
'User3': {'Item1': 3, 'Item2': 4, 'Item3': 2},
'User4': {'Item1': 5, 'Item2': 3, 'Item3': 1}
}
# 计算用户之间的相似度
def calculate_similarity(user_ratings):
similarity = {}
for user1 in user_ratings:
similarity[user1] = {}
for user2 in user_ratings:
if user1 != user2:
# 计算用户之间的皮尔逊相关系数
common_items = set(user_ratings[user1].keys()) & set(user_ratings[user2].keys())
n = len(common_items)
if n > 0:
sum1 = sum([user_ratings[user1][item] for item in common_items])
sum2 = sum([user_ratings[user2
阅读全文