Code implementation – GAN
The GAN architecture represents a way for us to put two or more neural networks in adversarial training. The only major thing we've changed in our current architecture is to use 3D convolutions and a new input format. This GAN architecture is very similar to other structures we've introduced throughout this book.
Getting ready
After defining the generator and discriminator, we're going to continue our development by defining a new file called gan.py
. This file will be located under the src
folder. Check to make sure you have the same directory structure at this point:
├── data ├── docker │ ├── build.sh │ ├── clean.sh │ ├── Dockerfile │ └── kaggle.json ├── out ├── README.md ├── run_autoencoder.sh └── src ├── discriminator.py ├── encoder_model.h5 ├── encoder.py ├── gan.py ├── generator.py ├── x_test_encoded.npy └── x_train_encoded.npy
How to do it...
The GAN class will be straightforward to implement—it's essentially the same class we...