Lecture 05 Reasoning Under Uncertainty
Lecture 05 Reasoning Under Uncertainty
International University
School of Computer Science and Engineering
Temperature: Weather:
W P
T P
sun 0.6
hot 0.5
rain 0.1
cold 0.5
fog 0.3
meteor 0.0
Probability Distributions
Unobserved random variables have distributions
Shorthand notation:
T P W P
hot 0.5 sun 0.6
cold 0.5 rain 0.1
fog 0.3
meteor 0.0
T W P
Must obey: hot sun 0.4
hot rain 0.1
cold sun 0.2
cold rain 0.3
X Y P
+x +y 0.2
P(+x) ?
+x -y 0.3
-x +y 0.4
-x -y 0.1
P(-y OR +x) ?
Marginal Distributions
Marginal distributions are sub-tables which eliminate variables
Marginalization (summing out): Combine collapsed rows by adding
T P
hot 0.5
T W P
cold 0.5
hot sun 0.4
hot rain 0.1
cold sun 0.2 W P
cold rain 0.3 sun 0.6
rain 0.4
Quiz: Marginal Distributions
X P
+x
X Y P
-x
+x +y 0.2
+x -y 0.3
-x +y 0.4 Y P
-x -y 0.1 +y
-y
Conditional Probabilities
A simple relation between joint and conditional probabilities
In fact, this is taken as the definition of a conditional probability
P(a,b) W = sun W = rain P(T)
T W P
hot sun 0.4
hot rain 0.1
cold sun 0.2
cold rain 0.3
Conditional Distributions
Conditional distributions are probability distributions over
some variables given fixed values of others
Conditional Distributions
Joint Distribution
W P
T W P
sun
hot sun 0.4
rain
hot rain 0.1
cold sun 0.2
W P cold rain 0.3
sun
rain
Quiz: Conditional Probabilities
P(+x | +y) ?
X Y P
+x +y 0.2 P(-x | +y) ?
+x -y 0.3
-x +y 0.4
-x -y 0.1
P(-y | +x) ?
Y = +y Y = -y P(X)
X = +x 0.2 0.3 0.5
X = -x 0.4 0.1 0.5
P(Y) 0.6 0.4 1
Normalization Trick
A trick to get a whole conditional distribution at once:
Select the joint probabilities matching the evidence
Normalize the selection (make it sum to one)
T W P
hot sun 0.4 T R P T P
hot rain 0.1 hot rain 0.1 hot 0.25
Select Normalize
cold sun 0.2 cold rain 0.3 cold 0.75
cold rain 0.3
Why does this work? Sum of selection is P(evidence)! (P(r), here)
To Normalize
(Dictionary) To bring or restore to a normal condition
Example 1 Example 2
W P W P T W P T W P
Normalize
hot sun 20 Normalize hot sun 0.4
sun 0.2 sun 0.4
hot rain 5 hot rain 0.1
rain 0.3 Z = 0.5 rain 0.6 Z = 50
cold sun 10 cold sun 0.2
cold rain 15 cold rain 0.3
Probabilistic Models
A probabilistic model is a joint distribution over a set of
variables
Step 1: Select the Step 2: Sum out H to get joint Step 3: Normalize
entries consistent of Query and evidence
with the evidence
Inference by Enumeration
S T W P
P(W)?
summer hot sun 0.30
summer hot rain 0.05
summer cold sun 0.10
P(W| winter)? summer cold rain 0.05
winter hot sun 0.10
winter hot rain 0.05
winter cold sun 0.15
P(W| winter, hot)? winter cold rain 0.20
Inference by Enumeration
Obvious problems:
Worst-case time complexity O(dn)
Space complexity O(dn) to store the joint distribution
Solution
Better techniques
Better representation
Simplifying assumptions
Bayesian Network
Bayes’ Rule
Dividing, we get:
Example:
D W P D W P
wet sun 0.1 wet sun 0.08
R P
dry sun 0.9 dry sun 0.72
sun 0.8
wet rain 0.7 wet rain 0.14
rain 0.2
dry rain 0.3 dry rain 0.06
The Chain Rule
More generally, can always write any joint distribution as an incremental product of
conditional distributions
This says that their joint distribution factors into a product two
simpler distributions
Another form:
We write:
T P
hot 0.5
cold 0.5
T W P T W P
hot sun 0.4 hot sun 0.3
hot rain 0.1 hot rain 0.2
cold sun 0.2 cold sun 0.3
cold rain 0.3 cold rain 0.2
W P
sun 0.6
rain 0.4 34
Example: Independence
N fair, independent coin flips:
|Y| parameters
F1 F2 Fn
+
Step 2: sum to get probability of evidence
Features: The attributes used to make the ham / 99 MILLION EMAIL ADDRESSES
FOR ONLY $99
spam decision
Words: FREE! Ok, Iknow this is blatantly OT but I'm
beginning to go insane. Had an old Dell
Text Patterns: $dd, CAPS Dimension XPS sitting in the corner and
Non-text: SenderInContacts decided to put it to use, I know it was
… working pre being stuck in the corner,
but when I plugged it in, hit the power
nothing happened.
A Spam Filter
Dear Sir.
Naïve Bayes spam filter
First, I must solicit your confidence in this
transaction, this is by virture of its nature
Data: as being utterly confidencial and top
secret. …
Collection of emails, labeled
spam or ham
TO BE REMOVED FROM FUTURE
Note: someone has to hand MAILINGS, SIMPLY REPLY TO THIS
label all this data! MESSAGE AND PUT "REMOVE" IN THE
Split into training, SUBJECT.
validation, test sets 99 MILLION EMAIL ADDRESSES
FOR ONLY $99
Classifiers
Ok, Iknow this is blatantly OT but I'm
Learn on the training set beginning to go insane. Had an old Dell
(Tune it on a validation set) Dimension XPS sitting in the corner and
Test it on new emails decided to put it to use, I know it was
working pre being stuck in the corner, but
when I plugged it in, hit the power nothing
happened.
Naïve Bayes for Text
Bag-of-words Naïve Bayes:
Features: Wi is the word at position i
As before: predict label conditioned on feature variables (spam vs. ham)
As before: assume features are conditionally independent given label
New: each Wi is identically distributed Word at position
i, not ith word in
the dictionary!
Generative model: