Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/zurutech/gans-from-theory-to-production
Material for the tutorial: "Deep Diving into GANs: from theory to production"
https://github.com/zurutech/gans-from-theory-to-production
deep-learning euroscipy gan pycon tensorflow tensorflow-tutorials tfgan tutorial
Last synced: about 1 month ago
JSON representation
Material for the tutorial: "Deep Diving into GANs: from theory to production"
- Host: GitHub
- URL: https://github.com/zurutech/gans-from-theory-to-production
- Owner: zurutech
- License: mpl-2.0
- Created: 2018-07-20T12:09:27.000Z (over 6 years ago)
- Default Branch: master
- Last Pushed: 2023-03-24T22:56:53.000Z (over 1 year ago)
- Last Synced: 2024-09-30T17:04:56.023Z (about 1 month ago)
- Topics: deep-learning, euroscipy, gan, pycon, tensorflow, tensorflow-tutorials, tfgan, tutorial
- Language: Jupyter Notebook
- Homepage:
- Size: 131 MB
- Stars: 205
- Watchers: 17
- Forks: 44
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- License: LICENSE.md
Awesome Lists containing this project
- really-awesome-gan - [GitHub
- really-awesome-gan - [GitHub
README
# Deep Diving into GANs: from theory to production
With our accrued experience with GANs, we would like to guide you through the required steps to go from theory to production with this revolutionary technology.
Starting from the very basic of what a GAN is, passing trough TensorFlow implementation, using the most cutting edge APIs available in the framework, and finally, production-ready serving at scale using Google Cloud Functions.
This is the [ZURU Tech](https://zuru.tech/) way of making GANs: enjoy it.
## Workshop's Table of contents
- Introduction to GANs: Theory and Applications ([SlideShare](https://www.slideshare.net/EmanueleGhelfi/euroscipy-2019-gans-theory-and-applications))
- Generator
- Discriminator
- Intuitive explaination
- Non saturating value function
- Models definition
- Training phase
- Types of GANs
- Conditional GANs
- Applications
- Unconditional GAN
- Conditional GAN- GANs in TensorFlow 2.0:
- What does a GAN learn?
- Input data
- Generator and discriminator networks: Keras functional API
- Define input and instantiate networks
- The loss function and the training procedure
- Discriminator loss function
- Generator loss function
- Gradient ascent
- Visualize training
- Advantages and disadvantages
- Bonus exercise: converting it to a Conditional GAN- Writing a GAN using AshPy and TensorFlow Datasets
- [AshPy Essentials](https://github.com/zurutech/ashpy)
- tfds and AshPy input format
- Getting the data ready to use
- DCGAN Theory and Practice
- Generator: from noise to insight
- Deconvolution
- Batch Normalization
- Discriminator
- Loss function: a bridge between two networks
- Training
- Tensorboard
- Towards Serving- Production:
- Serving Models using TF 2.0 and Cloud Functions
- Web Demo: Generating and Interpolating Faces---
## Requirements
This tutorial requires the following packages:
- `python` >= 3.7
- `tensorflow` >=2.0: https://www.tensorflow.org/install/install_linux
- `jupyter`
- `numpy`## Setting up the environment (Linux, MacOS)
### Clone the repository
```bash
git clone https://github.com/zurutech/gans-from-theory-to-production
cd gans-from-theory-to-production
```### Prepare a virtual environment
- `virtualenv`: `virtualenv venv && source venv/bin/activate`
### Installing the required packages
```bash
pip install -r no-gpu-requirements.txt
# or pip install -r gpu-requirements if a GPU with Compute Capability >= 3.0 is present
```### Start your Jupyter server
`jupyter notebook .` or the newer `jupyter lab .`.
---
If you're here, you're ready to go.
Happy workshop!
---
## We're hiring!
Do you just love machine learning and you're also interested in Computer Vision? Join us at [ZURU Tech](https://zuru.tech/)!
## Authors
- Michele "Ubik" De Simoni - https://essays.ubik.tech/ - michele.d[at]zuru.tech
- Paolo Galeone - https://pgaleone.eu/ - paolo[at]zuru.tech
- Federico Di Mattia - federico.d[at]zuru.tech
- Emanuele Ghelfi - https://emanueleghelfi.github.io - emanuele[at]zuru.tech