Texygen
Texygen copied to clipboard
CLI args
Motivation
Out of the box, LeakGAN does not work when specified through main.py
. Instead, an error occurs that TensorFlow flags doesn't know how to parse argument 'g'
. This is due to the fact that main.py
parses arguments with getopt
, but the LeakGAN constructor uses tf.app.flags
.
Changes
To get LeakGAN to work properly, I modified main.py
to also utilize tf.app.flags
. Since these flags are intended to be global and distributed, it's perfectly legal to have flags specified in different parts of the system (i.e. LeakGAN specific args only in the LeakGAN constructor). The overall functionality is identical, with the exception that main.py
args need to use their longform version (e.g. --gan_type
instead of just -g
).
Additionally, I factored out the definitions of the test_file
, oracle_file
, and generator_file
to the Gan
class (since they were used by every GAN type), and made them able to be specified by CLI args as well.
Additionally, this fixes a bug in the current implementation, in which the -h command states, that you should use "-t realdata", while it's "-t real" instead.
the args defined in leakGan's constructer can not be use as this method.