Sampling Bayesian Networks

Post on 01-Feb-2016

31 views 0 download

description

Sampling Bayesian Networks. ICS 276 2007. Answering BN Queries. Probability of Evidence P(e) ? NP-hard Conditional Prob. P(x i |e) ? NP-hard MPE x = arg max P(x|e) ? NP-hard MAP y = arg max P(y|e), y  x ? NP PP -hard Approximating P(e) or P(x i |e) within : NP-hard. - PowerPoint PPT Presentation

Transcript of Sampling Bayesian Networks

1

Sampling Bayesian Networks

ICS 276

2007

2

Answering BN Queries

Probability of Evidence P(e) ? NP-hard

Conditional Prob. P(xi|e) ? NP-hard MPE x = arg max P(x|e) ? NP-hard MAP y = arg max P(y|e), y x ?

NPPP-hard Approximating P(e) or P(xi|e) within : NP-hard

3

Approximation Algorithms

Structural Approximations Eliminate some dependencies

Remove edges Mini-Bucket Approach

Search Approach for optimization tasks: MPE, MAP

SamplingGenerate random samples and compute values of interest from samples, not original network

4

Algorithm Tree

5

Sampling

Input: Bayesian network with set of nodes X Sample = a tuple with assigned values

s=(X1=x1,X2=x2,… ,Xk=xk)

Tuple may include all variables (except evidence) or a subset

Sampling schemas dictate how to generate samples (tuples)

Ideally, samples are distributed according to P(X|E)

6

Sampling Fundamentals

