exp.pp_data.format_input_data = dn.InputData.POSTS_ONLY_TEXT exp.pp_data.remove_stopwords = False exp.pp_data.delete_low_tfid = False exp.pp_data.min_df = 0 exp.pp_data.min_tf = 0 exp.pp_data.random_posts = False exp.pp_data.random_users = False exp.pp_data.tokenizing_type = 'WE' exp.pp_data.use_embedding = dn.UseEmbedding.RAND exp.pp_data.embedding_type = dn.EmbeddingType.NONE lstm = ModelClass(1) lstm.loss_function = 'binary_crossentropy' lstm.optmizer_function = 'adam' lstm.epochs = 10 lstm.batch_size = 32 lstm.patience_train = 4 lstm.use_embedding_pre_train = exp.pp_data.use_embedding lstm.embed_trainable = True lstm.model = Sequential() lstm.model.add(Embedding(exp.pp_data.vocabulary_size, exp.pp_data.embedding_size, trainable=lstm.embed_trainable)) lstm.model.add(LSTM(64, activation='tanh', dropout=0.2, recurrent_dropout=0.2, return_sequences=True)) lstm.model.add(LSTM(32, activation='tanh', dropout=0.2, recurrent_dropout=0.2)) lstm.model.add(Dense(1, activation='sigmoid')) time_ini_exp = datetime.datetime.now() # exp.k_fold_cross_validation(lstm) exp.test_hypeparams(lstm) exp.set_period_time_end(time_ini_exp, 'Total experiment')
lstm.loss_function = 'binary_crossentropy' lstm.optmizer_function = 'adam' lstm.use_embedding_pre_train = exp.pp_data.use_embedding lstm.embed_trainable = False # Train neuronios_by_layer = [16, 32] epochs = [16, 32, 64, 96, 128] batch_sizes = [20, 40, 80] np.random.seed(dn.SEED) time_ini_rep = datetime.datetime.now() x_train, y_train, x_valid, y_valid, num_words, embedding_matrix = exp.pp_data.load_data( ) exp.set_period_time_end(time_ini_rep, 'Load data') for neuronios in neuronios_by_layer: for batch_size in batch_sizes: for epoch in epochs: exp.experiment_name = 'lstm_exp14_L3' + '_N' + str( neuronios) + '_B' + str(batch_size) + '_E' + str(epoch) lstm.epochs = epoch lstm.batch_size = batch_size lstm.patience_train = epoch / 2 data_dim = exp.pp_data.max_terms_by_post timesteps = exp.pp_data.max_posts lstm.model = Sequential() lstm.model.add(