Giter VIP home page Giter VIP logo

mrcae's Introduction

MrCAE: multiresolution convolutional autoencoders (with adaptive filters)

Table of contents

Structure

MrCAE/
  |- README.md
  |- src/
    |- __init__.py
        |- utils.py
        |- torch_cae_multilevel_V4.py (*this is our MrCAE torch code*)
    |- torch_cae_skip_connection.py (classical benchmark)
  |- scripts/
    |- MrCAE_{xxxx}.ipynb (individual experiments)
    |- benchmark_{xxxx}.ipynb (benchmark experiments)
    |- training/ (contains scripts for batch training on clusters)
  |- data/ (contains simulation data, fluids data, SST data)
  |- model/(contains models at different stages)
  |- result/(contains training results)

Introduction

  • This repo provides the code for the paper "Multiresolution Convolutional Autoencoders" by Yuying Liu, Colin Ponce, Steven L. Brunton and J. Nathan Kutz (in review).
  • The network architecture is recursively built up to process data across different resolutions โ€” architectures built for processing coarser data are later embedded into the next-level architectures to ensure knowledge transfer.

figure 1: architecture overview

  • Within each level, we perform one deepening operation and a sequence of widening operations. The deepening operation inserts a convolutional/deconvolutional layer between the current and previous level inputs/outputs. This is the transfer learning step. The widening operation expands the network capacity in order to capture the new, finer-grained features of the higher resolution data.

figure 2: deepening & widening operations

  • The convolutional filters we use are highly adaptive: they only refine the regions that produce large reconstructions errors.

figure 3: adaptive filters

  • By utilizeing the above features, our network can progressively 'grow' itself and end up with the 'right' amount of parameters for characterzing the data. Different level of performances can be achieved at different stages of training.

Usage

  • We provide three methods to train the architecture: train_net(), train_net_one_level() and train_net_one_stage() which corresponds to (i) end-to-end training, (ii) train one level only and (iii) train one stage only (after an architecture change).
  • See demos under scripts/ for more details
  • Notes: training on GPUs is highly recommended.

Citation

@article{liu2020multiresolution,
  title={Multiresolution Convolutional Autoencoders},
  author={Liu, Yuying and Ponce, Colin and Brunton, Steven L and Kutz, J Nathan},
  journal={arXiv preprint arXiv:2004.04946},
  year={2020}
}

mrcae's People

Contributors

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