All Projects → LukasMosser → DeepFlow

LukasMosser / DeepFlow

Licence: MIT License
Pytorch implementation of "DeepFlow: History Matching in the Space of Deep Generative Models"

Programming Languages

matlab
3953 projects
Jupyter Notebook
11667 projects
c
50402 projects - #5 most used programming language
C++
36643 projects - #6 most used programming language
python
139335 projects - #7 most used programming language
HTML
75241 projects

Projects that are alternatives of or similar to DeepFlow

ADL2019
Applied Deep Learning (2019 Spring) @ NTU
Stars: ✭ 20 (-16.67%)
Mutual labels:  generative-adversarial-network, gan
MNIST-invert-color
Invert the color of MNIST images with PyTorch
Stars: ✭ 13 (-45.83%)
Mutual labels:  generative-adversarial-network, gan
Adventures-with-GANS
Showcasing various fun adventures with GANs
Stars: ✭ 13 (-45.83%)
Mutual labels:  generative-adversarial-network, gan
Semantic Pyramid for Image Generation
PyTorch reimplementation of the paper: "Semantic Pyramid for Image Generation" [CVPR 2020].
Stars: ✭ 45 (+87.5%)
Mutual labels:  generative-adversarial-network, gan
steam-stylegan2
Train a StyleGAN2 model on Colaboratory to generate Steam banners.
Stars: ✭ 30 (+25%)
Mutual labels:  generative-adversarial-network, gan
IrwGAN
Official pytorch implementation of the IrwGAN for unaligned image-to-image translation
Stars: ✭ 33 (+37.5%)
Mutual labels:  generative-adversarial-network, gan
GAN-Project-2018
GAN in Tensorflow to be run via Linux command line
Stars: ✭ 21 (-12.5%)
Mutual labels:  generative-adversarial-network, gan
The Gan World
Everything about Generative Adversarial Networks
Stars: ✭ 243 (+912.5%)
Mutual labels:  generative-adversarial-network, gan
GAN-auto-write
Generative Adversarial Network that learns to generate handwritten digits. (Learning Purposes)
Stars: ✭ 18 (-25%)
Mutual labels:  generative-adversarial-network, gan
AdvSegLoss
Official Pytorch implementation of Adversarial Segmentation Loss for Sketch Colorization [ICIP 2021]
Stars: ✭ 24 (+0%)
Mutual labels:  generative-adversarial-network, gan
MASA
Method of Manufactured Solutions Repository
Stars: ✭ 46 (+91.67%)
Mutual labels:  automatic-differentiation, partial-differential-equations
AvatarGAN
Generate Cartoon Images using Generative Adversarial Network
Stars: ✭ 24 (+0%)
Mutual labels:  generative-adversarial-network, gan
Qualia2.0
Qualia is a deep learning framework deeply integrated with automatic differentiation and dynamic graphing with CUDA acceleration. Qualia was built from scratch.
Stars: ✭ 41 (+70.83%)
Mutual labels:  automatic-differentiation, gan
catgan pytorch
Unsupervised and Semi-supervised Learning with Categorical Generative Adversarial Networks
Stars: ✭ 50 (+108.33%)
Mutual labels:  generative-adversarial-network, gan
Video prediction
Stochastic Adversarial Video Prediction
Stars: ✭ 247 (+929.17%)
Mutual labels:  generative-adversarial-network, gan
srgan
Pytorch implementation of "Photo-Realistic Single Image Super-Resolution Using a Generative Adversarial Network"
Stars: ✭ 39 (+62.5%)
Mutual labels:  generative-adversarial-network, gan
Gif
GIF is a photorealistic generative face model with explicit 3D geometric and photometric control.
Stars: ✭ 233 (+870.83%)
Mutual labels:  generative-adversarial-network, gan
Adgan
The Implementation of paper "Controllable Person Image Synthesis with Attribute-Decomposed GAN"
Stars: ✭ 239 (+895.83%)
Mutual labels:  generative-adversarial-network, gan
StyleGANCpp
Unofficial implementation of StyleGAN's generator
Stars: ✭ 25 (+4.17%)
Mutual labels:  generative-adversarial-network, gan
Deep-Exemplar-based-Video-Colorization
The source code of CVPR 2019 paper "Deep Exemplar-based Video Colorization".
Stars: ✭ 180 (+650%)
Mutual labels:  generative-adversarial-network, gan

DeepFlow

History Matching in the Space of Deep Generative Models

Authors: Lukas Mosser, Olivier Dubrule, Martin J. Blunt

Pytorch implementation of DeepFlow: History Matching in the Space of Deep Generative Models

Model Architecture

The model architecture consists of two parts: the generative adversarial network (implemented in Pytorch) and the forward solver (MRST). The coupling between the two is implemented in deepflow.mrst_coupling.PytorchMRSTCoupler and defines a fully differentiable computational graph.

Traversing the latent space while "History Matching"

A visualization of the intermediate geological models obtained during the optimisation process.

Interpolation between MAP solutions

Interpolation in latent space between three MAP estimates shown in the publication (Figure 9a-b)

Usage

To perform the inversion using the available pre-trained generator network use run_deepflow.sh
This requires a current version of Matlab or Octave available on the PATH.
Interpolation is performed by running interpolation.py using the example bash file run_deepflow_interpolation.sh.

Trained Models

Pre-trained models are available in the checkpoints directory.

Results and Data

A subset of the results is available in this Google Drive
The full dataset of the computations is multiple terrabyte in size and cannot be shared.
Computing each run was made reproducible by setting the run-number = seed command-line argumen.
Computations were performed on Imperial College CX1 supercomputing facilities. Total duration: 3 days wall-time on 100 servers @ 4-cores each.

Matlab / Octave Compatibility

The reservoir simulator that solves the two-phase flow problem and provides gradients via the adjoint MRST requires a Matlab license to run, but should be fully compatbile with GNU Octave

Citing

@ARTICLE{2019arXiv190505749M,
       author = {{Mosser}, Lukas and {Dubrule}, Olivier and {Blunt}, Martin J.},
        title = "{DeepFlow: History Matching in the Space of Deep Generative Models}",
      journal = {arXiv e-prints},
     keywords = {Computer Science - Machine Learning, Computer Science - Computer Vision and Pattern Recognition, Physics - Computational Physics, Physics - Geophysics, Statistics - Machine Learning},
         year = "2019",
        month = "May",
          eid = {arXiv:1905.05749},
        pages = {arXiv:1905.05749},
        archivePrefix = {arXiv},
       eprint = {1905.05749},
        primaryClass = {cs.LG},
       adsurl = {https://ui.adsabs.harvard.edu/abs/2019arXiv190505749M},
      adsnote = {Provided by the SAO/NASA Astrophysics Data System}
}

Acknowledgements

The author would like to acknolwedge the developers of the Matlab Reservoir Simulator Toolbox.
If you use their software, please acknowledge them in your references.
O. Dubrule would like to thank Total for seconding him as a visiting professor at Imperial College London.

License

MIT

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].