def make_rating_matrix(x, r, item_num, rating_num):
y = np.zeros((x.shape[0], item_num, rating_num), dtype=np.float32)
for i in six.moves.range(x.shape[0]):
index = x[i] >= 0
y[i, x[i, index], r[i, index]] = 1
r_to_v = np.tri(rating_num, dtype=np.float32)
y = y.dot(r_to_v)
return y.reshape((x.shape[0], -1))
评论列表
文章目录