Más contenido relacionado
foxPSL Poster at AAAI 2015 Spring Symposium on KRR
- 1. eXtended
PSL
:
FoxPSL
language
● Describe
individuals
and
classes:
class Person: anna, bob
class Party: demo, repub
individuals: ufo
● Describe
predicates
and
classes
of
arguments:
predicate: retired(_)
predicate: teaches(Professor, Course, Student)
● Certain
predicates
have
special
constraints:
predicate [Symmetric]: friends(Person, Person)
predicate [Functional]: isChildOf(Person, Party)
predicate [PartialFunctional]: votes(Person, Party)
● Describe
facts
and
automa8cally
infer
classes
of
individuals:
fact [truthValue = 0.8]: friends(anna, carl)
fact [0.9]: !votes(anna, repub)
● Describe
rules:
rule [weight=0.7]:
votes(A,P) & friends(A,B) => votes(B,P)
● Describe
constraints
(rules
with
infinite
weight):
rule: dead(P) => !working(P)
● Class-‐aware
existen8al
quan8fier:
rule: professor(P) =>
EXISTS [C,S] teaches(P,C,S) | retired(P)
● Par8ally
grounded
rules:
rule [3]: rich(P) => votes(P, repub)
● Experimental
FoxPSL:
set
variables,
unions,
iterators
on
sets
predicate: indep(Var, Var, Set{0,3}[Var])
rule: indep(X,Y,{}) => !causes(X,Y)
rule: !indep(X,Y,W) & indep(X,Y,{W,Z}) =>
EXISTS [W1 in W] causes (Z,W1) | …
rule: indep(X,Y,W) & FOREACH [Z strictSubsetOf W]
!indep(X,Y,Z) & …=> !causes(X,Y)
fact: !indep(x, y, {u, w})
Photo
credits
to:
Anonymous
(hHp://www.wallpapervortex.com/wallpaper-‐43783_fox_curious_fox.html#.VQI3HoF4pZk),
Alex
Mody
(hHp://www.alexmody.com/photo/red-‐fox-‐running-‐in-‐snow/),
Ivan
Kislov
(hHps://500px.com/photo/39137918/-‐by-‐ivan-‐kislov),
Dan
Busby
(hHp://danbusby.ca/gallery/index.php/Non-‐bird-‐Wild-‐Life/Mammals/20121218_Red-‐Fox_0072).
Optimized
PSL
:
Grounding
and
inference
• Op8mized
grounding
with
class
informa8on:
• Reduce
number
of
possible
groundings,
especially
existen8al
quan8fier
• Smart
implementa8on
of
constraints:
• Remove
symmetric
constraints
• Remove
trivial
func8onal
constraints
• Push
trivial
par8al
func8onal
constraints
into
nodes
• Lazy
inference:
do
not
send
same
message
twice
• Unless
internal
state
changed
enough
• Configurable
step
for
convergence
detec8on:
• Extra
steps
vs.
convergence
overhead
Sara
Magliacane
,
VU
Philip
Stutz,
UZH
Paul
Groth,
VU
Abraham
Bernstein,
UZH
FOXPSL
Code:
hHps://github.com/uzh/fox
Contact:
s.magliacane@vu.nl
• Distributed
ADMM
for
grounded
PSL
s.o.t.a.:
ACO,
implemented
on
GraphLab
• Evalua8on:
4
synthe8c
datasets
of
increasing
size
on
a
social
network
of
voters
(550K
to
2.1M
voters)
• SLURM
cluster:
4
nodes,
each
with
2x10
cores
and
128GB
RAM
• BeHer
solu8on
quality
• More
evalua8ons
in
the
paper
Motivation:
Probabilistic
Soft
Logic
(PSL)
• Template
language
for
hinge-‐loss
Markov
Random
Fields
• Soh
truth
values
in
[0,1],
e.g.
friends(anna,
bob)
=
0.8
• Weighted
Horn
rules
with
disjunc8ve
clauses
• MAP
is
a
constrained
convex
minimiza8on
problem
Fast
PSL
:
Performance
comparison
to
s.o.t.a.
Fast
Optimized
eXtended
Probabilistic
Soft
Logic
FoxPSL
in
a
nutshell
• First
end-‐to-‐end
distributed
PSL
implementa8on
• Based
on
distributed
graph
processing
system
Signal/Collect
• Alterna8ng
Direc8on
Method
of
Mul8pliers
for
MAP
inference
• Fast:
beats
state-‐of-‐the-‐art
ADMM
implementa8on
for
PSL
• Op8mized:
implements
op8miza8ons
in
grounding
and
inference
• eXtended:
provides
a
Domain
Specific
Language
extending
PSL:
• Class
system
with
automa8c
inference
of
classes
• Class-‐aware
existen8al
quan8fier
• Par8ally
grounded
rules
ACO
FoxPSL
Classes
Predicates
Rules
Knowledge
Grounded
Rules
Constraints Bipartite
Function
/Variable
Graph
Inferences
Consensus
Optimization
Graph
Construction
Grounding
Implementation:
System
architecture
• Grounding:
for
each
rule,
subs8tute
all
possible
individuals
rule
[weight]
b1
∧
…
∧
bn
=>
h1
∨
…∨
hm
rule [3]: rich(P) => votes(P, repub)
3: rich(anna) => votes(anna, repub), …
• Graph
Construc8on:
convert
each
grounded
rule
to
a
MRF
poten8al
using
Lukasiewicz
operators
weight
*
max(
0,
b1
+
…
+
bn
-‐
n
+
1
-‐
h1
-‐
…-‐
hm)2
3 * max(0, rich(anna) - votes(anna, repub))2
• ADMM
Consensus
op8miza8on:
implemented
in
Signal
Collect
• Each
grounded
rule
(subproblem)
is
minimized
separately
• Consensus
nodes
enforce
agreement
among
subproblems