Skip to content

WISE: full-Waveform variational Inference via Subsurface Extensions

License

Notifications You must be signed in to change notification settings

slimgroup/WISE.jl

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

13 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

WISE: full-Waveform variational Inference via Subsurface Extensions

Code to reproduce results in Ziyi Yin*, Rafael Orozco*, Mathias Louboutin, Felix J. Herrmann, "WISE: full-Waveform variational Inference via Subsurface Extensions". Published in Geophysics. DOI: 10.1190/geo2023-0744.1

Software descriptions

All of the software packages used in this paper are fully open source, scalable, interoperable, and differentiable. The readers are welcome to learn about our software design principles from this open-access article.

Wave modeling

We use JUDI.jl for wave modeling and inversion, which calls the highly optimized propagators of Devito.

Conditional normalizing flows

We use InvertibleNetworks.jl to train the conditional normalizing flows (CNFs). This package implements memory-efficient invertible networks via hand-written derivatives. This ensures that these invertible networks are scalable to realistic 3D problems.

Installation

First, install Julia and Python. The scripts will contain package installation commands at the beginning so the packages used in the experiments will be automatically installed.

Scripts

gen_cig_openfwi.jl generates seismic data and computes common-image gathers for the CurveFault-A velocity models in the Open FWI dataset. train_openfwi.jl trains the conditional normalizing flows with pairs of velocity models and (extended) reverse-time migrations for the Open FWI dataset.

gen_cig_compass.jl generates seismic data and computes common-image gathers for the velocity models in the Compass dataset. train_compass.jl trains the conditional normalizing flows with pairs of velocity models and (extended) reverse-time migrations for the Compass dataset.

inference_compass.jl produces the inference results listed in the WISE paper.

The script utils.jl parses the input as keywords for each experiment.

Trained networks

4 trained conditional normalizing flows can be downloaded from dropbox, with description below

Summary statistics \ dataset Open FWI Compass
Reverse-time migration openfwi_rtm.bson compass_rtm.bson
Common-image gathers openfwi_cig.bson compass_cig.bson

Further developments

To further improve the inference results and mitigate the amortization gap via frugal usage of wave physics, please feel free to have a look at our latest development: WISER.

LICENSE

The software used in this repository can be modified and redistributed according to MIT license.

Reference

If you use our software for your research, we appreciate it if you cite us following the bibtex in CITATION.bib.

Authors

This repository is written by Ziyi Yin and Rafael Orozco from the Seismic Laboratory for Imaging and Modeling (SLIM) at the Georgia Institute of Technology.

If you have any question, we welcome your contributions to our software by opening issue or pull request.

SLIM Group @ Georgia Institute of Technology, https://slim.gatech.edu.
SLIM public GitHub account, https://github.com/slimgroup.