Skip to content

Autoencoders (Standard, Convolutional, Variational), implemented in tensorflow

Notifications You must be signed in to change notification settings

TimoFlesch/Autoencoders

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

31 Commits
 
 
 
 
 
 

Repository files navigation

Implementation of Various Autoencoders

Contains tensorflow code to run

All models are trained on the famous and boring MNIST dataset (suboptimal choice for the bVAE)

Requirements

Python 3.6 and tensorflow 1.0

Structure

Everything you need is contained in the folder code

  1. Model Selection
    Change the flags in main.py

  2. Model Modification
    Each model consists of a specification file (e.g. this one for the AE) and a runner runXY.py (e.g. this one for the AE). Change the model architecture in the corresponding model.py file. Some auxiliar functions are defined in the nntools subfolder.

  3. Training a model
    Call the respective runXY.py

  4. Evaluating a model
    Change the training flag in main.py to False and call the respective runXY.py

Monitoring

The code creates scalar and image summaries during training.

Local

to start a monitoring session:

 tensorboard --logdir=path/to/log-directory --port=6006

then, navigate in browser to:

0.0.0.0:6006

to visualize the summaries and monitor the training process

Remote

to start monitoring session:

ssh -L 16006:127.0.0.1:6006 [email protected]
tensorboard --logdir=path/to/log-directory --port=6006

then, navigate in browser of local machine (whilst ssh tunnel is open) to:

127.0.0.1:16006

Releases

No releases published

Packages

No packages published

Languages