From 3950b0c16892ce01ceba93f35a9c5346eba3cb2e Mon Sep 17 00:00:00 2001 From: Teytaud Date: Thu, 26 Sep 2019 11:17:39 +0200 Subject: [PATCH 01/31] Update README.md --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index cfa2f13..a8624fe 100644 --- a/README.md +++ b/README.md @@ -212,7 +212,7 @@ You can generate more images from an existing checkpoint using: python eval.py visualization -n $modelName -m $modelType ``` -Where modelType is in [PGAN, PPGAN, DCGAN] and modelName is the name given to your model. This script will load the last checkpoint detected at testNets/$modelName. If you want to load a specific iteration, please call: +Where modelType is in [PGAN, PPGAN, DCGAN] and modelName is the name given to your model. This script will load the last checkpoint detected at output_networks/$modelName. If you want to load a specific iteration, please call: ``` python eval.py visualization -n $modelName -m $modelType -s $SCALE -i $ITER From c4c4b87d3ab5378e6b1e96dd2157d401dc11ee59 Mon Sep 17 00:00:00 2001 From: Teytaud Date: Thu, 26 Sep 2019 11:25:26 +0200 Subject: [PATCH 02/31] Update README.md --- README.md | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/README.md b/README.md index a8624fe..ac59484 100644 --- a/README.md +++ b/README.md @@ -48,6 +48,21 @@ pip install -r requirements.txt - DTD: https://www.robots.ox.ac.uk/~vgg/data/dtd/ - CIFAR10: http://www.cs.toronto.edu/~kriz/cifar.html +For a quick start with CelebAHQ, you might: +``` +git clone https://github.com/nperraud/download-celebA-HQ.git +cd download-celebA-HQ +conda create -n celebaHQ python=3 +source activate celebaHQ +conda install jpeg=8d tqdm requests pillow==3.1.1 urllib3 numpy cryptography scipy +pip install opencv-python==3.4.0.12 cryptography==2.1.4 +sudo apt-get install p7zip-full +python download_celebA.py ./ +python download_celebA_HQ.py ./ +python make_HQ_images.py ./ +export PATH_TO_CELEBA=`readlink -f ./celebA-HQ/512` +``` + ## Quick training The datasets.py script allows you to prepare your datasets and build their corresponding configuration files. From d5f58413595e25310fd45ecd3f7920428f25e80b Mon Sep 17 00:00:00 2001 From: Teytaud Date: Thu, 26 Sep 2019 11:32:39 +0200 Subject: [PATCH 03/31] Update README.md --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index ac59484..6521cb5 100644 --- a/README.md +++ b/README.md @@ -60,7 +60,7 @@ sudo apt-get install p7zip-full python download_celebA.py ./ python download_celebA_HQ.py ./ python make_HQ_images.py ./ -export PATH_TO_CELEBA=`readlink -f ./celebA-HQ/512` +export PATH_TO_CELEBAHQ=`readlink -f ./celebA-HQ/512` ``` ## Quick training From 8d2cd8fc7918258f98a5deb69fd135feb73f8897 Mon Sep 17 00:00:00 2001 From: Teytaud Date: Thu, 26 Sep 2019 11:54:03 +0200 Subject: [PATCH 04/31] Update README.md --- README.md | 18 ++++++++++-------- 1 file changed, 10 insertions(+), 8 deletions(-) diff --git a/README.md b/README.md index 6521cb5..f4a56e1 100644 --- a/README.md +++ b/README.md @@ -146,6 +146,7 @@ Where: 1 - MODEL_NAME is the name of the model you want to run. Currently, two models are available: - PGAN(progressive growing of gan) - PPGAN(decoupled version of PGAN) + TODO: isn't it PGAN, DCGAN and StyleGAN ? 2 - CONFIGURATION_FILE(mandatory): path to a training configuration file. This file is a json file containing at least a pathDB entry with the path to the training dataset. See below for more informations about this file. @@ -224,19 +225,19 @@ You need to use the eval.py script. You can generate more images from an existing checkpoint using: ``` -python eval.py visualization -n $modelName -m $modelType +python eval.py visualization -n $runName -m $modelName ``` -Where modelType is in [PGAN, PPGAN, DCGAN] and modelName is the name given to your model. This script will load the last checkpoint detected at output_networks/$modelName. If you want to load a specific iteration, please call: +Where modelName is in [PGAN, StyleGAN, DCGAN] and runName is the name given to your run (trained model). This script will load the last checkpoint detected at output_networks/$modelName. If you want to load a specific iteration, please call: ``` -python eval.py visualization -n $modelName -m $modelType -s $SCALE -i $ITER +python eval.py visualization -n $runName -m $modelName -s $SCALE -i $ITER ``` If your model is conditioned, you can ask the visualizer to print out some conditioned generations. For example: ``` -python eval.py visualization -n $modelName -m $modelType --Class T_SHIRT +python eval.py visualization -n $runName -m $modelName --Class T_SHIRT ``` Will plot a batch of T_SHIRTS in visdom. Please use the option - -showLabels to see all the available labels for your model. @@ -246,7 +247,7 @@ Will plot a batch of T_SHIRTS in visdom. Please use the option - -showLabels to To save a randomly generated fake dataset from a checkpoint please use: ``` -python eval.py visualization -n $modelName -m $modelType --save_dataset $PATH_TO_THE_OUTPUT_DATASET --size_dataset $SIZE_OF_THE_OUTPUT +python eval.py visualization -n $runName -m $modelName --save_dataset $PATH_TO_THE_OUTPUT_DATASET --size_dataset $SIZE_OF_THE_OUTPUT ``` ### SWD metric @@ -254,7 +255,7 @@ python eval.py visualization -n $modelName -m $modelType --save_dataset $PATH_TO Using the same kind of configuration file as above, just launch: ``` -python eval.py laplacian_SWD -c $CONFIGURATION_FILE -n $modelName -m $modelType +python eval.py laplacian_SWD -c $CONFIGURATION_FILE -n $runName -m $modelName ``` Where $CONFIGURATION_FILE is the training configuration file called by train.py (see above): it must contains a "pathDB" field pointing to path to the dataset's directory. For example, if you followed the instruction of the Quick Training section to launch a training session on celebaHQ your configuration file will be config_celebaHQ.json. @@ -267,6 +268,7 @@ You can add optional arguments: ### Inspirational generation +An inspirational generation consists in generation with your GAN an image which looks like a given input image. To make an inspirational generation, you first need to build a feature extractor: ``` @@ -276,14 +278,14 @@ python save_feature_extractor.py {vgg16, vgg19} $PATH_TO_THE_OUTPUT_FEATURE_EXTR Then run your model: ``` -python eval.py inspirational_generation -n $modelName -m $modelType --inputImage $pathTotheInputImage -f $PATH_TO_THE_OUTPUT_FEATURE_EXTRACTOR +python eval.py inspirational_generation -n $runName -m $modelName --inputImage $pathTotheInputImage -f $PATH_TO_THE_OUTPUT_FEATURE_EXTRACTOR ``` ### I have generated my metrics. How can i plot them on visdom ? Just run ``` -python eval.py metric_plot -n $modelName +python eval.py metric_plot -n $runName ``` ## LICENSE From c6379f944b480aa728decf87696130a8e3d145f9 Mon Sep 17 00:00:00 2001 From: Teytaud Date: Thu, 26 Sep 2019 11:55:06 +0200 Subject: [PATCH 05/31] Update README.md --- README.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/README.md b/README.md index f4a56e1..5049389 100644 --- a/README.md +++ b/README.md @@ -3,7 +3,7 @@ A GAN toolbox for researchers and developers with: - Progressive Growing of GAN(PGAN): https://arxiv.org/pdf/1710.10196.pdf - DCGAN: https://arxiv.org/pdf/1511.06434.pdf -- To come: StyleGAN https://arxiv.org/abs/1812.04948 +- StyleGAN https://arxiv.org/abs/1812.04948 illustration Picture: Generated samples from GANs trained on celebaHQ, fashionGen, DTD. @@ -145,8 +145,8 @@ Where: 1 - MODEL_NAME is the name of the model you want to run. Currently, two models are available: - PGAN(progressive growing of gan) - - PPGAN(decoupled version of PGAN) - TODO: isn't it PGAN, DCGAN and StyleGAN ? + - DCGAN + - StyleGAN 2 - CONFIGURATION_FILE(mandatory): path to a training configuration file. This file is a json file containing at least a pathDB entry with the path to the training dataset. See below for more informations about this file. From 1a07faf81b471096dac40627b743a185be04875f Mon Sep 17 00:00:00 2001 From: Teytaud Date: Thu, 26 Sep 2019 11:55:45 +0200 Subject: [PATCH 06/31] Update train.py --- train.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/train.py b/train.py index 1587608..2706b54 100644 --- a/train.py +++ b/train.py @@ -30,7 +30,7 @@ def getTrainer(name): parser = argparse.ArgumentParser(description='Testing script') parser.add_argument('model_name', type=str, help='Name of the model to launch, available models are\ - PGAN and PPGAN. To get all possible option for a model\ + PGAN and DCGAN and StyleGAN. To get all possible option for a model\ please run train.py $MODEL_NAME -overrides') parser.add_argument('--no_vis', help=' Disable all visualizations', action='store_true') From 5599bc25e3f98c3982eacd28b892c0f71955a21f Mon Sep 17 00:00:00 2001 From: Teytaud Date: Thu, 26 Sep 2019 11:59:17 +0200 Subject: [PATCH 07/31] Update inspirational_generation.py --- models/eval/inspirational_generation.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/models/eval/inspirational_generation.py b/models/eval/inspirational_generation.py index 78ab10b..8b1ce72 100644 --- a/models/eval/inspirational_generation.py +++ b/models/eval/inspirational_generation.py @@ -71,7 +71,7 @@ def updateParser(parser): parser.add_argument('--weights', type=float, dest='weights', nargs='*', help="Weight of each classifier. Default \ value is one. If specified, the number of weights must\ - match the number of feature exatrcators.") + match the number of feature extractors.") parser.add_argument('--gradient_descent', help='gradient descent', action='store_true') parser.add_argument('--random_search', help='Random search', From da128a1a0454cd1bc36b6f00501139f643b81f65 Mon Sep 17 00:00:00 2001 From: Teytaud Date: Thu, 26 Sep 2019 13:02:19 +0200 Subject: [PATCH 08/31] Update README.md --- README.md | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index 5049389..37ded53 100644 --- a/README.md +++ b/README.md @@ -253,10 +253,15 @@ python eval.py visualization -n $runName -m $modelName --save_dataset $PATH_TO_T ### SWD metric Using the same kind of configuration file as above, just launch: - ``` python eval.py laplacian_SWD -c $CONFIGURATION_FILE -n $runName -m $modelName ``` +for the SWD score, to be maximized, or for the inception score: +``` +python eval.py inception -c $CONFIGURATION_FILE -n $runName -m $modelName +``` +also to be maximized (see https://hal.inria.fr/hal-01850447/document for a discussion). + Where $CONFIGURATION_FILE is the training configuration file called by train.py (see above): it must contains a "pathDB" field pointing to path to the dataset's directory. For example, if you followed the instruction of the Quick Training section to launch a training session on celebaHQ your configuration file will be config_celebaHQ.json. From 39e7ee968292fae7376d33c67c6058fdfa8e8b8c Mon Sep 17 00:00:00 2001 From: Teytaud Date: Thu, 26 Sep 2019 13:10:22 +0200 Subject: [PATCH 09/31] Update README.md --- README.md | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 37ded53..9951feb 100644 --- a/README.md +++ b/README.md @@ -79,8 +79,9 @@ And wait for a few days. Your checkpoints will be dumped in output_networks/cele For celebaHQ: ``` -python datasets.py celebaHQ $PATH_TO_CELEBAHQ -o $OUTPUT_DATASET - f -python train.py PGAN -c config_celebaHQ.json --restart -n celebaHQ +python datasets.py celebaHQ $PATH_TO_CELEBAHQ -o $OUTPUT_DATASET - f # Prepare the dataset and build the configuration file. +python train.py PGAN -c config_celebaHQ.json --restart -n celebaHQ # Train. +python eval.py inception -n celebaHQ -m PGAN # If you want to check the inception score. ``` Your checkpoints will be dumped in output_networks/celebaHQ. You should get 1024x1024 generations at the end. From 05a8a1ceea04524c35fdf1293b106d74ef04a448 Mon Sep 17 00:00:00 2001 From: Teytaud Date: Thu, 26 Sep 2019 14:01:30 +0200 Subject: [PATCH 10/31] Update train.py --- train.py | 3 +++ 1 file changed, 3 insertions(+) diff --git a/train.py b/train.py index 2706b54..d5ba6f2 100644 --- a/train.py +++ b/train.py @@ -37,6 +37,8 @@ def getTrainer(name): parser.add_argument('--np_vis', help=' Replace visdom by a numpy based \ visualizer (SLURM)', action='store_true') + parser.add_argument('--max_time', help=' Maximum time in seconds (0 for infinity)', type=int, + dest='max_time', default=0) parser.add_argument('--restart', help=' If a checkpoint is detected, do \ not try to load it', action='store_true') @@ -124,6 +126,7 @@ def getTrainer(name): lossIterEvaluation=kwargs["evalIter"], checkPointDir=checkPointDir, saveIter= kwargs["saveIter"], + max_time=kwargs["max_time"], modelLabel=modelLabel, partitionValue=partitionValue, **trainingConfig) From b15a1621dacd37bb7e6fd337037f9e44bab3de60 Mon Sep 17 00:00:00 2001 From: Teytaud Date: Thu, 26 Sep 2019 14:04:33 +0200 Subject: [PATCH 11/31] Update progressive_gan_trainer.py --- models/trainer/progressive_gan_trainer.py | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/models/trainer/progressive_gan_trainer.py b/models/trainer/progressive_gan_trainer.py index ae34639..c80d689 100644 --- a/models/trainer/progressive_gan_trainer.py +++ b/models/trainer/progressive_gan_trainer.py @@ -1,5 +1,6 @@ # Copyright (c) Facebook, Inc. and its affiliates. All Rights Reserved import os +import time from .standard_configurations.pgan_config import _C from ..progressive_gan import ProgressiveGAN @@ -22,6 +23,7 @@ def __init__(self, pathdb, miniBatchScheduler=None, datasetProfile=None, + max_time=0, configScheduler=None, **kwargs): r""" @@ -30,6 +32,7 @@ def __init__(self, dataset - useGPU (bool): set to True if you want to use the available GPUs for the training procedure + - max_time (int): max number of seconds for training (0 = infinity). - visualisation (module): if not None, a visualisation module to follow the evolution of the training - lossIterEvaluation (int): size of the interval on which the @@ -46,7 +49,7 @@ def __init__(self, - stopOnShitStorm (bool): should we stop the training if a diverging behavior is detected ? """ - + self.max_time = max_time self.configScheduler = {} if configScheduler is not None: self.configScheduler = { @@ -208,6 +211,7 @@ def train(self): + "_train_config.json") self.saveBaseConfig(pathBaseConfig) + start = time.time() for scale in range(self.startScale, n_scales): self.updateDatasetForScale(scale) @@ -230,7 +234,8 @@ def train(self): shiftAlpha += 1 while shiftIter < self.modelConfig.maxIterAtScale[scale]: - + if self.max_time > 0 and time.time() - start > self.max_time: + break self.indexJumpAlpha = shiftAlpha status = self.trainOnEpoch(dbLoader, scale, shiftIter=shiftIter, From 2b13f24202a34405635b4de9a57ba838c59bfc47 Mon Sep 17 00:00:00 2001 From: Teytaud Date: Mon, 30 Sep 2019 06:54:17 +0200 Subject: [PATCH 12/31] Update README.md --- README.md | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 9951feb..dceb1a4 100644 --- a/README.md +++ b/README.md @@ -272,14 +272,16 @@ You can add optional arguments: - -i $ITER: specify the iteration to evaluate(if not set, will take the highest one) - --selfNoise: returns the typical noise of the SWD distance for each resolution -### Inspirational generation +### Inspirational generation (https://arxiv.org/abs/1906.11661) -An inspirational generation consists in generation with your GAN an image which looks like a given input image. +An inspirational generation consists in generating with your GAN an image which looks like a given input image. +This is based on optimizing the latent vector z such that similarity(GAN(z), TargetImage) is maximum. To make an inspirational generation, you first need to build a feature extractor: ``` python save_feature_extractor.py {vgg16, vgg19} $PATH_TO_THE_OUTPUT_FEATURE_EXTRACTOR --layers 3 4 5 ``` +This feature extractor is then used for computing the similarity. Then run your model: From b1f098304debebbd8be97cc7234b4586ac9bd5dc Mon Sep 17 00:00:00 2001 From: Teytaud Date: Mon, 30 Sep 2019 07:00:04 +0200 Subject: [PATCH 13/31] Update README.md --- README.md | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/README.md b/README.md index dceb1a4..1c5a0fa 100644 --- a/README.md +++ b/README.md @@ -288,6 +288,13 @@ Then run your model: ``` python eval.py inspirational_generation -n $runName -m $modelName --inputImage $pathTotheInputImage -f $PATH_TO_THE_OUTPUT_FEATURE_EXTRACTOR ``` +You can compare choose for the optimization one of the optimizers in Nevergrad +(https://github.com/facebookresearch/nevergrad/). For example you can run: +``` +python eval.py inspirational_generation -n $runName -m $modelName --inputImage $pathTotheInputImage -f $PATH_TO_THE_OUTPUT_FEATURE_EXTRACTOR --nevergrad CMA +``` +if you want to use CMA-ES; or another optimizer in 'CMA', 'DE', 'PSO', 'TwoPointsDE', 'PortfolioDiscreteOnePlusOne', 'DiscreteOnePlusOne', 'OnePlusOne'. If you do not specify --nevergrad, then Adam is used. + ### I have generated my metrics. How can i plot them on visdom ? From 1805b9514f96394371bb3666151647d83d2921e1 Mon Sep 17 00:00:00 2001 From: Teytaud Date: Mon, 30 Sep 2019 07:08:00 +0200 Subject: [PATCH 14/31] Update gan_trainer.py --- models/trainer/gan_trainer.py | 2 ++ 1 file changed, 2 insertions(+) diff --git a/models/trainer/gan_trainer.py b/models/trainer/gan_trainer.py index 01bcf6a..6297e4b 100644 --- a/models/trainer/gan_trainer.py +++ b/models/trainer/gan_trainer.py @@ -27,6 +27,7 @@ def __init__(self, checkPointDir=None, modelLabel="GAN", config=None, + max_time=0, pathAttribDict=None, selectedAttributes=None, imagefolderDataset=False, @@ -70,6 +71,7 @@ def __init__(self, self.path_db = pathdb self.pathPartition = pathPartition self.partitionValue = partitionValue + self.max_time = max_time if config is None: config = {} From b3d62b01bd6f76a8fc3974567dab0d8f557ff1ff Mon Sep 17 00:00:00 2001 From: Teytaud Date: Mon, 30 Sep 2019 07:08:42 +0200 Subject: [PATCH 15/31] Update progressive_gan_trainer.py --- models/trainer/progressive_gan_trainer.py | 2 -- 1 file changed, 2 deletions(-) diff --git a/models/trainer/progressive_gan_trainer.py b/models/trainer/progressive_gan_trainer.py index c80d689..226e105 100644 --- a/models/trainer/progressive_gan_trainer.py +++ b/models/trainer/progressive_gan_trainer.py @@ -23,7 +23,6 @@ def __init__(self, pathdb, miniBatchScheduler=None, datasetProfile=None, - max_time=0, configScheduler=None, **kwargs): r""" @@ -49,7 +48,6 @@ def __init__(self, - stopOnShitStorm (bool): should we stop the training if a diverging behavior is detected ? """ - self.max_time = max_time self.configScheduler = {} if configScheduler is not None: self.configScheduler = { From d6577ba05b86382d4c7ed162324aecf85ec1a90f Mon Sep 17 00:00:00 2001 From: Teytaud Date: Mon, 30 Sep 2019 07:10:05 +0200 Subject: [PATCH 16/31] Update README.md --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 1c5a0fa..0793831 100644 --- a/README.md +++ b/README.md @@ -3,7 +3,7 @@ A GAN toolbox for researchers and developers with: - Progressive Growing of GAN(PGAN): https://arxiv.org/pdf/1710.10196.pdf - DCGAN: https://arxiv.org/pdf/1511.06434.pdf -- StyleGAN https://arxiv.org/abs/1812.04948 +- To come: StyleGAN https://arxiv.org/abs/1812.04948 illustration Picture: Generated samples from GANs trained on celebaHQ, fashionGen, DTD. From dcdaa66c4a7c53ae6ed4b1103e69d42e0d2e5953 Mon Sep 17 00:00:00 2001 From: Teytaud Date: Mon, 30 Sep 2019 07:12:31 +0200 Subject: [PATCH 17/31] Update README.md --- README.md | 1 - 1 file changed, 1 deletion(-) diff --git a/README.md b/README.md index 0793831..db44e02 100644 --- a/README.md +++ b/README.md @@ -147,7 +147,6 @@ Where: 1 - MODEL_NAME is the name of the model you want to run. Currently, two models are available: - PGAN(progressive growing of gan) - DCGAN - - StyleGAN 2 - CONFIGURATION_FILE(mandatory): path to a training configuration file. This file is a json file containing at least a pathDB entry with the path to the training dataset. See below for more informations about this file. From 57fdfafb04ef88323c3c4696d0aa8372979f2486 Mon Sep 17 00:00:00 2001 From: Teytaud Date: Mon, 30 Sep 2019 07:17:29 +0200 Subject: [PATCH 18/31] Update DCGAN_trainer.py --- models/trainer/DCGAN_trainer.py | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/models/trainer/DCGAN_trainer.py b/models/trainer/DCGAN_trainer.py index 1b99141..c3f1803 100644 --- a/models/trainer/DCGAN_trainer.py +++ b/models/trainer/DCGAN_trainer.py @@ -1,5 +1,6 @@ # Copyright (c) Facebook, Inc. and its affiliates. All Rights Reserved import os +import time from ..DCGAN import DCGAN from .gan_trainer import GANTrainer @@ -46,10 +47,12 @@ def train(self): self.saveBaseConfig(pathBaseConfig) maxShift = int(self.modelConfig.nEpoch * len(self.getDBLoader(0))) - + start = time.time() for epoch in range(self.modelConfig.nEpoch): dbLoader = self.getDBLoader(0) self.trainOnEpoch(dbLoader, 0, shiftIter=shift) + if self.max_time > 0 and time.time() - start > self.max_time: + break shift += len(dbLoader) From d2a11a9ef875903104a34de38aa5ffd1f5981cbc Mon Sep 17 00:00:00 2001 From: Teytaud Date: Mon, 30 Sep 2019 07:20:17 +0200 Subject: [PATCH 19/31] Update progressive_gan_trainer.py --- models/trainer/progressive_gan_trainer.py | 1 - 1 file changed, 1 deletion(-) diff --git a/models/trainer/progressive_gan_trainer.py b/models/trainer/progressive_gan_trainer.py index 226e105..4b1e541 100644 --- a/models/trainer/progressive_gan_trainer.py +++ b/models/trainer/progressive_gan_trainer.py @@ -31,7 +31,6 @@ def __init__(self, dataset - useGPU (bool): set to True if you want to use the available GPUs for the training procedure - - max_time (int): max number of seconds for training (0 = infinity). - visualisation (module): if not None, a visualisation module to follow the evolution of the training - lossIterEvaluation (int): size of the interval on which the From fa5488734f9040094e2d31b97e51654b35d3e95f Mon Sep 17 00:00:00 2001 From: Teytaud Date: Mon, 30 Sep 2019 07:21:25 +0200 Subject: [PATCH 20/31] Update gan_trainer.py --- models/trainer/gan_trainer.py | 1 + 1 file changed, 1 insertion(+) diff --git a/models/trainer/gan_trainer.py b/models/trainer/gan_trainer.py index 6297e4b..071aa4f 100644 --- a/models/trainer/gan_trainer.py +++ b/models/trainer/gan_trainer.py @@ -51,6 +51,7 @@ def __init__(self, - modelLabel (string): name of the model - config (dictionary): configuration dictionnary. for all the possible options + - max_time (int): max number of seconds for training (0 = infinity). - pathAttribDict (string): path to the attribute dictionary giving the labels of the dataset - selectedAttributes (list): if not None, consider only the listed From 8374753eaa0afc03cd2eb3868e3ac68d8970c2d2 Mon Sep 17 00:00:00 2001 From: Teytaud Date: Mon, 30 Sep 2019 09:51:47 +0200 Subject: [PATCH 21/31] Update DCGAN_trainer.py --- models/trainer/DCGAN_trainer.py | 1 + 1 file changed, 1 insertion(+) diff --git a/models/trainer/DCGAN_trainer.py b/models/trainer/DCGAN_trainer.py index c3f1803..55d73d2 100644 --- a/models/trainer/DCGAN_trainer.py +++ b/models/trainer/DCGAN_trainer.py @@ -19,6 +19,7 @@ def getDefaultConfig(self): def __init__(self, pathdb, + miniBatchScheduler=None, **kwargs): r""" Args: From 88eca90b05a13405dc2ac3f05d11d57d85ee0865 Mon Sep 17 00:00:00 2001 From: Teytaud Date: Tue, 1 Oct 2019 13:53:57 +0200 Subject: [PATCH 22/31] Update README.md --- README.md | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/README.md b/README.md index db44e02..db65a08 100644 --- a/README.md +++ b/README.md @@ -305,3 +305,16 @@ python eval.py metric_plot -n $runName ## LICENSE This project is under BSD-3 license. + +## Citing + +```bibtex +@misc{nevergrad, + author = {M. Riviere and C. Couprie}, + title = {{Pytorch GAN Zoo}}, + year = {2019}, + publisher = {GitHub}, + journal = {GitHub repository}, + howpublished = {\url{https://GitHub.com/FacebookResearch/pytorch_GAN_zoo}}, +} +``` From d0a40a672c82d3ee3259a8ec975d4b612cdef6a1 Mon Sep 17 00:00:00 2001 From: Teytaud Date: Tue, 1 Oct 2019 13:57:38 +0200 Subject: [PATCH 23/31] Update README.md --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index db65a08..2abcfe1 100644 --- a/README.md +++ b/README.md @@ -309,7 +309,7 @@ This project is under BSD-3 license. ## Citing ```bibtex -@misc{nevergrad, +@misc{pytorchganzoo, author = {M. Riviere and C. Couprie}, title = {{Pytorch GAN Zoo}}, year = {2019}, From 10e22478543973c1ce5715aba55c623bb0ec5e9e Mon Sep 17 00:00:00 2001 From: Teytaud Date: Tue, 1 Oct 2019 14:01:10 +0200 Subject: [PATCH 24/31] add inspirational images example --- inspir.png | Bin 0 -> 158477 bytes 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 inspir.png diff --git a/inspir.png b/inspir.png new file mode 100644 index 0000000000000000000000000000000000000000..69f77dadc03d8382e31da78565aef2f0dd06e8f1 GIT binary patch literal 158477 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 Y0l0Z+TvudBR{#J207*qoM6N<$g5~!r=>Px# literal 0 HcmV?d00001 From dcb4f4b7b3aedf16214e64313cb92133f05d3f18 Mon Sep 17 00:00:00 2001 From: Teytaud Date: Tue, 1 Oct 2019 14:02:03 +0200 Subject: [PATCH 25/31] Update README.md --- README.md | 3 +++ 1 file changed, 3 insertions(+) diff --git a/README.md b/README.md index 2abcfe1..ea3916a 100644 --- a/README.md +++ b/README.md @@ -273,6 +273,9 @@ You can add optional arguments: ### Inspirational generation (https://arxiv.org/abs/1906.11661) +You might want to generate clothese (or faces, or whatever) using an inspirational image, e.g.: +celeba + An inspirational generation consists in generating with your GAN an image which looks like a given input image. This is based on optimizing the latent vector z such that similarity(GAN(z), TargetImage) is maximum. To make an inspirational generation, you first need to build a feature extractor: From b43210c981f547ad1eeb0dddcb8f1444d5660b52 Mon Sep 17 00:00:00 2001 From: Teytaud Date: Tue, 1 Oct 2019 14:02:48 +0200 Subject: [PATCH 26/31] Update README.md --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index ea3916a..e0df277 100644 --- a/README.md +++ b/README.md @@ -274,7 +274,7 @@ You can add optional arguments: ### Inspirational generation (https://arxiv.org/abs/1906.11661) You might want to generate clothese (or faces, or whatever) using an inspirational image, e.g.: -celeba +celeba An inspirational generation consists in generating with your GAN an image which looks like a given input image. This is based on optimizing the latent vector z such that similarity(GAN(z), TargetImage) is maximum. From 4451d70becd3503680bf30e3074e04112c1bedd2 Mon Sep 17 00:00:00 2001 From: Teytaud Date: Mon, 14 Oct 2019 14:10:12 +0200 Subject: [PATCH 27/31] Update README.md --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index e0df277..b7b72e7 100644 --- a/README.md +++ b/README.md @@ -79,7 +79,7 @@ And wait for a few days. Your checkpoints will be dumped in output_networks/cele For celebaHQ: ``` -python datasets.py celebaHQ $PATH_TO_CELEBAHQ -o $OUTPUT_DATASET - f # Prepare the dataset and build the configuration file. +python datasets.py celebaHQ $PATH_TO_CELEBAHQ -o $OUTPUT_DATASET # Prepare the dataset and build the configuration file. python train.py PGAN -c config_celebaHQ.json --restart -n celebaHQ # Train. python eval.py inception -n celebaHQ -m PGAN # If you want to check the inception score. ``` From 4fc893dd06a8447af3b908c83855cb858e0861fe Mon Sep 17 00:00:00 2001 From: Teytaud Date: Mon, 14 Oct 2019 14:11:09 +0200 Subject: [PATCH 28/31] Update README.md --- README.md | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/README.md b/README.md index b7b72e7..1fa0f94 100644 --- a/README.md +++ b/README.md @@ -3,7 +3,6 @@ A GAN toolbox for researchers and developers with: - Progressive Growing of GAN(PGAN): https://arxiv.org/pdf/1710.10196.pdf - DCGAN: https://arxiv.org/pdf/1511.06434.pdf -- To come: StyleGAN https://arxiv.org/abs/1812.04948 illustration Picture: Generated samples from GANs trained on celebaHQ, fashionGen, DTD. @@ -228,7 +227,7 @@ You can generate more images from an existing checkpoint using: python eval.py visualization -n $runName -m $modelName ``` -Where modelName is in [PGAN, StyleGAN, DCGAN] and runName is the name given to your run (trained model). This script will load the last checkpoint detected at output_networks/$modelName. If you want to load a specific iteration, please call: +Where modelName is in [PGAN, DCGAN] and runName is the name given to your run (trained model). This script will load the last checkpoint detected at output_networks/$modelName. If you want to load a specific iteration, please call: ``` python eval.py visualization -n $runName -m $modelName -s $SCALE -i $ITER From 3dccf5e4d34dc62b341d5e34397b5fea6d6f97a6 Mon Sep 17 00:00:00 2001 From: Teytaud Date: Mon, 14 Oct 2019 14:12:06 +0200 Subject: [PATCH 29/31] Update README.md --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 1fa0f94..aeb7b1b 100644 --- a/README.md +++ b/README.md @@ -312,7 +312,7 @@ This project is under BSD-3 license. ```bibtex @misc{pytorchganzoo, - author = {M. Riviere and C. Couprie}, + author = {M. Riviere}, title = {{Pytorch GAN Zoo}}, year = {2019}, publisher = {GitHub}, From d812b0a1267464b3b6659632cbf76f4f6ac98f2e Mon Sep 17 00:00:00 2001 From: Teytaud Date: Mon, 14 Oct 2019 14:15:10 +0200 Subject: [PATCH 30/31] Update train.py --- train.py | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/train.py b/train.py index d5ba6f2..7d97dab 100644 --- a/train.py +++ b/train.py @@ -14,7 +14,6 @@ def getTrainer(name): match = {"PGAN": ("progressive_gan_trainer", "ProgressiveGANTrainer"), - "StyleGAN":("styleGAN_trainer", "StyleGANTrainer"), "DCGAN": ("DCGAN_trainer", "DCGANTrainer")} if name not in match: @@ -30,7 +29,7 @@ def getTrainer(name): parser = argparse.ArgumentParser(description='Testing script') parser.add_argument('model_name', type=str, help='Name of the model to launch, available models are\ - PGAN and DCGAN and StyleGAN. To get all possible option for a model\ + PGAN and DCGAN. To get all possible option for a model\ please run train.py $MODEL_NAME -overrides') parser.add_argument('--no_vis', help=' Disable all visualizations', action='store_true') From 6f0cec74583324dfca63962aa37c45c98a394916 Mon Sep 17 00:00:00 2001 From: Molugan Date: Tue, 7 Jan 2020 04:31:50 -0800 Subject: [PATCH 31/31] BUGFIX: minibatchsceduler remaining with DCGAN --- datasets.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/datasets.py b/datasets.py index d71a0b7..e5cbaa0 100644 --- a/datasets.py +++ b/datasets.py @@ -281,7 +281,8 @@ def resizeDataset(inputPath, outputPath, maxSize): maxSize = 1024 moveLastScale = False keepOriginalDataset = True - config["miniBatchScheduler"] = {"7": 12, "8": 8} + if args.model_type == 'PGAN': + config["miniBatchScheduler"] = {"7": 12, "8": 8} if args.model_type == 'DCGAN': print("WARNING: DCGAN is diverging for celebaHQ")