| 4 | |
| 5 | """parsing and configuration""" |
| 6 | def parse_args(): |
| 7 | desc = "Tensorflow implementation of Self-Attention GAN" |
| 8 | parser = argparse.ArgumentParser(description=desc) |
| 9 | parser.add_argument('--phase', type=str, default='train', help='train or test ?') |
| 10 | parser.add_argument('--dataset', type=str, default='celebA', help='[mnist / cifar10 / celebA]') |
| 11 | |
| 12 | |
| 13 | parser.add_argument('--epoch', type=int, default=10, help='The number of epochs to run') |
| 14 | parser.add_argument('--iteration', type=int, default=10000, help='The number of training iterations') |
| 15 | parser.add_argument('--batch_size', type=int, default=32, help='The size of batch per gpu') |
| 16 | parser.add_argument('--print_freq', type=int, default=500, help='The number of image_print_freqy') |
| 17 | parser.add_argument('--save_freq', type=int, default=500, help='The number of ckpt_save_freq') |
| 18 | |
| 19 | |
| 20 | parser.add_argument('--g_lr', type=float, default=0.0001, help='learning rate for generator') |
| 21 | parser.add_argument('--d_lr', type=float, default=0.0004, help='learning rate for discriminator') |
| 22 | parser.add_argument('--beta1', type=float, default=0.0, help='beta1 for Adam optimizer') |
| 23 | parser.add_argument('--beta2', type=float, default=0.9, help='beta2 for Adam optimizer') |
| 24 | |
| 25 | |
| 26 | parser.add_argument('--z_dim', type=int, default=128, help='Dimension of noise vector') |
| 27 | parser.add_argument('--up_sample', type=str2bool, default=True, help='using upsample-conv') |
| 28 | parser.add_argument('--sn', type=str2bool, default=True, help='using spectral norm') |
| 29 | parser.add_argument('--gan_type', type=str, default='hinge', help='[gan / lsgan / wgan-gp / wgan-lp / dragan / hinge]') |
| 30 | parser.add_argument('--ld', type=float, default=10.0, help='The gradient penalty lambda') |
| 31 | parser.add_argument('--n_critic', type=int, default=1, help='The number of critic') |
| 32 | |
| 33 | parser.add_argument('--img_size', type=int, default=128, help='The size of image') |
| 34 | parser.add_argument('--sample_num', type=int, default=64, help='The number of sample images') |
| 35 | |
| 36 | |
| 37 | parser.add_argument('--test_num', type=int, default=10, help='The number of images generated by the test') |
| 38 | |
| 39 | |
| 40 | parser.add_argument('--checkpoint_dir', type=str, default='checkpoint', |
| 41 | help='Directory name to save the checkpoints') |
| 42 | parser.add_argument('--result_dir', type=str, default='results', |
| 43 | help='Directory name to save the generated images') |
| 44 | parser.add_argument('--log_dir', type=str, default='logs', |
| 45 | help='Directory name to save training logs') |
| 46 | parser.add_argument('--sample_dir', type=str, default='samples', |
| 47 | help='Directory name to save the samples on training') |
| 48 | |
| 49 | return check_args(parser.parse_args()) |
| 50 | |
| 51 | """checking arguments""" |
| 52 | def check_args(args): |