使用 lightfm 预测新用户
predict new user using lightfm
我想向使用 lightfm 的新用户推荐。
嗨,我有模型,交互,item_features。
新用户不在交互中,新用户的唯一信息是他们的评分。(列表 book_id 和评分对)
我尝试使用 predict() 或 predict_rank(),但我没弄清楚如何使用。
你能给我一些建议吗?
下面是我的 screenshot 引发了 ValueError..
我遇到了同样的问题,
我所做的是
使用数据集 class
创建了一个 user_features 矩阵(根据他们的偏好)
dataset = Dataset()
dataset.fit(user_ids,item_ids)
user_features = build_user_features([[user_id_1,[user_features_1]],..], normalize=True)
在培训期间与互动 CSR 一起提供
model = LightFM(loss='warp')
model = model.fit(iteraction_csr,
user_features=user_features)
为新用户使用他们的偏好创建 user_feature 矩阵(在
我的案例类型 )
dataset.fit_partial(users=[user_id],user_features=total_genres)
new_user_feature = [user_id,new_user_feature]
new_user_feature = dataset.build_user_features([new_user_feature])
现在使用 new_user 功能预测项目排名
scores = model.predict(<new-user-index>, np.arange(n_items),user_features=new_user_feature)
这为新用户提供了相当不错的结果,但不如纯 CF 模型好。
This 我是这样实现的。
我想向使用 lightfm 的新用户推荐。
嗨,我有模型,交互,item_features。 新用户不在交互中,新用户的唯一信息是他们的评分。(列表 book_id 和评分对)
我尝试使用 predict() 或 predict_rank(),但我没弄清楚如何使用。 你能给我一些建议吗?
下面是我的 screenshot 引发了 ValueError..
我遇到了同样的问题, 我所做的是
使用数据集 class
创建了一个 user_features 矩阵(根据他们的偏好)dataset = Dataset() dataset.fit(user_ids,item_ids) user_features = build_user_features([[user_id_1,[user_features_1]],..], normalize=True)
在培训期间与互动 CSR 一起提供
model = LightFM(loss='warp') model = model.fit(iteraction_csr, user_features=user_features)
为新用户使用他们的偏好创建 user_feature 矩阵(在 我的案例类型 )
dataset.fit_partial(users=[user_id],user_features=total_genres) new_user_feature = [user_id,new_user_feature] new_user_feature = dataset.build_user_features([new_user_feature])
现在使用 new_user 功能预测项目排名
scores = model.predict(<new-user-index>, np.arange(n_items),user_features=new_user_feature)
这为新用户提供了相当不错的结果,但不如纯 CF 模型好。
This 我是这样实现的。