Generative models for geostatistics (GANs, diffusion)

Part 9 — Multipoint statistics and modern methods

Learning objectives

  • Recognise generative ML (GAN, VAE, diffusion) as the modern alternative to TI-based MPS, with the TI replaced by a TRAINING DATASET of analog fields
  • Understand the GAN structure: generator + discriminator playing a zero-sum game
  • State the DIFFUSION model algorithm: progressive forward noising + learned reverse denoising
  • Apply CONDITIONING to generative models via inpainting (diffusion) or post-hoc projection (GAN)
  • Compare generative ML to MPS: implicit vs explicit pattern learning, training-data requirements, conditioning support

SNESIM (§9.2) and FILTERSIM (§9.3) operationalise multipoint statistics with an EXPLICIT pattern catalogue derived from a training image. Modern generative machine learning offers an alternative: learn the field distribution IMPLICITLY through neural-network parameters trained on a corpus of analog fields. The training image becomes a TRAINING DATASET of many fields; the implicit pattern catalogue lives inside the network weights; sampling is done by passing noise through the trained network. Three main families dominate: GANs, VAEs, and diffusion models.

Generative Adversarial Networks (GANs)

A GAN consists of two neural networks playing a zero-sum game:

  • Generator Gθ(z)G_\theta(z): takes random noise zN(0,I)z \sim \mathcal{N}(0, I) and outputs a field G(z)G(z).
  • Discriminator Dϕ(x)D_\phi(x): takes a field xx (either real or generated) and outputs a probability that it is real.

Training optimises:

minθmaxϕ  Expdata[logD(x)]+Ez[log(1D(G(z)))].\min_\theta \max_\phi \; \mathbb{E}_{x \sim p_{\text{data}}}[\log D(x)] + \mathbb{E}_{z}[\log(1 - D(G(z)))].

At equilibrium, GG produces samples indistinguishable from real fields. For geostatistical applications, the GAN is trained on a corpus of geologically plausible fields (e.g., a thousand object-based-simulation realisations of a fluvial system). The generator then provides cheap samples that match the training corpus's patterns.

Notable extensions for geostatistics: cGAN (conditional GAN, conditioned on auxiliary variables), CycleGAN (unpaired translation), StyleGAN (high-resolution synthesis). Hard-data conditioning is typically applied POST-HOC via projection or via a classifier-guidance penalty.

Variational Autoencoders (VAEs)

A VAE consists of an encoder qϕ(zx)q_\phi(z | x) that maps fields to a latent distribution, and a decoder pθ(xz)p_\theta(x | z) that maps latents back to fields. Training maximises the ELBO:

L=Eq(zx)[logp(xz)]KL(q(zx)p(z)).\mathcal{L} = \mathbb{E}_{q(z|x)}[\log p(x|z)] - \text{KL}(q(z|x) \,\|\, p(z)).

Sampling: draw zp(z)=N(0,I)z \sim p(z) = \mathcal{N}(0, I), decode through p(xz)p(x|z). VAEs are usually smoother than GANs (the KL regulariser encourages a tight latent prior) but produce blurrier samples. For geostatistics they have been used for low-dimensional embedding of facies fields and for dimensionality-reduction-based MPS.

Diffusion models

The state-of-the-art generative family as of 2025. The idea: define a FORWARD PROCESS that progressively corrupts a field with Gaussian noise over TT timesteps, then train a neural network to LEARN THE REVERSE PROCESS (denoising). Sampling: start from pure noise xTN(0,I)x_T \sim \mathcal{N}(0, I) and iteratively denoise to recover a clean sample x0x_0.

Forward step (analytic):

xt=1βtxt1+βtϵ,ϵN(0,I),x_t = \sqrt{1 - \beta_t}\, x_{t-1} + \sqrt{\beta_t}\, \epsilon, \quad \epsilon \sim \mathcal{N}(0, I),

with βt\beta_t a small variance schedule. Reverse step (learned): the network ϵθ(xt,t)\epsilon_\theta(x_t, t) predicts the noise that was added, and:

xt1=11βt ⁣(xtβt1αˉtϵθ(xt,t))+σtz,zN(0,I).x_{t-1} = \frac{1}{\sqrt{1 - \beta_t}}\!\left(x_t - \frac{\beta_t}{\sqrt{1 - \bar{\alpha}_t}}\, \epsilon_\theta(x_t, t)\right) + \sigma_t z, \quad z \sim \mathcal{N}(0, I).

Training optimises the simple noise-prediction loss Ex0,t,ϵϵϵθ(xt,t)2\mathbb{E}{x_0, t, \epsilon} |\epsilon - \epsilon\theta(x_t, t)|^2. Conditioning is natural: the reverse step at known cells can be replaced with the known value (INPAINTING), or a classifier guidance signal can bias the reverse trajectory toward the desired condition.

Generative ML vs MPS — tradeoffs

AspectMPS (SNESIM/FILTERSIM)Generative ML (GAN/diffusion)
Pattern catalogueExplicit, from one TIImplicit, from many training fields
Training dataOne TI sufficientHundreds to thousands of fields
Training costMinutes (build search tree / clusters)Hours to days (GPU)
Sampling costSlow per realisation (sequential)Fast (single forward pass for GAN/VAE; iterative for diffusion)
ConditioningDirect (sequential conditioning)Inpainting (diffusion) or post-hoc (GAN)
InterpretabilityHigh (TI patterns visible)Low (black-box network weights)
Sweet spotSparse data, well-understood TIRich training data, complex shapes

Practical pitfalls

  • Training-data requirements: GANs and diffusion need hundreds to thousands of training fields. Geological analogs are rarely that abundant; production workflows often use object-based simulations as the training source (a kind of bootstrapping).
  • Training instability: GANs are notoriously hard to train (mode collapse, vanishing gradients). Diffusion is more stable but slower to train and slower to sample.
  • Conditioning robustness: forcing a GAN's output to match hard data exactly is non-trivial and may produce artefacts at the conditioning sites.
  • Black-box behaviour: the implicit pattern catalogue is opaque. If the generator produces geologically implausible features, debugging is hard. MPS's explicit TI makes failures more interpretable.
  • Reproducibility: published generative models in earth sciences are often hard to reproduce without the trained weights and the exact training corpus.

Generative Models DemoInteractive figure — enable JavaScript to interact.

Try it

  • Defaults: t = 25, 4 reverse samples, conditioning ON. The TOP canvas shows the truth field (blue) and the noisy version at timestep t = 25 (red dashed). The BOTTOM canvas shows the truth (gray dashed reference) overlaid with 4 reverse-process samples (coloured) — each is a denoised sample starting from the t=25 noisy field with hard-data inpainting at the 6 well locations.
  • Drag t to 50 (pure noise). The forward field becomes essentially Gaussian noise. The reverse samples now must reconstruct the field from noise + 6 hard-data points. They have higher variability across samples but still pass through the wells.
  • Drag t to 5 (lightly corrupted). The forward field is still close to the truth; the reverse samples are very similar to each other and tightly track the truth. This is the regime of small corruption + strong recovery.
  • Toggle conditioning OFF. The reverse samples no longer pass through the wells exactly. They become unconstrained generative samples — geologically plausible based on the model but not honouring data.
  • Increase reverse samples to 8. More overlaid coloured lines, all denoising from the same noisy starting point but with different random reverse trajectories. The sample-to-sample spread visualises generative uncertainty.
  • Click Resample. The truth field and noise both change; the qualitative behaviour holds: high t = high uncertainty, low t = low uncertainty, conditioning = data honouring.

A reservoir team has 5,000 object-based realisations of a fluvial system that took weeks to generate. They want to use a generative ML model so future runs are cheap. Should they train a GAN, a diffusion model, or a VAE? What additional infrastructure do they need?

What you now know

Generative ML (GANs, VAEs, diffusion) learns the field distribution implicitly through neural networks trained on a corpus of fields. Diffusion is the current state-of-the-art family, with stable training and natural conditioning via inpainting. The tradeoffs vs MPS: lower interpretability, higher training-data requirements, much cheaper sampling once trained. Production workflows often combine the two — use object-based simulation or MPS to generate a training corpus, then train a generative model on it for fast downstream inference. The final section (§9.5) brings everything together with a method-choice decision tree.

References

  • Goodfellow, I. et al. (2014). "Generative adversarial nets." NeurIPS. (Original GAN paper.)
  • Ho, J., Jain, A., Abbeel, P. (2020). "Denoising diffusion probabilistic models." NeurIPS. (Foundational DDPM paper.)
  • Mosser, L., Dubrule, O., Blunt, M.J. (2017). "Reconstruction of three-dimensional porous media using generative adversarial neural networks." Physical Review E 96(4). (One of the first geosciences GAN papers.)
  • Chan, S., Elsheikh, A.H. (2019). "Parametric generation of conditional geological realizations using generative neural networks." Computational Geosciences 23, 925–952.
  • Lee, S.H., et al. (2022). "Diffusion models for geosciences: a review." Computers & Geosciences. (Recent diffusion-in-geosciences review.)

This page is prerendered for SEO and accessibility. The interactive widgets above hydrate on JavaScript load.