recommenders-team/recommenders
View on GitHub[ASK] How to get top recommendations for a given user id - LSTURModel
Open
#1,999 opened on Sep 26, 2023
help wanted
Repository metrics
- Stars
- (17,706 stars)
- PR merge metrics
- (Avg merge 6d 16h) (10 merged PRs in 30d)
Description
Description
Hi , I am trying to get top 10 news recommendations for given user id . Below is the code which i am using for it :
iterator = MINDIterator
model = LSTURModel(hparams, iterator, seed=seed)
print(model.run_eval(valid_news_file, valid_behaviors_file))
model.fit(train_news_file, train_behaviors_file, valid_news_file, valid_behaviors_file)
news_vecs = model.run_news(valid_news_file)
user_vecs = model.run_user(valid_news_file, valid_behaviors_file)
uid = list(user_vecs.keys())[10] # This a random test user id for which i need news recommendations
user_vec = user_vecs[uid]
scores = {news_id: np.dot(user_vec, news_vec) for news_id, news_vec in news_vecs.items()}
top_10_news = sorted(scores, key=scores.get, reverse=True)[:10]
print("Top 10 news recommendations for user:", uid)
print(top_10_news)
So the output i get is an array of id's like this : [12580, 10755, 13550, 2500, 5302, 4810, 18519, 18187, 3741, 13954]
I am looking to convert these id's to Actual New item id's like : N15366 , N18191 etc -- using which i could get the News titles .
Any help would be greatly appreciated .