Example #1
0
    model.compile(optimizer=optimizer, loss='mean_squared_error')
    model.summary()

    train_dataset, valid_dataset = get_datasets(params)
    model.fit(train_dataset,
              steps_per_epoch=params.train_data_size//params.batchsize,
              epochs=params.epochs,
              validation_data=valid_dataset,
              validation_steps=params.valid_data_size//params.batchsize,
              callbacks=callbacks)

if __name__ == '__main__':

    if len(sys.argv) != 3:
        logging.error("Usage", sys.argv[0], "configuration_YAML_file", "configuration")
        exit()

    # load hyperparameters
    params = YParams(os.path.abspath(sys.argv[1]), sys.argv[2])

    os.mkdir(params.experiment_dir)
    log_filename=params.experiment_dir+'/output.log'
    logging_utils.log_to_file(logger_name=None, log_filename=log_filename)
    logging_utils.log_versions()
    params.log()

    keras_logger = keras.callbacks.CSVLogger(log_filename, separator=',', append=True)
    tensorboard = keras.callbacks.TensorBoard(log_dir=params.experiment_dir)

    train(params, [keras_logger, tensorboard])
Example #2
0
#expDir = parameters.load_params('./config.yaml', configtag)['expDir']
baseDir = './expts/' + configtag + '/'
expDir = baseDir + 'run' + str(run_num) + '/'
if not os.path.isdir(baseDir):
    os.mkdir(baseDir)
if not os.path.isdir(expDir):
    os.mkdir(expDir)
    os.mkdir(expDir + 'models')
else:
    print("Experiment directory %s already exists, exiting" % expDir)
    sys.exit()

#Set up logger
logging_utils.config_logger(log_level=logging.INFO)
logging_utils.log_to_file(logger_name=None, log_filename=expDir + 'train.log')

# Build GAN
GAN = GANbuild.DCGAN(configtag, expDir)

Nepochs = GAN.Nepochs
Nbatches = GAN.n_imgs // GAN.batchsize

for epoch in np.arange(GAN.start, Nepochs + GAN.start):
    logging.info(
        "| ******************************* Epoch %d of %d ******************************* |"
        % (epoch + 1, Nepochs + GAN.start))
    shuff_idxs = np.random.permutation(GAN.n_imgs)
    GAN.train_epoch(shuff_idxs, Nbatches, epoch)

    if (epoch + 1) % 5 == 0: