Wavelet Extraction: an essay in model selection and uncertainty … · 2007. 9. 20. · Noise...

42
Wavelet Extraction: an essay in model selection and uncertainty James Gunning, CSIRO Petroleum, Australia

Transcript of Wavelet Extraction: an essay in model selection and uncertainty … · 2007. 9. 20. · Noise...

Page 1: Wavelet Extraction: an essay in model selection and uncertainty … · 2007. 9. 20. · Noise estimation Noise ε≡(D-f(m)) ε= ε meas+ε model Often ε model > ε meas: we’re

Wavelet Extraction: an essay in model selection and uncertainty

James Gunning, CSIRO Petroleum, Australia

Page 2: Wavelet Extraction: an essay in model selection and uncertainty … · 2007. 9. 20. · Noise estimation Noise ε≡(D-f(m)) ε= ε meas+ε model Often ε model > ε meas: we’re

Outline● Model selection, inference and prediction: Generalities

● Wavelet extraction – Model formulation– Generic inversion/inference features for single models– Model choice scenarios. 3 examples

● Morals & conclusions

Page 3: Wavelet Extraction: an essay in model selection and uncertainty … · 2007. 9. 20. · Noise estimation Noise ε≡(D-f(m)) ε= ε meas+ε model Often ε model > ε meas: we’re

Model selection

● Classic statistics problem– line ? or parabola? or sextic?

● Foundations of science– Newton or Ptolemy?

x

y

F = m a

Page 4: Wavelet Extraction: an essay in model selection and uncertainty … · 2007. 9. 20. · Noise estimation Noise ε≡(D-f(m)) ε= ε meas+ε model Often ε model > ε meas: we’re

Generalities● Geostatistics is only one branch of multivariate statistics.

– Every result of significance can be derived from conventional multivariate estimation theory. A Bayesian spin is helpful.

– The rest of the world understands us better if we write things this way.

● As statisticians, we have the duties of – Model inference– Significance testing– Model refinement/testing– Making predictions with error estimates

Page 5: Wavelet Extraction: an essay in model selection and uncertainty … · 2007. 9. 20. · Noise estimation Noise ε≡(D-f(m)) ε= ε meas+ε model Often ε model > ε meas: we’re

Model selection & Bayes factors● Suppose there are k=1…N models to explain data D, with parameters

mk

● The model has prior P(mk|k)P(k), likelihood L(D|mk,k)

● Here’s Three very useful things:

– Marginal model likelihood:

P(D|k)=∫L(D|mk ,k)P(mk|k) dmk

– Bayes factor Bij= P(D|i)/ P(D|j)

– Model probability of model k:

P(k | D) =P(D | k)P(k)

P(D | j)P( j)j=1

N

Page 6: Wavelet Extraction: an essay in model selection and uncertainty … · 2007. 9. 20. · Noise estimation Noise ε≡(D-f(m)) ε= ε meas+ε model Often ε model > ε meas: we’re

Predictive distributions ● Bayesian model averaging: prediction for new y

– P(y|D) = ∑ k P(y|Mk,D) P(D|k)

● Mixture distributions– Models/rock-types/properties– Most helpful way to manage heavy tails

● Often:– uncertainties within a model < uncertainty between models

y

P(y|D)

Page 7: Wavelet Extraction: an essay in model selection and uncertainty … · 2007. 9. 20. · Noise estimation Noise ε≡(D-f(m)) ε= ε meas+ε model Often ε model > ε meas: we’re

Noise estimation● Noise ε≡ (D-f(m))

ε= εmeas+εmodel

● Often εmodel > εmeas : we’re prepared to live with approximate models● εmeas usually stationary. Maybe biased. Roughly known.● εmodel often nonstationary. Correlated. Often biased. Usually

unknown.● We blaze away: {ε, σ2} ~ N(0, σ2)P(σ2)

● Inference of p(ε) chief issue– p(ε) strongly coupled to model dimensionality– Demands sensible priors in Bayesian formulation

● Simplest form adds pieces like- Log(Π) ~ |D-f(m)|2/(2σ2)+nD log(σ2)/2

- Absolute statements of model significance no longer possible

Page 8: Wavelet Extraction: an essay in model selection and uncertainty … · 2007. 9. 20. · Noise estimation Noise ε≡(D-f(m)) ε= ε meas+ε model Often ε model > ε meas: we’re

Marginal model likelihood estimators● Full linearisation+conjugate priors, analytical● Quadratures. Too hard as d=dim(m) gets large● MCMC “Harmonic mean” averages:

