Python机器学习案例:基于用户的电影推荐系统
01 案例背景
本案例实现电影推荐系统。该系统的工作过程大致可以简化为以下三个步骤。
(1)寻找与特定用户最相近的N个其他用户;
(2)找出这N个相似用户的观影列表;
(3)从相似用户的观影列表中找出特定用户未观看过的电影,将这些电影按评分由高到低输出。
02 实现代码
Python实现代码如下所示:
from math import sqrt,pow
import operator
class UserCf():
#获得初始化数据
def init(self,data):
self.data=data;
#通过用户名获得电影列表,仅调试使用
def getItems(self,username1,username2):
return self.data[username1],self.data[username2]
#计算两个用户的皮尔逊相关系数
def pearson(self,user1,user2):#数据格式为:电影,评分 {‘Snakes on a Plane’: 4.5, ‘You, Me and Dupree’: 1.0, ‘Superman Returns’: 4.0}
sumXY=0.0;
n=0;
sumX=0.0;
sumY&