Commit 01696d82 authored by 段英荣's avatar 段英荣

tiaoshi

parent b05a8671
...@@ -172,13 +172,21 @@ class LinUCB: ...@@ -172,13 +172,21 @@ class LinUCB:
return False return False
@classmethod @classmethod
def update_linucb_info(cls,reward, content_id, redis_name_linucb_matrix,redis_cli,user_features=None,user_features_array=None): def update_linucb_info(cls,reward, content_id, redis_name_linucb_matrix,redis_cli,user_features=None,
user_features_array=None,content_level_str=-1):
try: try:
if reward == -1: if reward == -1:
logging.warning("reward val error!") logging.warning("reward val error!")
elif reward == 1 or reward == 0: elif reward == 1 or reward == 0:
if reward == 1: if reward == 1:
r = cls.r1 if content_level_str == "6":
r = cls.r1 * 10
elif content_level_str == "5":
r = cls.r1 * 8
elif content_level_str == "4":
r = cls.r1 * 6
elif content_level_str == "3.5":
r = cls.r1 * 4
else: else:
r = cls.r0 r = cls.r0
......
...@@ -140,7 +140,7 @@ class Generate_Feature_Info(object): ...@@ -140,7 +140,7 @@ class Generate_Feature_Info(object):
try: try:
tag_label = label_encoder.transform(offi_tags_v3)[0] tag_label = label_encoder.transform(offi_tags_v3)[0]
# diary_feature_list = onehot_encoder.transform([[tag_label]]).toarray().tolist() # diary_feature_list = onehot_encoder.transform([[tag_label]]).toarray().tolist()
diary_feature_list = [tag_label] diary_feature_list = [tag_label,content_level]
redis_client.hset(redis_name_content_linucb_feature, diary_id, redis_client.hset(redis_name_content_linucb_feature, diary_id,
json.dumps(diary_feature_list)) json.dumps(diary_feature_list))
except: except:
...@@ -225,33 +225,35 @@ if __name__ == "__main__": ...@@ -225,33 +225,35 @@ if __name__ == "__main__":
linucb_matrix_redis_name = "strategy:linucb:matrix:content_type:diary" linucb_matrix_redis_name = "strategy:linucb:matrix:content_type:diary"
# diary_click_file = "/data/log/duan_test/feed_query_data/feed_click_info.txt" diary_click_file = "/data/log/duan_test/feed_query_data/feed_click_info.txt"
# diary_fd = open(diary_click_file,"r") diary_fd = open(diary_click_file,"r")
#
# for line in diary_fd.readlines(): for line in diary_fd.readlines():
# line = line.strip() line = line.strip()
# line = line.strip("\n") line = line.strip("\n")
# line = line.strip("\r") line = line.strip("\r")
# line = line.strip(" ") line = line.strip(" ")
#
# item_list = line.split(",") item_list = line.split(",")
# device_id = item_list[3] device_id = item_list[3]
# diary_id = item_list[4] diary_id = item_list[4]
# # Generate_Feature_Info.generate_user_feature_to_redis(device_id, label_encoder,onehot_encoder) # Generate_Feature_Info.generate_user_feature_to_redis(device_id, label_encoder,onehot_encoder)
#
# user_feature_list = Generate_Feature_Info.get_user_feature_by_device_id(device_id) user_feature_list = Generate_Feature_Info.get_user_feature_by_device_id(device_id)
# content_feature_list = Generate_Feature_Info.get_content_feature(diary_id) content_feature_list = Generate_Feature_Info.get_content_feature(diary_id)
#
# offi_context_feature_list = [] offi_context_feature_list = []
# if len(user_feature_list)>0 and len(content_feature_list)>0: if len(user_feature_list)>0 and len(content_feature_list)>0:
# offi_context_feature_list.append(user_feature_list[0]) offi_context_feature_list.append(user_feature_list[0])
# offi_context_feature_list.append(content_feature_list[0]) offi_context_feature_list.append(content_feature_list[0])
# diary_content_level = str(content_feature_list[1])
# print(offi_context_feature_list)
# print("*"*50) print(offi_context_feature_list)
# LinUCB.update_linucb_info(user_features=offi_context_feature_list,reward=1,content_id=diary_id, print("*"*50)
# redis_name_linucb_matrix=linucb_matrix_redis_name,redis_cli=redis_client) LinUCB.update_linucb_info(user_features=offi_context_feature_list,reward=1,content_id=diary_id,
# diary_fd.close() redis_name_linucb_matrix=linucb_matrix_redis_name,redis_cli=redis_client,
content_level=diary_content_level)
diary_fd.close()
duan_device_id="868771031984211" duan_device_id="868771031984211"
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment