Knowledge Representation and Inference Models

Lifted First-Order Probabilistic Inference
Rodrigo de Salvo Braz
University of Illinois at
Urbana-Champaign
with
Eyal Amir and Dan Roth
1
Motivation

We want to be able to do inference with
Probabilistic First-order Logic






if epidemic(Disease) then sick(Person, Disease)
[0.2, 0.05]
if sick(Person, Disease) then hospital(Person)
[0.3, 0.01]
sick(bob, measles) or sick(bob, flu) 0.6
Expressiveness of logic
Robustness of probabilistic models
Goal: Probabilistic Inference at First-order level
(scalability one of main advantages)
Page 2
Current approaches - Propositionalization

Exact inference:










Knowledge-based construction (Breese, 1992)
Probabilistic Logic Programming (Ng & Subrahmanian, 1992)
Probabilistic Logic Programming (Ngo and Haddawy, 1995)
Probabilistic Relational Models (Friendman et al., 1999)
Relational Bayesian networks (Jaeger, 1997)
Bayesian Logic Programs (Kersting & DeRaedt, 2001)
Probabilistic Abduction (Poole, 1993)
MEBN (Laskey, 2004)
Markov Logic (Richardson & Domingos, 2004)
Sampling:


PRISM (Saito, 1995)
BLOG (Milch et al, 2005)
Page 3
Unexploited structure

f(epidemic(Disease1), epidemic(Disease2))
epidemic(flu)
…
epidemic(D1)
D1  D2
epidemic(measles)
epidemic(rubella)
propositionalized
epidemic(D2)
first-order
as in first-order theorem proving
Page 4
This Talk


Representation
Inference





Inversion Elimination (IE) (Poole, 2003)
Formalization of IE
Identification of conditions for IE
Counting Elimination
Experiment & Conclusions
Page 5
Representation
epidemic(measles)
…
…
sick(mary,measles)
…
sick(mary,flu)
…
…
…
hospital(mary)
epidemic(flu)
sick(bob,measles)
…
…
…
Page 6
hospital(bob)
sick(bob,flu)
Representation
epidemic(measles)
…
…
sick(mary,measles)
…
…
sick(mary,flu)
epidemic(flu)
…
…
sick(bob,measles)
…
f(sick(mary,measles), epidemic(measles))
hospital(mary)
…
…
Page 7
hospital(bob)
sick(bob,flu)
Representation
epidemic(measles)
…
…
sick(mary,measles)
…
sick(mary,flu)
…
…
…
hospital(mary)
epidemic(flu)
sick(bob,measles)
…
…
…
Page 8
hospital(bob)
sick(bob,flu)
Representation - Lots of Redundancy!
epidemic(measles)
…
…
sick(mary,measles)
…
sick(mary,flu)
…
…
…
hospital(mary)
epidemic(flu)
sick(bob,measles)
…
…
…
Page 9
hospital(bob)
sick(bob,flu)
Representing structure
epidemic(measles)
…
epidemic(flu)
…
sick(mary,measles)
…
…
sick(mary,flu)
Poole (2003)
named these
parfactors, for
“parameterized
factors”
…
sick(bob,measles)
epidemic(D)
sick(P,D)
Page 10
…
sick(bob,flu)
Parfactor
epidemic(Disease)
sick(Person,Disease)
8 Person, Disease f(sick(Person,Disease), epidemic(Disease))
Page 11
Parfactor
epidemic(Disease)
Person  mary,
Disease  flu
sick(Person,Disease)
8 Person, Disease f(sick(Person,Disease), epidemic(Disease)),
Person  mary, Disease  flu
Page 12
Representing structure

epidemic(D)



sick(P,D)
hospital(P)
More intutive
More compact
Represents structure explicitly
Generalization of graphical
models
Atoms represent
a set of random
variables
Page 13
Making use of structure in Inference



Task: given a condition, what is the marginal
probability of a set of random variables?
P(sick(bob, measles) | sick(mary,measles)) = ?
Three approaches



plain propositionalization
dynamic construction (“smart” propositionalization)
lifted inference
Page 14
Inference - Plain Propositionalization



Instantiation of potential function for each
instantiation
Lots of redundant computation
Lots of unnecessary random variables
Page 15
Inference - Dynamic construction


