Lecture 8 - kmutt-inc

INC 551 Artificial
Intelligence
Lecture 8
Models of Uncertainty
Inference by Enumeration
Bayesian Belief Network Model
Causes -> Effect
Graph Structure shows dependency
Burglar Alarm Example
My house has a burglar alarm but sometimes it rings because
of an earthquake. My neighbors, John and Mary promise me
to call if they hear the alarm. However, their ears are not perfect.
One Way to Create BBN
Computing Probability
= 0.90x0.70x0.001x0.999x0.998 = 0.00062
BBN Construction
There are many ways to construct BBN of
a problem because the events depend on
each other (related).
Therefore, it depends on the order of events
that you consider.
The most simple is the most compact.
Not compact
Inference Problem
Find
P( X i | E  e)
For example, find
P( Burglary | JohnCalls  true, MaryCalls  true)
Inference by Enumeration
P ( X , e)
P ( X | e) 
 P( X , e)    P( X , e, y )
P (e)
y
Note: let
1

P ( e)
α is called “Normalized Constant”
y are other events
P( Burglary | JohnCalls  true, MaryCalls  true)
(summation of all events)
Calculation Tree
Inefficient, Compute P(j|a)P(m|a) for every value of e
P(b | j , m)    P(b, j , m) 
((.7  .9  .95)  (.01 .05  .05))  .002  
 
  0.001
((.7  .9  .94)  (.01 .05  .06))  .998 
Next, we have to find P(~b|j,m) and find α = 1/P(j,m)
Approximate Inference
Idea: Count from real examples
We call this procedure “Sampling”
Sampling = get real examples from the world model
Sampling Example
Cloudy = มีเมฆ
Sprinkler = ละอองนำ้
(Cloudy , Sprinkler , Rain ,WetGrass) 
(T , ?, ?, ?)
(Cloudy , Sprinkler , Rain ,WetGrass) 
(T , ?, ?, ?)
(Cloudy , Sprinkler , Rain ,WetGrass) 
(T , F , ?, ?)
(Cloudy , Sprinkler , Rain ,WetGrass) 
(T , F , T , ?)
(Cloudy , Sprinkler , Rain ,WetGrass) 
(T , F , T , ?)
(Cloudy , Sprinkler , Rain ,WetGrass) 
(T , F , T , T )
1 Sample
Rejection Sampling
To find
P( X i | e)
Idea: Count only the sample that agree with e
Rejection Sampling
Drawback: There are not many samples that agree with e
From the example above, from 100 samples, only 27 are
Usable.
Likelihood Weighting
Idea: Generate only samples that are relevant with e
However, we must use “weighted sampling”
e.g. Find
P( Rain | Sprinkler  true,WetGrass  true)
Weighted Sampling
Fix sprinkler = TRUE
Wet Grass = TRUE
Sample from P(Cloudy)=0.5 , suppose we get “true”
Sprinkler already has value = true,
therefore we multiply with weight = 0.1
Sample from P(Rain)=0.8 , suppose we get “true”
WetGrass already has value = true,
therefore we multiply with weight = 0.99
Finally, we got a sample (t,t,t,t)
With weight = 0.099
Temporal Model (Time)
When the events are tagged with timestamp
Rain day1
Rain day 2
Rain day3
Each node is considered “state”
Markov Process
Let Xt = state
For Markov processes, Xt depends only on finite number
of previous xt
Hidden Markov Model (HMM)
Each state has observation, Et.
We cannot see “state”, but we see “observation”.