def __init__(self, user_num=4691, movie_num=2514, year_num=76, genre_num=9, embedding_size=16, att_embedding_size=16, head_num=2, att_layer_num=3, use_res=True): self.user_num = user_num self.movie_num = movie_num self.year_num = year_num self.genre_num = genre_num self.embedding_size = embedding_size self.att_layer_num = att_layer_num self.att_embedding_size = att_embedding_size self.head_num = head_num self.use_res = use_res self.fm = FM(user_num=self.user_num, movie_num=self.movie_num, year_num=self.year_num, genre_num=self.genre_num, embedding_size=self.embedding_size)
def __init__(self, user_num=4691, movie_num=2514, year_num=76, genre_num=9, embedding_size=16, dnn_hidden_units=( 128, 128, ), cross_layer_num=2): self.user_num = user_num self.movie_num = movie_num self.year_num = year_num self.genre_num = genre_num self.embedding_size = embedding_size self.dnn_hidden_units = dnn_hidden_units self.cross_layer_num = cross_layer_num self.fm = FM(user_num=self.user_num, movie_num=self.movie_num, year_num=self.year_num, genre_num=self.genre_num, embedding_size=self.embedding_size)
def train(self): self.train_dataset, \ self.test_dataset = self.data_process.generate_data(batch_size=self.batch_size, epoch=self.epoch) fm = FM(user_num=self.user_num, movie_num=self.movie_num, year_num=self.year_num, genre_num=self.genre_num, embedding_size=self.embedding_size, is_sigmoid=True) fm_model = fm.get_fm_model() fm_model.summary() fm_model.compile(optimizer="adam", loss=keras.losses.binary_crossentropy, metrics=["accuracy"]) fm_model.fit(self.train_dataset, epochs=self.epoch, steps_per_epoch=1270010 // self.batch_size + 1, callbacks=[ get_callback(self.test_dataset, self.model_path, self.version) ])
def __init__(self, user_num=4691, movie_num=2514, year_num=76, genre_num=9, embedding_size=16, attention_fator=16): """ :param user_num: :param movie_num: :param year_num: :param genre_num: :param embedding_size: :param attention_fator: attention dense num """ self.user_num = user_num self.movie_num = movie_num self.year_num = year_num self.genre_num = genre_num self.embedding_size = embedding_size self.attention_fator = attention_fator self.fm = FM(user_num=self.user_num, movie_num=self.movie_num, year_num=self.year_num, genre_num=self.genre_num, embedding_size=self.embedding_size)
def __init__(self, user_num=4691, movie_num=2514, year_num=76, genre_num=9, embedding_size=16): self.user_num = user_num self.movie_num = movie_num self.year_num = year_num self.genre_num = genre_num self.embedding_size = embedding_size self.fm = FM(user_num=self.user_num, movie_num=self.movie_num, year_num=self.year_num, genre_num=self.genre_num, embedding_size=self.embedding_size)