Unstable as Nsamples→∞

● Laplace-Metropolis approx.

● BIC asymptotics (eqn (1) does the “overfit” penalty automatically)

P(D | k) = L(D | mk,k)P(mk,k)dmk (1)∫ˆ P (D | k) =

1L(D | mk ,k)

Π(mk |D )(MCMC )

−1

P(D | k) ≈ e− f (m )dm ≈ (2π )d / 2 det{ ∂ 2 f∂mi∂m j ˆ m

}−1e− f ( ˆ m ) = (2π )d / 2 | H |1/ 2 L(D | ˆ m )P∫

−log(P(D | k)) ~ −log(L(D | ˆ m )P( ˆ m ))) +d2

( ˆ m )

log(nD ) + O(n−1/ 2)

Page 9: Wavelet Extraction: an essay in model selection and uncertainty … · 2007. 9. 20. · Noise estimation Noise ε≡(D-f(m)) ε= ε meas+ε model Often ε model > ε meas: we’re

Issues in prior formulation● Lindley paradox (1957)

– Models M1 and M2, with d2 > d1. Suppose they share (nested) parameters m with prior m1 ~N(0,σ2C1)m2 ~N({0,0},σ2 diag{C1,C2})P(σ)~1/σ (Jeffrey’s prior)

Then the Bayes factor is (Smith & Spiegelhalter 1980)

