def __init__(self, sess, config, dataset, evaluator): super(CFGAN, self).__init__(sess, config, dataset, evaluator) train_matrix = dataset.train_matrix self.users_num, self.items_num = train_matrix.shape self.g_lr = config["g_lr"] self.d_lr = config["d_lr"] self.d_hidden_units = config["d_hidden_units"] self.g_hidden_units = config["g_hidden_units"] self.epochs = config["epochs"] self.batch_size = config["batch_size"] self.s_zr = config["s_zr"] self.s_pm = config["s_pm"] self.alpha = config["alpha"] self.user_pos_train = csr_to_user_dict(train_matrix) self.all_items = np.arange(self.items_num) self.evaluator = evaluator self.train_matrix_dense = train_matrix.todense() self.g_layers = None self.d_layers = None self._build_model() self.sess = sess self.sess.run(tf.global_variables_initializer())
def __init__(self): super(APL, self).__init__() train_matrix = self.dataset.train_matrix self.users_num, self.items_num = train_matrix.shape self.factors_num = self.config["factors_num"] self.lr = self.config["lr"] self.g_reg = self.config["g_reg"] self.d_reg = self.config["d_reg"] self.epochs = self.config["epochs"] self.batch_size = self.config["batch_size"] self.pretrain_file = self.config["pretrain_file"] self.user_pos_train = csr_to_user_dict(train_matrix) self.all_items = np.arange(self.items_num) self._build_model() self.sess.run(tf.global_variables_initializer())
def __init__(self): super(CML, self).__init__() train_matrix = self.dataset.train_matrix self.users_num, self.items_num = train_matrix.shape self.factors_num = self.config["factors_num"] self.lr = self.config["lr"] self.reg = self.config["reg"] self.epochs = self.config["epochs"] self.batch_size = self.config["batch_size"] self.dns = self.config["dns"] self.margin = self.config["margin"] self.clip_norm = self.config["clip_norm"] self.user_pos_train = csr_to_user_dict(train_matrix) self.all_items = np.arange(self.items_num) self.train_matrix = train_matrix self._build_model() self.sess.run(tf.global_variables_initializer())
def __init__(self, sess, config, dataset, evaluator): super(APR, self).__init__(sess, config, dataset, evaluator) train_matrix = dataset.train_matrix self.users_num, self.items_num = train_matrix.shape self.factors_num = config["factors_num"] self.lr = config["lr"] self.reg = config["reg"] self.reg_adv = config["reg_adv"] self.epochs = config["epochs"] self.batch_size = config["batch_size"] self.eps = config["eps"] self.pretrain_file = config["pretrain_file"] self.user_pos_train = csr_to_user_dict(train_matrix) self.all_items = np.arange(self.items_num) self.evaluator = evaluator self._build_model() self.sess = sess self.sess.run(tf.global_variables_initializer())
def __init__(self): super(APR, self).__init__() train_matrix = self.dataset.train_matrix self.num_users, self.num_items = train_matrix.shape self.embedding_size = self.config["embed_size"] self.learning_rate = self.config["lr"] self.batch_size = self.config["batch_size"] self.reg = self.config["reg"] self.dns = self.config["dns"] self.adv = self.config["adv"] self.eps = self.config["eps"] self.adv_epoch = self.config["adv_epoch"] self.reg_adv = self.config["reg_adv"] self.epochs = self.config["epochs"] self.train_matrix = train_matrix self.user_pos_train = csr_to_user_dict(train_matrix) self.all_items = np.arange(self.num_items) self.build_model() self.sess.run(tf.global_variables_initializer())
def __init__(self): super(CFGAN, self).__init__() self.epochs = self.config["epochs"] self.mode = self.config["mode"] self.reg_G = self.config["reg_g"] self.reg_D = self.config["reg_d"] self.lr_G = self.config["lr_g"] self.lr_D = self.config["lr_d"] self.batchSize_G = self.config["batchsize_g"] self.batchSize_D = self.config["batchsize_d"] self.opt_G = self.config["opt_g"] self.opt_D = self.config["opt_d"] self.hiddenLayer_G = self.config["hiddenlayer_g"] self.hiddenLayer_D = self.config["hiddenlayer_d"] self.step_G = self.config["step_g"] self.step_D = self.config["step_d"] self.ZR_ratio = self.config["zr_ratio"] self.ZP_ratio = self.config["zp_ratio"] self.ZR_coefficient = self.config["zr_coefficient"] self.train_matrix = self.dataset.train_matrix.copy() # convert explicit data to implicit data self.train_matrix.data[:] = 1 if self.mode == "itemBased": self.train_matrix = self.train_matrix.transpose(copy=True).tocsr() self.users_num, self.items_num = self.train_matrix.shape self.user_pos_train = csr_to_user_dict(self.train_matrix) self.all_items = np.arange(self.items_num) self._build_model() self.sess.run(tf.global_variables_initializer())