Mc铭橙
2018-09-29 11:23
'''python for user, item_list in user_click.items(): temp_dict = {} for itemid in item_list: temp_dict.setdefault(itemid, 1) recom_result.setdefault(user, {}) ''' 大家好,不是很明白,temp_dict是怎么在推荐时过滤掉该用户点击过的物品序列?
您好,是在recom_result 装载之前需要判断一下itemid_j 是否是tmp_dict的key。谢谢您的问题。原视频代码中好像这个地方有点问题。
可以将
for itemid_j in user_click[userid_j][:item_num]: recom_result[user].setdefault(itemid_j, sim_score)
修改成
num_choose = 0 for itemid_j in user_click[userid_j]: if itemid_j not in tmp_dict: recom_result[user].setdefault(itemid_j, sim_score) num_choose += 1 if num_choose >= item_num: break
这样tmp_dict就能发挥作用了
个性化推荐算法实战入门必修课
23507 学习 · 67 问题
相似问题