Instantiation of potential function for relevant parts
P(hospital(mary) | sick(mary, measles)) = ?
epidemic(measles)
epidemic(flu)
…
epidemic(rubella)
sick(mary,measles)
sick(mary, flu)
…
sick(mary, rubella)
hospital(mary)
Page 16
Inference - Dynamic construction


Instantiation of potential function for relevant parts
P(hospital(mary) | sick(mary, measles)) = ?
epidemic(measles)
epidemic(flu)
…
epidemic(rubella)
sick(mary,measles)
sick(mary, flu)
…
sick(mary, rubella)
Much
redundancy
still
hospital(mary)
Page 17
Inference - Dynamic construction

Most common approach for
exact First-order Probabilistic inference:








Knowledge-based construction (Breese, 1992)
Probabilistic Logic Programming (Ng & Subrahmanian, 1992)
Probabilistic Logic Programming (Ngo and Haddawy, 1995)
Probabilistic Relational Models (Friendman et al., 1999)
Relational Bayesian networks (Jaeger, 1997)
Bayesian Logic Programs (Kersting & DeRaedt, 2001)
MEBN (Laskey, 2004)
Markov Logic (Richardson & Domingos, 2004)
Page 18
Inference - Lifted inference



Inference on parameterized, or first-order, level;
Performs certain inference steps once for a class
of random variables;
Poole (2003) describes a generalized Variable
Elimination algorithm which we call Inversion
Elimination.
Page 19
Inference - Inversion Elimination (IE)
P(hospital(mary) | sick(mary, measles)) = ?
epidemic(D)
sick(mary, D)
hospital(mary)
Page 20
Inference - Inversion Elimination (IE)
P(hospital(mary) | sick(mary, measles)) = ?
epidemic(D)
sick(mary, D)
hospital(mary)
Page 21
=
Unification
Inference - Inversion Elimination (IE)
P(hospital(mary) | sick(mary, measles)) = ?
epidemic(measles)
epidemic(D)
D  measles
sick(mary,measles)
sick(mary, D)
hospital(mary)
Page 22
D  measles
Inference - Inversion Elimination (IE)
P(hospital(mary) | sick(mary, measles)) = ?
epidemic(measles)
=
sick(mary,measles)
epidemic(D)
D  measles
sick(mary, D)
hospital(mary)
Page 23
D  measles
Inference - Inversion Elimination (IE)
P(hospital(mary) | sick(mary, measles)) = ?
epidemic(measles)
epidemic(D)
D  measles
sick(mary,measles)
sick(mary, D)
hospital(mary)
Page 24
D  measles
Inference - Inversion Elimination (IE)
P(hospital(mary) | sick(mary, measles)) = ?
epidemic(D)
D  measles
sick(mary,measles)
sick(mary, D)
hospital(mary)
Page 25
D  measles
Inference - Inversion Elimination (IE)
P(hospital(mary) | sick(mary, measles)) = ?
epidemic(D)
D  measles
sick(mary, D)
hospital(mary)
Page 26
D  measles
Inference - Inversion Elimination (IE)
P(hospital(mary) | sick(mary, measles)) = ?
D  measles
sick(mary, D)
hospital(mary)
Page 27
D  measles
Inference - Inversion Elimination (IE)
P(hospital(mary) | sick(mary, measles)) = ?
hospital(mary)
Page 28
Inference - Inversion Elimination (IE)

Does not depend on domain size.
epidemic(measles)
sick(mary,measles)
…
epidemic(flu)
epidemic(D)
sick(mary, flu)
sick(mary, D)
hospital(mary)
hospital(mary)
Page 29
First contribution - Formalization of IE

Joint  f q f(Afq)

Example
X f1(p(X)) X,Y f2(p(X),q(X,Y))

Marginalization by eliminating class q(X,Y):
q(X,Y) X f1(p(X)) X,Y f2(p(X),q(X,Y))
= X f1(p(X)) q(X,Y) X,Y f2(p(X),q(X,Y))
Page 30
First contribution - Formalization of IE
q(X,Y) X,Y f2(p(X),q(X,Y))
= q(x1,y1)...q(xn,ym)
f2(p(x1),q(x1,y1))...f2(p(xn),q(xn,ym))
= (q(x1,y1) f2(p(x1),q(x1,y1)))...
(q(xn,ym) f2(p(xn),q(xn,ym)))
= X,Y q(X,Y) f2(p(X),q(X,Y))
= X,Y f3(p(X)) = X f4(p(X))
Page 31
First contribution - Formalization of IE
q(X,Y) X,Y f2(p(X),q(X,Y))
= q(x1,y1)...q(xn,ym)
f2(p(x1),q(x1,y1))...f2(p(xn),q(xn,ym))
= (q(x1,y1) f2(p(x1),q(x1,y1)))...
(q(xn,ym) f2(p(xn),q(xn,ym)))
= X,Y q(X,Y) f2(p(X),q(X,Y))
= X,Y f3(p(X)) = X f4(p(X))
Page 32
First contribution - Formalization of IE

