Giter Site home page Giter Site logo

cwae's Introduction

Repository info

This repository contains an implementation of Cramer-Wold AutoEncoder(CWAE), proposed by Jacek Tabor, Szymon Knop, Przemysław Spurek, Igor Podolak, Marcin Mazur, Stanisław Jastrzębski (2018).

Contents of the repository

|-- Mnist 2D.ipynb - Jupyter Notebook with trivial implementation presenting basic features
|-- src/ - contains an implementation of CWAE allowing to reproduce experiments from the original paper
|---- train_models.py - the starting point for experiments
|---- cw.py - implementation of various versions CW Distance
|---- architectures/ - files containing architectures used proposed in the paper
|---- evaluation/ - implementation of metrics used to evaluate and compare models
|-- results/ - directory that will be created in order to store the results of conducted experiments

Conducting the experiments

In order to reproduce CWAE results on MNIST and CIFAR-10 experiments as described in the original paper execute the following commands:

python train_models.py cwae mnist 500 20
python train_models.py cwae cifar10 500 64

Other options

The code allows manipulating some of the parameters(for example using other versions of the model, changing learning rate values or optimizer types) for more info see the list of available arguments in src/train_models.py file

Datasets

The repository allows reproducing experiments on MNIST and CIFAR10 dataset. In order to run experiments on CelebA dataset one must download it and import in a similar manner as other datasets by implementing load_celeba_data in src/dataset_loaders.py

Environment

We created the repository using the following configuration:

  • python 3.7.2
  • tensorflow 1.13.1
  • numpy 1.16.2
  • matplotlib 3.0.3

Additional links

To compute FID Score we used the code from:

To evaluate WAE model we used the code from:

CelebA dataset is available here:

cwae's People

Contributors

eszknop avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.