dxXxggE )()(

Given a set of variables X = {X1, X2, … Xn} that represent joint probability distribution (X) and some function g(X), we can compute expected value of g(X) :

7

Sampling From (X)

Given independent, identically distributed samples (iid) S1, S2, …ST from (X), it follows from Strong Law of Large Numbers:

T

t

tSgT

g1

)(1

},...,,{ 21tn

ttt xxxS A sample St is an instantiation:

8

Sampling Basics

Given random variable X, D(X)={0, 1} Given P(X) = {0.3, 0.7} Generate k samples: 0,1,1,1,0,1,1,0,1 Approximate P’(X):

}6.0,4.0{)('

6.010

6

#

)1(#)1('

4.010

4

#

)0(#)0('

XP

samples

XsamplesXP

samples

XsamplesXP

9

How to draw a sample ?

Given random variable X, D(X)={0, 1}

Given P(X) = {0.3, 0.7} Sample X P (X)

draw random number r [0, 1] If (r < 0.3) then set X=0 Else set X=1

Can generalize for any domain size

10

Sampling in BN

Same Idea: generate a set of samples T

Estimate P(Xi|E) from samples Challenge: X is a vector and P(X) is a

huge distribution represented by BN Need to know:

How to generate a new sample ? How many samples T do we need ? How to estimate P(E=e) and P(Xi|e) ?

11

Sampling Algorithms

Forward Sampling Gibbs Sampling (MCMC)

Blocking Rao-Blackwellised

Likelihood Weighting Importance Sampling Sequential Monte-Carlo (Particle

Filtering) in Dynamic Bayesian Networks

12

Forward Sampling

Forward Sampling Case with No evidence E={} Case with Evidence E=e # samples N and Error Bounds

13

Forward Sampling No Evidence(Henrion 1988)

Input: Bayesian networkX= {X1,…,XN}, N- #nodes, T - # samples

Output: T samples Process nodes in topological order – first process the

ancestors of a node, then the node itself:

1. For t = 0 to T2. For i = 0 to N3. Xi sample xi

t from P(xi | pai)

14

Sampling A Value

What does it mean to sample xit from P(Xi | pai) ?

Assume D(Xi)={0,1} Assume P(Xi | pai) = (0.3, 0.7)

Draw a random number r from [0,1]If r falls in [0,0.3], set Xi = 0

If r falls in [0.3,1], set Xi=1

0 10.3 r

15

Forward sampling (example)

X1

X4

X2X3

)( 1xP

)|( 12 xxP

),|( 324 xxxP

)|( 13 xxP

)|( from Sample .4

)|( from Sample .3

)|( from Sample .2

)( from Sample .1

sample generate//

Evidence No

3,244

133

122

11

xxxPx

xxPx

xxPx

xPx

k

16

Forward Sampling-Answering Queries

Task: given T samples {S1,S2,…,Sn} estimate P(Xi = xi) :

T

xXsamplesxXP ii

ii

)(#)(

Basically, count the proportion of samples where Xi = xi

17

Forward Sampling w/ Evidence

Input: Bayesian networkX= {X1,…,XN}, N- #nodesE – evidence, T - # samples

Output: T samples consistent with E1. For t=1 to T2. For i=1 to N3. Xi sample xi

t from P(xi | pai)

4. If Xi in E and Xi xi, reject sample: 5. i = 1 and go to step 2

18

Forward sampling (example)

X1

X4

X2X3

)( 1xP

)|( 12 xxP

),|( 324 xxxP

)|( 13 xxP

)|( from Sample 5.

otherwise 1, fromstart and

samplereject 0, If .4

)|( from Sample .3

)|( from Sample .2

)( from Sample .1

sample generate//

0 :Evidence

3,244

3

133

122

11

3

xxxPx

x

xxPx

xxPx

xPx

k

X

19

Forward Sampling: Illustration

Let Y be a subset of evidence nodes s.t. Y=u

20

Forward Sampling –How many samples?

Theorem: Let s(y) be the estimate of P(y) resulting from a randomly chosen sample set S with T samples. Then, to guarantee relative error at most with probability at least 1- it is enough to have:

1

)( 2

yP

cT

Derived from Chebychev’s Bound.

222])(,)([)( NeyPyPyPP

21

Forward Sampling - How many samples?

Theorem: Let s(y) be the estimate of P(y) resulting from a randomly chosen sample set S with T samples. Then, to guarantee relative error at most with probability at least 1- it is enough to have:

2

ln)(

42

yP

T

Derived from Hoeffding’s Bound (full proof is given in Koller).

222])(,)([)( NeyPyPyPP

22

Forward Sampling:Performance

Advantages: P(xi | pa(xi)) is readily available Samples are independent !Drawbacks: If evidence E is rare (P(e) is low), then

we will reject most of the samples! Since P(y) in estimate of T is unknown,

must estimate P(y) from samples themselves!

If P(e) is small, T will become very big!

23

Problem: Evidence

Forward Sampling High Rejection Rate

Fix evidence values Gibbs sampling (MCMC) Likelihood Weighting Importance Sampling

24

Forward Sampling Bibliography

{henrion88} M. Henrion, "Propagating uncertainty in Bayesian networks by probabilistic logic sampling”, Uncertainty in AI, pp. = 149-163,1988

25

Gibbs Sampling

Markov Chain Monte Carlo method(Gelfand and Smith, 1990, Smith and Roberts, 1993, Tierney, 1994)

Samples are dependent, form Markov Chain Sample from P’(X|e) which converges to P(X|e) Guaranteed to converge when all P > 0 Methods to improve convergence:

Blocking Rao-Blackwellised

Error Bounds Lag-t autocovariance Multiple Chains, Chebyshev’s Inequality

26

Gibbs Sampling (Pearl, 1988)

A sample t[1,2,…],is an instantiation of all variables in the network:

Sampling process Fix values of observed variables e Instantiate node values in sample x0 at

random Generate samples x1,x2,…xT from P(x|e) Compute posteriors from samples

},...,,{ 2211tNN

ttt xXxXxXx

27

Ordered Gibbs Sampler

Generate sample xt+1 from xt :

In short, for i=1 to N:),\|(

),,...,,|(

...

),,...,,|(

),,...,,|(

1

11

12

11

1

31

121

22

3211

11

exxxPxX

exxxxPxX

exxxxPxX

exxxxPxX

it

itii

tN

ttN

tNN

tN

ttt

tN

ttt

from sampled

ProcessAllVariablesIn SomeOrder

28

Gibbs Sampling (cont’d)(Pearl, 1988)

ij chX

jjiiit

i paxPpaxPxxxP )|()|()\|(

:)\|( )\|( :Important it

iit

i xmarkovxPxxxP

iX )()( jj chX

jiii pachpaXM

Markov blanket:

nodesother all oft independen is parents), their andchildren, (parents,

Given

iX

blanketMarkov

29

Ordered Gibbs Sampling Algorithm

Input: X, EOutput: T samples {xt } Fix evidence E Generate samples from P(X | E)1. For t = 1 to T (compute samples)2. For i = 1 to N (loop through variables)3. Xi sample xi

t from P(Xi | markovt \ Xi)

Answering Queries

Query: P(xi |e) = ? Method 1: count #of samples where Xi=xi:

Method 2: average probability (mixture estimator):

n

t it

iiii XmarkovxXPT

xXP1

)\|(1

)(

T

xXsamplesxXP ii

ii

)(#)(

31

Gibbs Sampling Example - BN

X = {X1,X2,…,X9}

E = {X9}X1

X4

X8 X5 X2

X3

X9 X7

X6

32

Gibbs Sampling Example - BN

X1 = x10

X6 = x60

X2 = x20

X7 = x70

X3 = x30

X8 = x80

X4 = x40

X5 = x50

X1

X4

X8 X5 X2

X3

X9 X7

X6

33

Gibbs Sampling Example - BN

X1 P (X1 |X0

2,…,X0

8 ,X9}

E = {X9}X1

X4

X8 X5 X2

X3

X9 X7

X6

34

Gibbs Sampling Example - BN

X2 P(X2 |X1

1,…,X0

8 ,X9}

E = {X9}

X1

X4

X8 X5 X2

X3

X9 X7

X6

35

Gibbs Sampling: Illustration

40

Gibbs Sampling: Burn-In

We want to sample from P(X | E) But…starting point is random Solution: throw away first K samples Known As “Burn-In” What is K ? Hard to tell. Use intuition. Alternatives: sample first sample valkues

from approximate P(x|e) (for example, run IBP first)

41

Gibbs Sampling: Convergence

Converge to stationary distribution * :

* = * Pwhere P is a transition kernel

pij = P(Xi Xj) Guaranteed to converge iff chain is :

irreducible aperiodic ergodic ( i,j pij > 0)

42

Irreducible

A Markov chain (or its probability transition matrix) is said to be irreducible if it is possible to reach every state from every other state (not necessarily in one step).

In other words, i,j k : P(k)ij > 0 where

k is the number of steps taken to get to state j from state i.

43

Aperiodic

Define d(i) = g.c.d.{n > 0 | it is possible to go from i to i in n steps}. Here, g.c.d. means the greatest common divisor of the integers in the set. If d(i)=1 for i, then chain is aperiodic.

44

Ergodicity

A recurrent state is a state to which the chain returns with probability 1:

n P(n)ij =

Recurrent, aperiodic states are ergodic.

Note: an extra condition for ergodicity is that expected recurrence time is finite. This holds for recurrent states in a finite state chain.

46

Gibbs Convergence

Gibbs convergence is generally guaranteed as long as all probabilities are positive!

Intuition for ergodicity requirement: if nodes X and Y are correlated s.t. X=0 Y=0, then: once we sample and assign X=0, then we are forced to

assign Y=0; once we sample and assign Y=0, then we are forced to

assign X=0;

we will never be able to change their values again!

Another problem: it can take a very long time to converge!

47

Gibbs Sampling: Performance

+Advantage: guaranteed to converge to P(X|E)-Disadvantage: convergence may be slow

Problems:

Samples are dependent ! Statistical variance is too big in high-

dimensional problems

48

Gibbs: Speeding Convergence

Objectives:1. Reduce dependence between

samples (autocorrelation) Skip samples Randomize Variable Sampling Order

2. Reduce variance Blocking Gibbs Sampling Rao-Blackwellisation

49

Skipping Samples

Pick only every k-th sample (Gayer, 1992)

Can reduce dependence between samples !

Increases variance ! Waists samples !

50

Randomized Variable Order

Random Scan Gibbs SamplerPick each next variable Xi for update at

random with probability pi , i pi = 1.

(In the simplest case, pi are distributed uniformly.)

In some instances, reduces variance (MacEachern, Peruggia, 1999 “Subsampling the Gibbs Sampler: Variance

Reduction”)

51

Blocking

Sample several variables together, as a block Example: Given three variables X,Y,Z, with

domains of size 2, group Y and Z together to form a variable W={Y,Z} with domain size 4. Then, given sample (xt,yt,zt), compute next sample:

Xt+1 P(yt,zt)=P(wt)(yt+1,zt+1)=Wt+1 P(xt+1)

+ Can improve convergence greatly when two variables are strongly correlated!

- Domain of the block variable grows exponentially with the #variables in a block!

52

Blocking Gibbs Sampling

Jensen, Kong, Kjaerulff, 1993“Blocking Gibbs Sampling Very Large

Probabilistic Expert Systems” Select a set of subsets:

E1, E2, E3, …, Ek s.t. Ei X

Ui Ei = X

Ai = X \ Ei

Sample P(Ei | Ai)

53

Rao-Blackwellisation

Do not sample all variables! Sample a subset! Example: Given three variables

X,Y,Z, sample only X and Y, sum out Z. Given sample (xt,yt), compute next sample:

Xt+1 P(yt)yt+1 P(xt+1)

54

Rao-Blackwell Theorem

Bottom line: reducing number of variables in a sample reduce variance!

55

Blocking vs. Rao-Blackwellisation

Standard Gibbs:P(x|y,z),P(y|x,z),P(z|x,y) (1)

Blocking:P(x|y,z), P(y,z|x) (2)

Rao-Blackwellised:P(x|y), P(y|x) (3)

Var3 < Var2 < Var1 [Liu, Wong, Kong, 1994Covariance structure of the Gibbs

sampler…]

X Y

Z

56

Rao-Blackwellised Gibbs: Cutset Sampling

Select C X (possibly cycle-cutset), |C| = m

Fix evidence E Initialize nodes with random values:

For i=1 to m: ci to Ci = c 0i

For t=1 to n , generate samples:For i=1 to m:Ci=ci

t+1 P(ci|c1 t+1,…,ci-1

t+1,ci+1t,…,cm

t ,e)

57

Cutset Sampling

Select a subset C={C1,…,CK} X A sample t[1,2,…],is an instantiation of C:

Sampling process Fix values of observed variables e Generate sample c0 at random Generate samples c1,c2,…cT from P(c|e) Compute posteriors from samples

},...,,{ 2211tKK

ttt cCcCcCc

58

Cutset SamplingGenerating Samples

Generate sample ct+1 from ct :

In short, for i=1 to K:),\|(

),,...,,|(

...

),,...,,|(

),,...,,|(

1

11

12

11

1

31

121

22

3211

11

ecccPcC

eccccPcC

eccccPcC

eccccPcC

it

itii

tK

ttK

tKK

tK

ttt

tK

ttt

from sampled

59

Rao-Blackwellised Gibbs: Cutset Sampling

How to compute P(ci|c t\ci, e) ?

Compute joint P(ci, c t\ci, e) for each ci

D(Ci) Then normalize:

P(ci| c t\ci , e) = P(ci, c

t\ci , e) Computation efficiency depends

on choice of C

60

Rao-Blackwellised Gibbs: Cutset Sampling

How to choose C ? Special case: C is cycle-cutset, O(N) General case: apply Bucket Tree Elimination (BTE), O(exp(w)) where w is the induced width of the network when nodes in C are observed.

Pick C wisely so as to minimize w notion of w-cutset

61

w-cutset Sampling

C=w-cutset of the network, a set of nodes such that when C and E are instantiated, the adjusted induced width of the network is w

Complexity of exact inference: bounded by w !

cycle-cutset is a special case

62

Cutset Sampling-Answering Queries

Query: ci C, P(ci |e)=? same as Gibbs: Special case of w-cutset

computed while generating sample t

compute after generating sample t

T

t it

ii ecccPT

|e)(cP1

),\|(1

Query: P(xi |e) = ?

T

t

tii ,ecxP

T|e)(xP

1)|(

1

63

Cutset Sampling Example

}{ 05

02

0 ,xxc

X1

X7

X5 X4

X2

X9 X8

X3

E=x9

X6

64

Cutset Sampling Example

),(

),(1)(

),(

),(

}{

905

''2

905

'2

9052

12

905

''2

905

'2

05

02

0

,xxxBTE

,xxxBTE,x| xxP x

,xxxBTE

,xxxBTE

,xx c

X1

X7

X6 X5 X4

X2

X9 X8

X3

Sample a new value for X2 :

65

Cutset Sampling Example

},{

),(

),(1)(

),(

),(

)(

},{

15

12

1

9''

512

9'5

12

9125

15

9''

512

9'5

12

9052

12

05

02

0

xxc

,xxxBTE

,xxxBTE,x| xxP x

,xxxBTE

,xxxBTE

,x| xxP x

xxc

X1

X7

X6 X5 X4

X2

X9 X8

X3

Sample a new value for X5 :

66

Cutset Sampling Example

)(

)(

)(

3

1)|(

)(

)(

)(

9252

9152

9052

92

9252

32

9152

22

9052

12

,x| xxP

,x| xxP

,x| xxP

xxP

,x| xxP x

,x| xxP x

,x| xxP x

X1

X7

X6 X5 X4

X2

X9 X8

X3

Query P(x2|e) for sampling node X2 :Sample 1

Sample 2

Sample 3

67

Cutset Sampling Example

),,|(

),,|(

),,|(

3

1)|(

),,|(},{

),,|(},{

),,|(},{

935

323

925

223

915

123

93

935

323

35

32

3

925

223

25

22

2

915

123

15

12

1

xxxxP

xxxxP

xxxxP

xxP

xxxxPxxc

xxxxPxxc

xxxxPxxc

X1

X7

X6 X5 X4

X2

X9 X8

X3

Query P(x3 |e) for non-sampled node X3 :

68

Gibbs: Error Bounds

Objectives: Estimate needed number of samples T Estimate error Methodology: 1 chain use lag-k autocovariance

Estimate T M chains standard sampling

variance Estimate Error

69

Gibbs: lag-k autocovariance

12

1

1

1

)(2)0(1

)(

))((1

)(

)\|(1

)|(

)\|(

i

kN

t kii

itN

t ii

it

ii

iT

PVar

PPPPT

k

xxxPT

exPP

xxxPP

Lag-k autocovariance

70

Gibbs: lag-k autocovariance

12

1

)(2)0(1

)(

i

iT

PVar

)(

)0(ˆPVar

T

Estimate Monte Carlo variance:

Here, is the smallest positive integer satisfying:

1)12()2( Effective chain size:

In absense of autocovariance: TT ˆ

71

Gibbs: Multiple Chains

Generate M chains of size K Each chain produces independent estimate Pm:

M

i mPM

P1

1

)\|(1

)|(1 i

tK

t iim xxxPK

exPP

Treat Pm as independent random variables.

Estimate P(xi|e) as average of Pm (xi|e) :

72

Gibbs: Multiple Chains

{ Pm } are independent random variables

Therefore:

M

St

PMPM

PPM

SPVar

M

M

mm

M

m m

1,2/

1

22

2

1

2

1

1

1

1)(

73

Geman&Geman1984

Geman, S. & Geman D., 1984. Stocahstic relaxation, Gibbs distributions, and the Bayesian restoration of images. IEEE Trans.Pat.Anal.Mach.Intel. 6, 721-41. Introduce Gibbs sampling; Place the idea of Gibbs sampling in a general

setting in which the collection of variables is structured in a graphical model and each variable has a neighborhood corresponding to a local region of the graphical structure. Geman and Geman use the Gibbs distribution to define the joint distribution on this structured set of variables.

74

Tanner&Wong 1987

Tanner and Wong (1987) Data-augmentation Convergence Results

75

Pearl1988

Pearl,1988. Probabilistic Reasoning in Intelligent Systems, Morgan-Kaufmann. In the case of Bayesian networks, the

neighborhoods correspond to the Markov blanket of a variable and the joint distribution is defined by the factorization of the network.

76

Gelfand&Smith,1990

Gelfand, A.E. and Smith, A.F.M., 1990. Sampling-based approaches to calculating marginal densities. J. Am.Statist. Assoc. 85, 398-409. Show variance reduction in using

mixture estimator for posterior marginals.

77

Neal, 1992

R. M. Neal, 1992. Connectionist learning of belief networks, Artifical Intelligence, v. 56, pp. 71-118. Stochastic simulation in Noisy-Or networks.

78

CPCS54 Test Results

MSE vs. #samples (left) and time (right)

Ergodic, |X| = 54, D(Xi) = 2, |C| = 15, |E| = 4

Exact Time = 30 sec using Cutset Conditioning

CPCS54, n=54, |C|=15, |E|=3

0

0.001

0.002

0.003

0.004

0 1000 2000 3000 4000 5000

# samples

Cutset Gibbs

CPCS54, n=54, |C|=15, |E|=3

0

0.0002

0.0004

0.0006

0.0008

0 5 10 15 20 25

Time(sec)

Cutset Gibbs

79

CPCS179 Test Results

MSE vs. #samples (left) and time (right) Non-Ergodic (1 deterministic CPT entry)|X| = 179, |C| = 8, 2<= D(Xi)<=4, |E| = 35

Exact Time = 122 sec using Loop-Cutset Conditioning

CPCS179, n=179, |C|=8, |E|=35

0

0.002

0.004

0.006

0.008

0.01

0.012

100 500 1000 2000 3000 4000

# samples

Cutset Gibbs

CPCS179, n=179, |C|=8, |E|=35

0

0.002

0.004

0.006

0.008

0.01

0.012

0 20 40 60 80

Time(sec)

Cutset Gibbs

80

CPCS360b Test Results

MSE vs. #samples (left) and time (right)

Ergodic, |X| = 360, D(Xi)=2, |C| = 21, |E| = 36

Exact Time > 60 min using Cutset Conditioning

Exact Values obtained via Bucket Elimination

CPCS360b, n=360, |C|=21, |E|=36

0

0.00004

0.00008

0.00012

0.00016

0 200 400 600 800 1000

# samples

Cutset Gibbs

CPCS360b, n=360, |C|=21, |E|=36

0

0.00004

0.00008

0.00012

0.00016

1 2 3 5 10 20 30 40 50 60

Time(sec)

Cutset Gibbs

81

Random Networks

MSE vs. #samples (left) and time (right)

|X| = 100, D(Xi) =2,|C| = 13, |E| = 15-20

Exact Time = 30 sec using Cutset Conditioning

RANDOM, n=100, |C|=13, |E|=15-20

0

0.0005

0.001

0.0015

0.002

0.0025

0.003

0.0035

0 200 400 600 800 1000 1200

# samples

Cutset Gibbs

RANDOM, n=100, |C|=13, |E|=15-20

0

0.0002

0.0004

0.0006

0.0008

0.001

0 1 2 3 4 5 6 7 8 9 10 11

Time(sec)

Cutset Gibbs

82

Coding Networks

MSE vs. time (right)

Non-Ergodic, |X| = 100, D(Xi)=2, |C| = 13-16, |E| = 50

Sample Ergodic Subspace U={U1, U2,…Uk}

Exact Time = 50 sec using Cutset Conditioning

x1 x2 x3 x4

u1 u2 u3 u4

p1 p2 p3 p4

y4y3y2y1

Coding Networks, n=100, |C|=12-14

0.001

0.01

0.1

0 10 20 30 40 50 60

Time(sec)

IBP Gibbs Cutset

83

Non-Ergodic Hailfinder

MSE vs. #samples (left) and time (right)

Non-Ergodic, |X| = 56, |C| = 5, 2 <=D(Xi) <=11, |E| = 0

Exact Time = 2 sec using Loop-Cutset Conditioning

HailFinder, n=56, |C|=5, |E|=1

0.0001

0.001

0.01

0.1

1

1 2 3 4 5 6 7 8 9 10

Time(sec)

Cutset Gibbs

HailFinder, n=56, |C|=5, |E|=1

0.0001

0.001

0.01

0.1

0 500 1000 1500

# samples

Cutset Gibbs

84

Non-Ergodic CPCS360b - MSE

cpcs360b, N=360, |E|=[20-34], w*=20, MSE

0

0.000005

0.00001

0.000015

0.00002

0.000025

0 200 400 600 800 1000 1200 1400 1600

Time (sec)

Gibbs

IBP

|C|=26,fw=3

|C|=48,fw=2

MSE vs. Time

Non-Ergodic, |X| = 360, |C| = 26, D(Xi)=2

Exact Time = 50 min using BTE

85

Non-Ergodic CPCS360b - MaxErr

cpcs360b, N=360, |E|=[20-34], MaxErr

0

0.001

0.002

0.003

0.004

0.005

0.006

0.007

0 200 400 600 800 1000 1200 1400 1600

Time (sec)

Gibbs

IBP

|C|=26,fw=3

|C|=48,fw=2

86

Likelihood Weighting(Fung and Chang, 1990; Shachter and Peot, 1990)

Works well for likely evidence!

“Clamping” evidence+forward sampling+ weighing samples by evidence likelihood

87

Likelihood Weighting

e e e e e

e e e e

Sample in topological order over X !

xi P(Xi|pai)

P(Xi|pai) is a look-up in CPT!

88

Likelihood Weighting Outline

EndFor

)|(

)|(

)(

Do ForEach

1

)(

)()(

)(

iit

ii

iitt

ii

i

i

t

paXPxX

Else

paePww

eX

EXIf

XX

w

89

Likelihood Weighting

T

t

t

ti

T

t

t

ii

w

xxw

eP

exPexP

1

)(

)(

1

)( ),(

)(ˆ),(ˆ

)|(ˆ

Estimate Posterior Marginals:

1)|( since )|()(

)( )()(

)()( jj

j

tjjt

tt paeQpaeP

xQ

xPw

90

Likelihood Weighting

Converges to exact posterior marginals

Generates Samples Fast Sampling distribution is close to

prior (especially if E Leaf Nodes) Increasing sampling varianceConvergence may be slowMany samples with P(x(t))=0 rejected

93

Likelihood Convergence(Chebychev’s Inequality)

Assume P(X=x|e) has mean and variance 2

Chebychev:

1

ˆ

22

2

22

2

cN

N

cP

=P(x|e) is unknown => obtain it from samples!

94

Error Bound Derivation

2

2

2

2

2

22

2

2

2

2

/

)(:Numbers Large of Law theFrom

4

1)1(

/

1, ),' with samples#(k )|'(

then , If:

1,1

:'

T

TXP

TXVar

TT

PPPPP

TpqPPP

pqT

pqPVarxX

T

KexPP

XPkCorollary

kk

kXPsChebychev

K is a Bernoulli random variable

95

Likelihood Convergence 2

Assume P(X=x|e) has mean and variance 2

Zero-One Estimation Theory (Karp et al.,1989):

=P(x|e) is unknown => obtain it from samples!

2

ln4

2T

96

Local Variance Bound (LVB)(Dagum&Luby, 1994)

Let be LVB of a binary valued network:

]1,1[))(|(

],[))(|()),(|(

],1,0[,,1

1,max

luxpaxP

ulxpaxPxpaxP

ululu

l

l

u

OR

97

LVB Estimate(Pradhan,Dagum,1996)

Using the LVB, the Zero-One Estimator can be re-written:

2

ln4

2

k

T

98

Importance Sampling Idea

In general, it is hard to sample from target distribution P(X|E)

Generate samples from sampling (proposal) distribution Q(X)

Weigh each sample against P(X|E)

dxxfxQ

xPdxxffI t )(

)(

)()()(

99

Importance Sampling Variants

Importance sampling: forward, non-adaptive Nodes sampled in topological order Sampling distribution (for non-instantiated nodes)

equal to the prior conditionals

Importance sampling: forward, adaptive Nodes sampled in topological order Sampling distribution adapted according to

average importance weights obtained in previous samples [Cheng,Druzdzel2000]

100

AIS-BN

The most efficient variant of importance sampling to-date is AIS-BN – Adaptive Importance Sampling for Bayesian networks.

Jian Cheng and Marek J. Druzdzel. AIS-BN: An adaptive importance sampling algorithm for evidential reasoning in large Bayesian networks. Journal of Artificial Intelligence Research (JAIR), 13:155-188, 2000.

101

Importance vs. Gibbs

T

tt

tt

t

T

t

t

T

t

xq

xpxf

Tf

exqx

xfT

xf

expexp

expx

1

1

)(

)()(1

)|(:Importance

)(1

)(

)|()|(~)|(~ :Gibbs

wt