By formalizing the problem of Inversion
Elimination, we determined conditions for
its application:


Eliminated atom must contain all logical
variables in parfactors involved;
Eliminated atom instances must not occur
together in the same instances of parfactor.
Page 33
Inversion Elimination - Limitations - I

Eliminated atom must contain all logical variables
in parfactors involved.
epidemic(D)
sick(P,D)
Page 34
Inversion Elimination - Limitations - I

Eliminated atom must contain all logical variables
in parfactors involved.
epidemic(D)
epidemic(D)
sick(P,D)
Ok, contains both
P and D
Page 35
Inversion Elimination - Limitations - I

Eliminated atom must contain all logical variables
in parfactors involved.
Not Ok, missing P
epidemic(D)
sick(P,D)
sick(P,D)
Page 36
Inversion Elimination - Limitations - I

Eliminated atom must contain all logical variables
in parfactors involved.
No atom can
be
eliminated
p(X,Y)
q(Y,Z)
Page 37
Inversion Elimination - Limitations - I

Marginalization by eliminating class p(X):
p(X) X,Y f2(p(X),q(X,Y))
= p(x1)...p(xn) Y f2(p(x1),q(x1,Y))...
Y f2(p(xn),q(xn,Y))
= (p(x1) Y f2(p(x1),q(x1,Y)))...
(p(xn) Y f2(p(xn),q(xn,Y)))
= X p(X) Y f2(p(X),q(X,Y))
Page 38
Inversion Elimination - Limitations - II

Requires eliminated RVs to occur in separate
instances of parfactor
epidemic(D)
D  measles
sick(mary, D)
Inversion
Elimination
Ok
epidemic(flu)
…
epidemic(rubella)
sick(mary, flu)
…
sick(mary, rubella)
Page 39
Inversion Elimination - Limitations - II

Requires eliminated RVs to occur in separate
instances of parfactor
epidemic(D1)
Inversion
Elimination
Not Ok
D1  D2
epidemic(D2)
epidemic(flu)
…
epidemic(measles)
epidemic(rubella)
Page 40
Inversion Elimination - Limitations - II
e(D) D1D2 f(e(D1),e(D2))
= e(d1)...e(dn) f(e(d1), e(d2)) ...
f(e(dn-1),e(dn))
= e(d1) f(e(d1), e(d2))...
e(dn) f(e(dn-1),e(dn))
Page 41
Second Contribution - Counting Elimination
e(D) D1D2 f(e(D1),e(D2))
= e(D) f(0,0)#(0,0) in e(D),D1D2
f(0,1)#(0,1) in e(D),D1D2
f(1,0)#(1,0) in e(D),D1D2
f(1,1)#(1,1) in e(D),D1D2
= e(D) v f(v)#v in e(D),D1D2
|e(D)|
=(
i=0
|e(D)|
i
) v f(v)#v in e(D),D1D2 (from i)
Page 42
Second Contribution - Counting Elimination


Does depend on domain size, but exponentially
less so than brute force;
More general than Inversion Elimination, but still
has conditions of its own;



inter-atom logical variables must be in a dominance
ordering
p(X,Y), q(Y,X), r (Y) OK, Y dominates X
p(X), q(X,Y), r (Y)
not OK, no dominance
Page 43
A Simple Experiment
Page 44
Conclusions

Contributions:




Formalization and Identification of conditions for
Inverse Elimination (Poole);
Counting Elimination;
Much faster than propositionalization in certain
cases;
Basis for probabilistic theorem proving on the
First-order level, as it is already the case with
regular logic.
Page 45
Future Directions


Approximate inference
Parameterized queries


Function symbols





“what is the most likely D such that sick(mary, D)?”
sick(motherOf(mary), D)
sequence(S, [g, c, t])
Equality
MPE, MAP
Summer project at Cyc
Page 46
The End
Page 47