batch_loader = BatchLoader('') parameters = Parameters(batch_loader.max_word_len, batch_loader.max_seq_len, batch_loader.words_vocab_size, batch_loader.chars_vocab_size) rvae = RVAE(parameters) if args.use_trained: rvae.load_state_dict(t.load('trained_RVAE')) if args.use_cuda: rvae = rvae.cuda() optimizer = Adam(rvae.learnable_parameters(), args.learning_rate) train_step = rvae.trainer(optimizer, batch_loader) validate = rvae.validater(batch_loader) ce_result = [] kld_result = [] for iteration in range(args.num_iterations): cross_entropy, kld, coef = train_step(iteration, args.batch_size, args.use_cuda, args.dropout) if iteration % 5 == 0: print('\n') print('------------TRAIN-------------') print('----------ITERATION-----------') print(iteration) print('--------CROSS-ENTROPY---------') print(cross_entropy.data.cpu().numpy())
if args.use_trained: rvae.load_state_dict( t.load('saved_models/trained_RVAE_' + args.model_name)) ce_result = list( np.load('saved_models/ce_result_{}.npy'.format(args.model_name))) kld_result = list( np.load('saved_models/kld_result_npy_{}.npy'.format( args.model_name))) if args.use_cuda: rvae = rvae.cuda() optimizer = Adam(rvae.learnable_parameters(), args.learning_rate) train_step = rvae.trainer(optimizer, batch_loader) validate, validation_sample = rvae.validater(batch_loader) for iteration in range(args.num_iterations): cross_entropy, kld, coef = train_step(iteration, args.batch_size, args.use_cuda, args.dropout) if iteration % 100 == 0: print('\n') print('------------TRAIN-------------') print('----------ITERATION-----------') print(iteration) print('--------CROSS-ENTROPY---------') print(cross_entropy.data.cpu().numpy()[0]) print('-------------KLD--------------') print(kld.data.cpu().numpy()[0])