All Projects → johannbrehmer → Manifold Flow

johannbrehmer / Manifold Flow

Licence: mit
Manifold-learning flows (ℳ-flows)

Projects that are alternatives of or similar to Manifold Flow

Pdftableextract
PDFTableExtract
Stars: ✭ 172 (-0.58%)
Mutual labels:  jupyter-notebook
Thai2fit
ULMFit Language Modeling, Text Feature Extraction and Text Classification in Thai Language. Created as part of pyThaiNLP
Stars: ✭ 172 (-0.58%)
Mutual labels:  jupyter-notebook
Simclr
SimCLRv2 - Big Self-Supervised Models are Strong Semi-Supervised Learners
Stars: ✭ 2,720 (+1472.25%)
Mutual labels:  jupyter-notebook
Asrframe
An Automatic Speech Recognition Frame ,一个中文语音识别的完整框架, 提供了多个模型
Stars: ✭ 171 (-1.16%)
Mutual labels:  jupyter-notebook
Lecture Source Py
Source files for "Lectures in Quantitative Economics" -- Python version
Stars: ✭ 172 (-0.58%)
Mutual labels:  jupyter-notebook
Coursera
✅ Solutions to MachineLearning, DeepLearning, NeuralNetwork
Stars: ✭ 172 (-0.58%)
Mutual labels:  jupyter-notebook
Psi4numpy
Combining Psi4 and Numpy for education and development.
Stars: ✭ 170 (-1.73%)
Mutual labels:  jupyter-notebook
Iminuit
Jupyter-friendly Python interface for C++ MINUIT2
Stars: ✭ 172 (-0.58%)
Mutual labels:  jupyter-notebook
100 Days Of Ml Code
A day to day plan for this challenge. Covers both theoritical and practical aspects
Stars: ✭ 172 (-0.58%)
Mutual labels:  jupyter-notebook
Notes
CME211 Notes | Outline ->
Stars: ✭ 172 (-0.58%)
Mutual labels:  jupyter-notebook
Ditching Excel For Python
Functionalities in Excel translated to Python
Stars: ✭ 172 (-0.58%)
Mutual labels:  jupyter-notebook
Cinic 10
A drop-in replacement for CIFAR-10.
Stars: ✭ 172 (-0.58%)
Mutual labels:  jupyter-notebook
Marketing Data Science
Analytics and data science business case studies to identify opportunities and inform decisions about products and features. Topics include Markov chains, A/B testing, customer segmentation, and machine learning models (logistic regression, support vector machines, and quadratic discriminant analysis).
Stars: ✭ 171 (-1.16%)
Mutual labels:  jupyter-notebook
Awesome Dl Projects
This is a collection of the code that accompanies the reports in The Gallery by Weights & Biases.
Stars: ✭ 171 (-1.16%)
Mutual labels:  jupyter-notebook
Tutorials
This repository contains materials for demos, tutorials, and talks by Dato Inc.
Stars: ✭ 172 (-0.58%)
Mutual labels:  jupyter-notebook
Sklearn pycon2013
Files for my scikit-learn tutorial at PyCon 2013
Stars: ✭ 171 (-1.16%)
Mutual labels:  jupyter-notebook
L2hmc
TensorFlow implementation for training MCMC samplers from the paper: Generalizing Hamiltonian Monte Carlo with Neural Network
Stars: ✭ 172 (-0.58%)
Mutual labels:  jupyter-notebook
Cikm 2019 Analyticup
1st Solution for 2019-CIKM-Analyticup, Efficient and Novel Item Retrieval for Large-scale Online Shopping Recommendation
Stars: ✭ 173 (+0%)
Mutual labels:  jupyter-notebook
Notebooks
Notebooks on how to use Distributed Evolutionary Algorithm in Python (DEAP)
Stars: ✭ 172 (-0.58%)
Mutual labels:  jupyter-notebook
Tensorflow 101
中文的 tensorflow tutorial with jupyter notebooks
Stars: ✭ 172 (-0.58%)
Mutual labels:  jupyter-notebook

Manifold-learning flows

Johann Brehmer and Kyle Cranmer 2019-2020

arXiv NeurIPS Code style: black License: MIT

M-flow illustration figure

In the paper Flows for simultaneous manifold learning and density estimation we introduce manifold-learning flows or ℳ-flows, a new class of generative models that simultaneously learn the data manifold as well as a tractable probability density on that manifold. This repository contains our implementation of ℳ-flows, as well as the code for our experiments with them.

Getting started

Please make sure your Python environment satisfies the requirements in the environment.yml. To use the OT training, please also follow the installation instructions for geomloss.

Data sets

Data set Data dimension Manifold dimension Model parameters Arguments to train.py, and evaluate.py
Gaussian on an n-sphere d n - --dataset spherical_gaussian --truelatentdim n --datadim d --epsilon eps
Conditional Gaussian on a n-sphere d n 2 --dataset conditional_spherical_gaussian --truelatentdim n --datadim d
Mixture model on a polynomial manifold 3 2 1 --dataset power
Lorenz system 3 2 0 --dataset lorenz
Particle physics 40 14 2 --dataset lhc40d
2-D StyleGAN image manifold 64 x 64 x 3 2 0 --dataset gan2d
64-D StyleGAN image manifold 64 x 64 x 3 64 1 --dataset gan64d
CelebA-HQ 64 x 64 x 3 ? 0 --dataset celeba
ImageNet 64 x 64 x 3 ? 0 --dataset imagenet

The data from most data sets should automatically download when required. It is not necessary to generate any data yourself anymore. If there is a problem with that, please let us know.

Training

See experiments/train.py -h. The configurations for the models in the paper can be found in experiments/configs.

Note that the algorithms have different internal names from the acronyms in the paper:

Model (algorithm) Arguments to train.py
Ambient flow (AF) --algorithm flow
Flow on manifold (FOM) --algorithm mf --specified
Pseudo-invertible encoder (PIE) --algorithm pie
ℳ-flow, simultaneous training (not recommended) --algorithm mf
ℳ-flow, alternating M/D training --algorithm mf --alternate
ℳ-flow, sequential M/D training --algorithm mf --sequential
ℳ-flow, Optimal Transport training --algorithm gamf
ℳ-flow, alternating Optimal Transport training --algorithm gamf --alternate
ℳ_e-flow, simultaneous training (not recommended) --algorithm emf
ℳ_e-flow, alternating M/D training --algorithm emf --alternate
ℳ_e-flow, sequential M/D training --algorithm emf --sequential

Evaluation

See experiments/evaluate.py -h and the notebooks in experiments/notebooks. Note that the algorithms have different internal names from the acronyms in the paper:

Model (algorithm) Arguments to train.py
Ambient flow (AF) --algorithm flow
Flow on manifold (FOM) --algorithm mf --specified
Pseudo-invertible encoder (PIE) --algorithm pie
ℳ-flow (except when OT-trained) --algorithm mf
ℳ-flow, OT training --algorithm gamf

Acknowledgements

The code is largely based on the excellent Neural Spline Flow code base by C. Durkan, A. Bekasov, I. Murray, and G. Papamakarios, see 1906.04032 for their paper.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].