Example #1
0
 def __init__(self):
     known_information.__init__(self)
     self.item_hot_pro = np.array([0.0] * 10)  # 商品购买热度
     self.word_hot_pro = np.array([0.0] * 10)  # 每个词的出现概率
     self.class_id_bar = np.array([0.0] * 10)
     self.item_relate = np.array([0.0] * 10)  # 关联商品购买数
     self.KNN_k = 50  # KNN的 k
     self.weight_array = np.array([0]*10)
     self.my_range = 10
     self.class_information = class_gailv()
     self.class_opinion = np.array([0.0] * 10)  # 类别的打分意见
Example #2
0
 def __init__(self):
     self.data_dir = 'E:\\gitshell\\tianchi3'
     # self.data_dir_new =
     self.user_dict = {}
     self.user_num = -1
     self.record_num = -1  # 记录最大编号 +1 为购买记录数
     self.user_array = np.zeros((2000000, 2), int)  # 记录 购买行为的 起末位置
     self.user_item_array = np.zeros((20000000, 2), int)
     # 商品热度统计数据
     self.item_num = -1  # 记录最大编号 +1为商品数
     self.item_dict = {}
     self.item_array = np.zeros((2000000, 2))  # 商品id, 商品数/概率
     self.item_user_list = []
     # 商品分类信息
     self.item_class = np.zeros([0] * 20)  # item_id 到 class_id 的映射
     self.class_dict = {}  # class_id 到 class_ind 的 映射
     self.class_num = -1  # 记录最大编号 +1为分类数
     # 热度排行初过滤参数  只对最畅销的 n 个商品进行精细计算
     self.top_k = 100000
     self.simple = True
     # 分类别关联性 商品热度统计
     self.num_k = 5  # 邻近的num_k个自身算第一个 被认为有关联
     self.like_matrix = np.zeros((10, 10), int)  # 存储不同分类下的
     # self.matrix = np.zeros((self.top_k+1,self.class_num+1), int)
     # 需要测试的数据组
     self.test_list = []
     # 关联商品的热度分布
     self.temp_item_array_hot = np.array([0] * 10)
     # 结果输出相关参数
     self.r_top_num = 200  # 取前200个商品
     # 购买次序相关的权重
     self.range = 10  # 购买次序的有效关联范围
     self.day_diff = 3  # 时间差 不超过3天
     self.order_weight = []
     # 达人的人工经验
     # self.peo_exp = exp_of_people()
     # self.peo_exp.read_jingyan()
     # 搭配概率
     self.top_k_da = 60000
     self.pro_da_pei = np.array([0.0] * self.top_k_da)
     # 原始的搭配概率
     self.p_match = 0.0006
     self.class_class = 0
     #  引入第一种提问方式的 类别意见
     self.my_cgailv = class_gailv()
     self.my_cgailv.read_txt()
     self.my_cgailv.my_tongji2()
     self.pre_class_gailv = []  # 记忆缓存
     self.pre_class_id = -1  # 记忆缓存