B12 ~ |C2|1/2|X2T X2|1/2(1+((d2-d1)/(n-d1)F)n/2

Always favours simplest model (1) as |C2| →∞(even for proper prior on m2!)

● Setting of reasonable prior variances very important in comparing different dimensional models

Page 10: Wavelet Extraction: an essay in model selection and uncertainty … · 2007. 9. 20. · Noise estimation Noise ε≡(D-f(m)) ε= ε meas+ε model Often ε model > ε meas: we’re

Segmentation/Blocking algorithms● Changepoints a classic model-

choice problem● Maximum likelihood

configurations for kchangepoints τj accessible from dynamic programming O(kn2) (D.M.Hawkins, Comp. Stat. & Data Analysis 37(3), 2001)

● Uses:– Thinning reflectivity sequence– Optimal checkshot choices

− log(L(y,m,τ )) =12

(yi − m j )2 /σ 2 +

n2

log(σ 2) + BICi=τ j −1 +1

τ j

∑j=1

k

Page 11: Wavelet Extraction: an essay in model selection and uncertainty … · 2007. 9. 20. · Noise estimation Noise ε≡(D-f(m)) ε= ε meas+ε model Often ε model > ε meas: we’re

Wavelet extraction problem

Z (depth)

t (time)

noise level

CONVOLUTION

reflections

from well logs

Systematic registration

error ?

True-amplitude imaged seismic

wavelet

Page 12: Wavelet Extraction: an essay in model selection and uncertainty … · 2007. 9. 20. · Noise estimation Noise ε≡(D-f(m)) ε= ε meas+ε model Often ε model > ε meas: we’re

Real wavelets and effective wavelets: Ricker 1953 (dynamite)

Page 13: Wavelet Extraction: an essay in model selection and uncertainty … · 2007. 9. 20. · Noise estimation Noise ε≡(D-f(m)) ε= ε meas+ε model Often ε model > ε meas: we’re

Motivations● Wavelet extraction a critical process in inversion studies● Commercial codes don't (or wont) tell you

– Noise estimates– Non-normal-incidence wavelets– Time to depth or positioning errors– May struggle with

● Multiple wells● Deviated wells

– wavelet uncertainties

Page 14: Wavelet Extraction: an essay in model selection and uncertainty … · 2007. 9. 20. · Noise estimation Noise ε≡(D-f(m)) ε= ε meas+ε model Often ε model > ε meas: we’re

Wishlist● Wavelet coefficient extraction (plus errors)

● Wavelet length estimation (plus errors)

● Noise estimation (plus errors)

● Petrophysics model choices

● Time to depth adjustments(plus errors)– Integrates checkshots and sonic logs

● Positioning adjustments (plus errors)

● Multi-well

● Multi-stack

Page 15: Wavelet Extraction: an essay in model selection and uncertainty … · 2007. 9. 20. · Noise estimation Noise ε≡(D-f(m)) ε= ε meas+ε model Often ε model > ε meas: we’re

Wavelet Parameterization (1)• Wavelet coefficients mw

– Nyquist-rate knots on cubic splines with zero endpoints & derivatives

– Ensures decent tapering & correct bandwidth– Span ? (see later)

• Prior P(mw)=N(0,s2I)N(tp,σp2)N(Φ(ω),σφ

2I)

Optional timing prior

Optional phase prior in passband

Page 16: Wavelet Extraction: an essay in model selection and uncertainty … · 2007. 9. 20. · Noise estimation Noise ε≡(D-f(m)) ε= ε meas+ε model Often ε model > ε meas: we’re

Checkshot Parameterization (2)

● Time to depth parameters

z

Checkshots (e.g. from VSP tools)

Markers (geological identifications)

t

N(tm,i,σm,i2)

N(tc,i,σc,i2)

Global (well specific) time shift

tg±σtg

vvintint((zzii+1+1--zzi i ,,ti+1-ti) ~ N(N(vvloglog--averageaverage,, σv2)

Page 17: Wavelet Extraction: an essay in model selection and uncertainty … · 2007. 9. 20. · Noise estimation Noise ε≡(D-f(m)) ε= ε meas+ε model Often ε model > ε meas: we’re

Petrophysics parameterizations: Multi stack

Near stack

Far stack

Near stack

Page 18: Wavelet Extraction: an essay in model selection and uncertainty … · 2007. 9. 20. · Noise estimation Noise ε≡(D-f(m)) ε= ε meas+ε model Often ε model > ε meas: we’re

Petrophysics Parameterizations(4): AVO effects (Linearized Zoeppritz)

● General approximate p-p reflection coefficient

R=½(∆ρ/ ρ + ∆vp/ vp) + B( θ2(½∆vp/ vp - 2vs2 (∆ρ/ρ+2 ∆vs/vs)/vp

2)

+ θ2 )∆δ/2shear dependent

normal incidence angle unknown?

Thomsen anisotropy parameters:

● Stack angle θ2 = vp2 /(Vstack

4Tstack2/<Xstack

2>)

● R computed at block boundaries: vp,vs,ρ are Backus-upscaled segment properties (i.e. error-free log data)

● Anisotropy: δ ∼ Ν(δf,σf2), f=lumped facies parameter

label (from classification of segment)

Page 19: Wavelet Extraction: an essay in model selection and uncertainty … · 2007. 9. 20. · Noise estimation Noise ε≡(D-f(m)) ε= ε meas+ε model Often ε model > ε meas: we’re

Anisotropy issues

● Processing issues for AVO– Many potential amplitude effects at wider offset

● Absorption/scattering/spreading/acquisition footprints, etc.. etc.. etc

– Ch. 4.3 “Quantitative seismic interpretation”Avseth, Mukerji, Mavko.

Page 20: Wavelet Extraction: an essay in model selection and uncertainty … · 2007. 9. 20. · Noise estimation Noise ε≡(D-f(m)) ε= ε meas+ε model Often ε model > ε meas: we’re

Preprocessing: Impedance Blocking

● Based on segmentation of p-wave impedance (ρvp)

– Max Lik. methods O(N2), or

– Blended hierarchical stepwise segment/aggregate method (O(Nlog(k))

– ref: D.M.Hawkins, Comp. Stat. & Data Analysis 37(3), 2001

● Increases speed

1.640 ×1041.645 ×1041.650 ×1041.655 ×1041.660 ×1042.15

2.20

2.25

2.30

2.35

2.40

2.45

Page 21: Wavelet Extraction: an essay in model selection and uncertainty … · 2007. 9. 20. · Noise estimation Noise ε≡(D-f(m)) ε= ε meas+ε model Often ε model > ε meas: we’re

Optimisation of Bayesian Posterior● m={mwavelet,mcheckshot,mregistration,mpetrophysics}● Maximise ∏ ∝ exp(-χ2/2 )

χ2 = Σ t,stacks,wells

(w(m)*Reff – S)2 /σs2 "good synthetic"

+ (d+1) Σ stacks

log(σs) "noise normalisation”

+ Σ intervals,wells

(vint(m)-<vint>)2 /σv2 ”prior: interval velocities c.f. sonic logs”

+ (m-<m>)TCp-1 (m-<m>) "prior on checkshots, wavelet coeffs”

+ wavelet timing/phase prior "e.g. constant phase"

Page 22: Wavelet Extraction: an essay in model selection and uncertainty … · 2007. 9. 20. · Noise estimation Noise ε≡(D-f(m)) ε= ε meas+ε model Often ε model > ε meas: we’re

Optimisation, Hessians, Approximate uncertainties

0 0.5 1 1.5 2 2.5 30

0.5

1

1.5

2

2.5

3

log(posterior) surface

Maximum aposteriori estimates

Quadratic approximation to uncertainties-(1) direct from F.D. Hessian or-(2) from Bayes' update formula- C=(Cp-1+XTCD

-1 X)-1 parameter 1

parameter 2

Gauss Newton optimiser

•Gauss-Newton, BFGS methods: see e.g. Nocedal & Wright "Numerical Optimization"•O(d2) x O(forward model cost) x N(models)•Typical dimensionalities: d=10-100, n = 100-1000

Page 23: Wavelet Extraction: an essay in model selection and uncertainty … · 2007. 9. 20. · Noise estimation Noise ε≡(D-f(m)) ε= ε meas+ε model Often ε model > ε meas: we’re

Optimisation outputs

● Maximum aposteriori parameters – SU wavelets, ascii time-to-depth files,

visualization dumps etc.

● Covariance diagonals (parameter uncertainties)● Posterior model probabilities (wavelet span,

checkshot choice etc)● stochastic wavelets from the posterior

Page 24: Wavelet Extraction: an essay in model selection and uncertainty … · 2007. 9. 20. · Noise estimation Noise ε≡(D-f(m)) ε= ε meas+ε model Often ε model > ε meas: we’re

Generic aspects of well-ties

Statistically insignificant

Statistically insignificant

Bayes ML waveletTypical commercial extraction

realisations

Page 25: Wavelet Extraction: an essay in model selection and uncertainty … · 2007. 9. 20. · Noise estimation Noise ε≡(D-f(m)) ε= ε meas+ε model Often ε model > ε meas: we’re

Joint straight-hole & sidetrack

StraightSidetracktvdtvd

Tight checkshotuncertainties atstrong amplitudes

No logs: checkshot

uncertaintiesgo to prior

Looser checkshotswith weakeramplitudes

Page 26: Wavelet Extraction: an essay in model selection and uncertainty … · 2007. 9. 20. · Noise estimation Noise ε≡(D-f(m)) ε= ε meas+ε model Often ε model > ε meas: we’re

Interval sonic velocities constrained to within 5% of log average

Straight hole detail with logs

Page 27: Wavelet Extraction: an essay in model selection and uncertainty … · 2007. 9. 20. · Noise estimation Noise ε≡(D-f(m)) ε= ε meas+ε model Often ε model > ε meas: we’re

Parameter uncertainty cross sections

4.8 5.0 5.2 5.4 5.6 5.8 6.01786

1787

1788

1789

1790

1791

1792

−6 ×104 −4 ×104 −2 ×104 0 2 ×104 4 ×104 6 ×104 8 ×1041786.5

1787.0

1787.5

1788.0

1788.5

1789.0

1789.5

-log(

post

erio

r)

checkshot knots

-log(

post

erio

r)

repulsion to keep interval velocities sanewavelet coefficients

One standard deviation

Page 28: Wavelet Extraction: an essay in model selection and uncertainty … · 2007. 9. 20. · Noise estimation Noise ε≡(D-f(m)) ε= ε meas+ε model Often ε model > ε meas: we’re

General effect of allowing more freedom

● Wavelets sharpen, noise reduces

Page 29: Wavelet Extraction: an essay in model selection and uncertainty … · 2007. 9. 20. · Noise estimation Noise ε≡(D-f(m)) ε= ε meas+ε model Often ε model > ε meas: we’re

Cross well issues: Wavelets and Ties

Wavelets from various extractions

Synthetics/traces from joint extraction

Page 30: Wavelet Extraction: an essay in model selection and uncertainty … · 2007. 9. 20. · Noise estimation Noise ε≡(D-f(m)) ε= ε meas+ε model Often ε model > ε meas: we’re

Relations to Cross-validation

● Leave-one-out pseudo Bayes factor

● Has asymptotics of Akaike information criterion– Log(P(D|k)) += d (c.f. Bayes info. crit. = (d/2)log(nD) – (less severe on richer models)

B12(cross−val ) = p(d i |d{ j≠i} ,M 1 )p(d i |d{ j≠i} ,M 2 )

i=1

nD

Page 31: Wavelet Extraction: an essay in model selection and uncertainty … · 2007. 9. 20. · Noise estimation Noise ε≡(D-f(m)) ε= ε meas+ε model Often ε model > ε meas: we’re

3 Model Selection examples

Page 32: Wavelet Extraction: an essay in model selection and uncertainty … · 2007. 9. 20. · Noise estimation Noise ε≡(D-f(m)) ε= ε meas+ε model Often ε model > ε meas: we’re

(1) Simple Wavelet-length choice

Page 33: Wavelet Extraction: an essay in model selection and uncertainty … · 2007. 9. 20. · Noise estimation Noise ε≡(D-f(m)) ε= ε meas+ε model Often ε model > ε meas: we’re

Absolute significance tests● MAP Wavelet length not shortest model● MAP noise level exceptional on null-hypothesis

test– Perform ensemble of extractions on fake seismic

data with matched bandwidth and univariatestatistics:

P(σnull)

σtrueσnull

Page 34: Wavelet Extraction: an essay in model selection and uncertainty … · 2007. 9. 20. · Noise estimation Noise ε≡(D-f(m)) ε= ε meas+ε model Often ε model > ε meas: we’re

(2) Checkshot choice (25 models)

Cha

ngep

oint

cas

cade

Page 35: Wavelet Extraction: an essay in model selection and uncertainty … · 2007. 9. 20. · Noise estimation Noise ε≡(D-f(m)) ε= ε meas+ε model Often ε model > ε meas: we’re

Richest model

Page 36: Wavelet Extraction: an essay in model selection and uncertainty … · 2007. 9. 20. · Noise estimation Noise ε≡(D-f(m)) ε= ε meas+ε model Often ε model > ε meas: we’re

Max. aposteriori

model

Page 37: Wavelet Extraction: an essay in model selection and uncertainty … · 2007. 9. 20. · Noise estimation Noise ε≡(D-f(m)) ε= ε meas+ε model Often ε model > ε meas: we’re

Model probabilities and noise

Page 38: Wavelet Extraction: an essay in model selection and uncertainty … · 2007. 9. 20. · Noise estimation Noise ε≡(D-f(m)) ε= ε meas+ε model Often ε model > ε meas: we’re

(3) Naïve facies-driven anisotropy

choice

δ~0.15

Page 39: Wavelet Extraction: an essay in model selection and uncertainty … · 2007. 9. 20. · Noise estimation Noise ε≡(D-f(m)) ε= ε meas+ε model Often ε model > ε meas: we’re

Conclusions● Model selection is desirable in nearly all inverse problems

● Marginal model likelihoods can be tricky– Careful construction of prior– Efficient (differentiable) forward models– Efficient optimisers

● Bayesian model selection is quite “opinionated”. Very Occamist: severe on overparameterised models

● Selection is a doable problem for wavelet extraction. Produces– Often compact wavelets– Simplified checkshots– Significant potential for missing-data (petrophysics) problems

Page 40: Wavelet Extraction: an essay in model selection and uncertainty … · 2007. 9. 20. · Noise estimation Noise ε≡(D-f(m)) ε= ε meas+ε model Often ε model > ε meas: we’re

O me, the word 'choose!' I may neither choose whom I would nor refuse whom I dislike.

Portia, The Merchant of Venice.

More info: ● www.google.com/search?q=James+Gunning+CSIRO

– “Wavelet extractor” open source code (java), demos, papers.

– Part of “Delivery” suite (Bayesian seismic inversion)

● Computers and Geosciences 32 (2006)

Page 41: Wavelet Extraction: an essay in model selection and uncertainty … · 2007. 9. 20. · Noise estimation Noise ε≡(D-f(m)) ε= ε meas+ε model Often ε model > ε meas: we’re

Data-positioning uncertainty (1)

● y(m) = f(m) an unusual regression problem● Simple toy problem; fitting a line y=a+bx:

– y ~ X.m + e, Jeffrey's prior on e ~ N(0,σ)– Priors:

● P(σ ) ~ 1/ σ● P(m|σ) ~ N(0,g σ2(XTX)-1) ("Zellner")

– Posterior marginal

∏ = ∫ L(y|m,σ)P(m|σ)P(σ)dmdσ ~ (1+g(1-R2))-(n-1)/2

– Where R2 is usual coeff. of determination● For two samples of “random” y

– B12 ~ ((1+g(1-R12))/ (1+g(1-R2

2)))-(n-1)/2

Page 42: Wavelet Extraction: an essay in model selection and uncertainty … · 2007. 9. 20. · Noise estimation Noise ε≡(D-f(m)) ε= ε meas+ε model Often ε model > ε meas: we’re

Data-positioning uncertainty (2)

● Fluctuation in B12 for problem with● y=1+x+(25% fixed noise) + (5% fluctuations)

20 40 60 80 100

0.75

1.25

1.5

1.75

2

2.25

-2 -1 0 1 2 3

20

40

60

80

100

log10(BF12)

frequ

ency