用户向量创建:将电影评分转化为向量表示
创建用户向量是指将用户的电影评分转化为向量表示。每个用户向量的维度与电影向量的维度相同,每个维度对应一个电影。用户向量中的每个元素表示用户对该电影的评分,如果用户没有评分某个电影,则对应的元素为0。
具体的步骤如下:
- 初始化一个全零的用户向量,维度为电影向量的维度。
- 遍历用户的评分记录,对于每个评分记录:
- 获取电影的索引,即在电影向量中的位置。
- 获取用户对该电影的评分。
- 将用户向量中对应位置的元素设置为评分值。
- 返回用户向量。
例如,假设有3部电影,电影向量为['电影A', '电影B', '电影C'],用户1的评分记录为:
- 电影A:评分为4
- 电影C:评分为2
则用户1的向量表示为[4, 0, 2]。
def create_user_vector(user, movie_vectors):
user_vector = np.zeros((len(movie_vectors),))
for j in range(len(user)):
for i, movie in enumerate(user[j]['watched_movies']):
if movie in movie_vectors:
index = movie_vectors.index(movie)
rating = user['ratings'][i]
user_vector[index] = rating
return user_vector
原文地址: https://www.cveoy.top/t/topic/qjzN 著作权归作者所有。请勿转载和采集!