Giter Site home page Giter Site logo

pymrf's Introduction

pymrf

Stochastic geological modeling using Markov Random Field and Bayesian Machine Learning

Contents

Introduction

This package presents a novel stratigraphic stochastic simulation approach, which is developed by integrating a Markov random field (MRF) model and a discriminant adaptive nearest neighbor-based k-harmonic mean distance (DANN-KHMD) classifier into a Bayesian framework. The DANN-KHMD classifier is effective for extracting anisotropic patterns from sparse and heterogeneous spatial categorical data such as borehole logs. The MRF parameters can be initially estimated roughly or customized (if site-specific knowledge is available). Later these parameters can be updated and regularized in an unsupervised manner with constraints from site exploration results in a Bayesian manner. Throughout the learning process, both the soil profile and the MRF parameters are updated in a probabilistic manner. The advantages of the proposed approach can be summarized into four points: 1) inferring stratigraphic profile and associated uncertainty in an automatic and fully unsupervised manner; 2) reasonable initial stratigraphic configurations can be sampled and hence lower the computational cost; 3) both stratigraphic uncertainty and model uncertainty are taken into consideration throughout the inferential process; 4) relying on no training stratigraphy images.

Example case

You can try out this example by using an interactive Jupyter Notebook in your own web browser.

Main code

The file "pyMRF.py" is the main code of the program.

Case dataset

The file "case_dataset.npy" is the data of the example case, which is generated using the file "generate_MRF_realizations.py". The file "generate_MRF_realizations.py" is the code for generating an MRF given a predetermined Beta vector.

The inference process

The file "Stratigraphic configuration acquisition process of synthetic case.ipynb" is the inference process.

Reference [see the PDF file]

Wei, X., & Wang, H. (2022). Stochastic stratigraphic modeling using Bayesian machine learning. Engineering Geology, 307, 106789. doi: https://doi.org/10.1016/j.enggeo.2022.106789

pymrf's People

Contributors

xxingwei avatar hwang051785 avatar

Stargazers

 avatar Wild bard avatar Chen Wang avatar Bo Zhang avatar  avatar 朱喆 avatar Manuel Barbagelata avatar  avatar  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.