Source code for "Towards a Deeper Understanding of Adversarial Losses under a Discriminative Adversarial Network Setting"
Below we assume the working directory is the repository root.
-
Using pipenv (recommended)
Make sure
pipenv
is installed. (If not, simply runpip install --user pipenv
.)# Install the dependencies pipenv install # Activate the virtual environment pipenv shell
-
Using pip
# Install the dependencies pip install -r requirements.txt
# Download the training data
./scripts/download_data.sh
# Store the training data to shared memory
./scripts/process_data.sh
You can also download the MNIST handwritten digit database manually here.
We provide several shell scripts for easy managing the experiments. (See
scripts/README.md
for a detailed documentation.)
Below we assume the working directory is the repository root.
-
Run the following command to set up a new experiment with default settings.
# Set up a new experiment (for one run only) ./scripts/setup_exp.sh -r 1 "./exp/my_experiment/"
-
Modify the configuration files for different experimental settings. The configuration file can be found at
./exp/my_experiment/config.yaml
. -
Train the model by running the following command.
# Train the model (on GPU 0) ./scripts/run_train.sh -c -g 0 "./exp/my_experiment/"
For each run, there will be three folders created in the experiment folder.
logs/
: contain all the logs createdmodel/
: contain the trained modelsrc/
: contain a backup of the source code
Note that the validation results can be found in the logs/
folder.
Towards a Deeper Understanding of Adversarial Losses under a Discriminative Adversarial Network Setting
Hao-Wen Dong and Yi-Hsuan Yang
arXiv preprint arXiv:1901.08753, 2019.
[website]
[paper]
[arxiv]
[code]