OSL : Online Structure Learning using Background Knowledge - - PowerPoint PPT Presentation

osl online structure learning using background knowledge
SMART_READER_LITE
LIVE PREVIEW

OSL : Online Structure Learning using Background Knowledge - - PowerPoint PPT Presentation

OSL : Online Structure Learning using Background Knowledge Axiomatization Evangelos Michelioudakis 1 , Anastasios Skarlatidis 1 , Georgios Paliouras 1 and Alexander Artikis 2 , 1 1 Institute of Informatics and Telecommunications, NCSR


slide-1
SLIDE 1

OSLα: Online Structure Learning using Background Knowledge Axiomatization

Evangelos Michelioudakis1, Anastasios Skarlatidis1, Georgios Paliouras1 and Alexander Artikis2,1

1Institute of Informatics and Telecommunications, NCSR “Demokritos” 2Department of Maritime Studies, University of Piraeus

September 20, 2016

slide-2
SLIDE 2

Motivation

◮ Targets:

◮ Learning in temporal domains ◮ Handle uncertainty and complex relational structure ◮ Handle large (streaming) training data

◮ Approach:

◮ Markov Logic Networks, Event Calculus (MLN

− EC)

◮ Online structure learning (OSLα)

◮ Starting point: Online Structure Learning (OSL) algorithm

Online strategy for updating the model × Cannot handle a search space having large domain of constants × Does not exploit background knowledge × Does not support first-order logic functions

Evangelos Michelioudakis OSLα: Online Structure Learning using Background Knowledge Axiomatization

1/18

slide-3
SLIDE 3

Running Example: Activity Recognition

◮ Recognize human activities in multimedia content ◮ Video frames are annotated by humans

Individual Activities Complex Activities

340 enter(id0) 340 walking(id0) 340 coord(id0)=(20.88, −11.90) 340 walking(id1) 340 coord(id1)=(22.88, −14.80) · · · · · · 345 inactive(id0) 345 coord(id1)=(32.74, −5.24) 345 exit(id1) 340 moving(id0, id1)

Evangelos Michelioudakis OSLα: Online Structure Learning using Background Knowledge Axiomatization

2/18

slide-4
SLIDE 4

MLN − EC: Probabilistic Event Calculus based on MLNs

INPUT ◮ TRANSFORMATION ◮ INFERENCE ◮ OUTPUT Compact Knowledge Base Composite Event Definitions Event Calculus Axioms Simple, Derived Event Stream Recognised Composite Events Markov Logic Networks Evangelos Michelioudakis OSLα: Online Structure Learning using Background Knowledge Axiomatization

3/18

slide-5
SLIDE 5

OSLα: Online Structure Learning using Background Knowledge Axiomatizaiton

Learnt Hypothesis Ht: 0.51 HoldsAt(move(id1, id2), t+1) ⇐ HappensAt(walking(id1), t)∧ HappensAt(walking(id2), t) MLN − EC Axioms: HoldsAt(f, t+1) ⇐ InitiatedAt(f, t) HoldsAt(f, t+1) ⇐ HoldsAt(f, t) ∧ ¬TerminatedAt(f, t) ¬HoldsAt(f, t+1) ⇐ TerminatedAt(f, t) ¬HoldsAt(f, t+1) ⇐ ¬HoldsAt(f, t) ∧ ¬InitiatedAt(f, t)

OSLα

Micro-Batch Dt HappensAt(walking(ID1), 99) HappensAt(walking(ID2), 99) OrientationMove(ID1, ID2, 99) Close(ID1, ID2, 34, 99) Next(99, 100) HoldsAt(move(ID1, ID2), 100) . . .

. . .

Data Stream/Training Examples Evangelos Michelioudakis OSLα: Online Structure Learning using Background Knowledge Axiomatization

4/18

slide-6
SLIDE 6

OSLα: Online Structure Learning using Background Knowledge Axiomatizaiton

Learnt Hypothesis Ht: 0.51 HoldsAt(move(id1, id2), t+1) ⇐ HappensAt(walking(id1), t)∧ HappensAt(walking(id2), t) MLN − EC Axioms: HoldsAt(f, t+1) ⇐ InitiatedAt(f, t) HoldsAt(f, t+1) ⇐ HoldsAt(f, t) ∧ ¬TerminatedAt(f, t) ¬HoldsAt(f, t+1) ⇐ TerminatedAt(f, t) ¬HoldsAt(f, t+1) ⇐ ¬HoldsAt(f, t) ∧ ¬InitiatedAt(f, t)

OSLα

Micro-Batch Dt HappensAt(walking(ID1), 99) HappensAt(walking(ID2), 99) OrientationMove(ID1, ID2, 99) Close(ID1, ID2, 34, 99) Next(99, 100) HoldsAt(move(ID1, ID2), 100) . . .

. . .

Data Stream/Training Examples

MLN − EC Axioms: HoldsAt(f, t+1) ⇐ InitiatedAt(f, t) HoldsAt(f, t+1) ⇐ HoldsAt(f, t) ∧ ¬TerminatedAt(f, t) ¬HoldsAt(f, t+1) ⇐ TerminatedAt(f, t) ¬HoldsAt(f, t+1) ⇐ ¬HoldsAt(f, t) ∧ ¬InitiatedAt(f, t)

Evangelos Michelioudakis OSLα: Online Structure Learning using Background Knowledge Axiomatization

4/18

slide-7
SLIDE 7

OSLα: Online Structure Learning using Background Knowledge Axiomatizaiton

Learnt Hypothesis Ht: 0.51 HoldsAt(move(id1, id2), t+1) ⇐ HappensAt(walking(id1), t)∧ HappensAt(walking(id2), t) MLN − EC Axioms: HoldsAt(f, t+1) ⇐ InitiatedAt(f, t) HoldsAt(f, t+1) ⇐ HoldsAt(f, t) ∧ ¬TerminatedAt(f, t) ¬HoldsAt(f, t+1) ⇐ TerminatedAt(f, t) ¬HoldsAt(f, t+1) ⇐ ¬HoldsAt(f, t) ∧ ¬InitiatedAt(f, t)

OSLα

Micro-Batch Dt HappensAt(walking(ID1), 99) HappensAt(walking(ID2), 99) OrientationMove(ID1, ID2, 99) Close(ID1, ID2, 34, 99) Next(99, 100) HoldsAt(move(ID1, ID2), 100) . . .

. . .

Data Stream/Training Examples Inference Evangelos Michelioudakis OSLα: Online Structure Learning using Background Knowledge Axiomatization

4/18

slide-8
SLIDE 8

OSLα: Online Structure Learning using Background Knowledge Axiomatizaiton

Learnt Hypothesis Ht: 0.51 HoldsAt(move(id1, id2), t+1) ⇐ HappensAt(walking(id1), t)∧ HappensAt(walking(id2), t) MLN − EC Axioms: HoldsAt(f, t+1) ⇐ InitiatedAt(f, t) HoldsAt(f, t+1) ⇐ HoldsAt(f, t) ∧ ¬TerminatedAt(f, t) ¬HoldsAt(f, t+1) ⇐ TerminatedAt(f, t) ¬HoldsAt(f, t+1) ⇐ ¬HoldsAt(f, t) ∧ ¬InitiatedAt(f, t)

OSLα

Micro-Batch Dt HappensAt(walking(ID1), 99) HappensAt(walking(ID2), 99) OrientationMove(ID1, ID2, 99) Close(ID1, ID2, 34, 99) Next(99, 100) HoldsAt(move(ID1, ID2), 100) . . .

. . .

Data Stream/Training Examples Inference Hypergraph Evangelos Michelioudakis OSLα: Online Structure Learning using Background Knowledge Axiomatization

4/18

slide-9
SLIDE 9

OSLα: Online Structure Learning using Background Knowledge Axiomatizaiton

Learnt Hypothesis Ht: 0.51 HoldsAt(move(id1, id2), t+1) ⇐ HappensAt(walking(id1), t)∧ HappensAt(walking(id2), t) MLN − EC Axioms: HoldsAt(f, t+1) ⇐ InitiatedAt(f, t) HoldsAt(f, t+1) ⇐ HoldsAt(f, t) ∧ ¬TerminatedAt(f, t) ¬HoldsAt(f, t+1) ⇐ TerminatedAt(f, t) ¬HoldsAt(f, t+1) ⇐ ¬HoldsAt(f, t) ∧ ¬InitiatedAt(f, t)

OSLα

Micro-Batch Dt HappensAt(walking(ID1), 99) HappensAt(walking(ID2), 99) OrientationMove(ID1, ID2, 99) Close(ID1, ID2, 34, 99) Next(99, 100) HoldsAt(move(ID1, ID2), 100) . . .

. . .

Data Stream/Training Examples Inference Hypergraph Paths to Clauses Clause Evaluation Evangelos Michelioudakis OSLα: Online Structure Learning using Background Knowledge Axiomatization

4/18

slide-10
SLIDE 10

OSLα: Online Structure Learning using Background Knowledge Axiomatizaiton

Learnt Hypothesis Ht: 0.51 HoldsAt(move(id1, id2), t+1) ⇐ HappensAt(walking(id1), t)∧ HappensAt(walking(id2), t) MLN − EC Axioms: HoldsAt(f, t+1) ⇐ InitiatedAt(f, t) HoldsAt(f, t+1) ⇐ HoldsAt(f, t) ∧ ¬TerminatedAt(f, t) ¬HoldsAt(f, t+1) ⇐ TerminatedAt(f, t) ¬HoldsAt(f, t+1) ⇐ ¬HoldsAt(f, t) ∧ ¬InitiatedAt(f, t)

OSLα

Micro-Batch Dt HappensAt(walking(ID1), 99) HappensAt(walking(ID2), 99) OrientationMove(ID1, ID2, 99) Close(ID1, ID2, 34, 99) Next(99, 100) HoldsAt(move(ID1, ID2), 100) . . .

. . .

Data Stream/Training Examples Inference Hypergraph Paths to Clauses Clause Evaluation Weight Learning Evangelos Michelioudakis OSLα: Online Structure Learning using Background Knowledge Axiomatization

4/18

slide-11
SLIDE 11

OSLα: Online Structure Learning using Background Knowledge Axiomatizaiton

Learnt Hypothesis Ht: 0.51 HoldsAt(move(id1, id2), t+1) ⇐ HappensAt(walking(id1), t)∧ HappensAt(walking(id2), t)

+

MLN − EC Axioms: HoldsAt(f, t+1) ⇐ InitiatedAt(f, t) HoldsAt(f, t+1) ⇐ HoldsAt(f, t) ∧ ¬TerminatedAt(f, t) ¬HoldsAt(f, t+1) ⇐ TerminatedAt(f, t) ¬HoldsAt(f, t+1) ⇐ ¬HoldsAt(f, t) ∧ ¬InitiatedAt(f, t)

OSLα

Micro-Batch Dt HappensAt(walking(ID1), 99) HappensAt(walking(ID2), 99) OrientationMove(ID1, ID2, 99) Close(ID1, ID2, 34, 99) Next(99, 100) HoldsAt(move(ID1, ID2), 100) . . . Micro-Batch Dt+1 HappensAt(exit(ID1), 200) HappensAt(walking(ID2), 200) ¬OrientationMove(ID1, ID2, 200) ¬Close(ID1, ID2, 34, 200) Next(200, 201) ¬HoldsAt(move(ID1, ID2), 201) . . .

. . . . . . . . .

Data Stream/Training Examples Inference Hypergraph Paths to Clauses Clause Evaluation Weight Learning Evangelos Michelioudakis OSLα: Online Structure Learning using Background Knowledge Axiomatization

4/18

slide-12
SLIDE 12

Reduced Hypergraph and Relational Pathfinding

WalkingID1 WalkingID2 99 100 ID1 ID2 MoveID1ID2 34 HappensAt HappensAt Close AUXWalking AUXWalking OrientationMove AUXMove Next HoldsAt

Evangelos Michelioudakis OSLα: Online Structure Learning using Background Knowledge Axiomatization

5/18

slide-13
SLIDE 13

Template Guided Search

Wrongly predicted atom: ¬HoldsAt(MoveID1ID2, 100) HoldsAt(f, t1) ⇐ InitiatedAt(f, t0) ∧ Next(t0, t1)

Evangelos Michelioudakis OSLα: Online Structure Learning using Background Knowledge Axiomatization

6/18

slide-14
SLIDE 14

Template Guided Search

Wrongly predicted atom: ¬HoldsAt(MoveID1ID2, 100) HoldsAt(f, t1) ⇐ InitiatedAt(f, t0) ∧ Next(t0, t1)

HoldsAt(MoveID1ID2, 100) ⇐ InitiatedAt(MoveID1ID2, t0) ∧ Next(t0, 100)

Evangelos Michelioudakis OSLα: Online Structure Learning using Background Knowledge Axiomatization

6/18

slide-15
SLIDE 15

Template Guided Search

Wrongly predicted atom: ¬HoldsAt(MoveID1ID2, 100) HoldsAt(f, t1) ⇐ InitiatedAt(f, t0) ∧ Next(t0, t1)

HoldsAt(MoveID1ID2, 100) ⇐ InitiatedAt(MoveID1ID2, t0) ∧ Next(t0, 100) InitiatedAt(MoveID1ID2, 99)

Evangelos Michelioudakis OSLα: Online Structure Learning using Background Knowledge Axiomatization

6/18

slide-16
SLIDE 16

Hypergraph and Relational Pathfinding

yP

t =

  • ¬HoldsAt(MoveID1ID2, 100)
  • =
  • InitiatedAt(MoveID1ID2, 99)
  • {InitiatedAt(MoveID1ID2, 99),

WalkingID1 ID1 ID2 MoveID1ID2 34 HappensAt HappensAt Close AUXWalking AUXWalking OrientationMove AUXMove 99 WalkingID2 Evangelos Michelioudakis OSLα: Online Structure Learning using Background Knowledge Axiomatization

7/18

slide-17
SLIDE 17

Hypergraph and Relational Pathfinding

yP

t =

  • ¬HoldsAt(MoveID1ID2, 100)
  • =
  • InitiatedAt(MoveID1ID2, 99)
  • {InitiatedAt(MoveID1ID2, 99),

HappensAt(WalkingID1, 99),

WalkingID1 ID1 ID2 MoveID1ID2 34 HappensAt HappensAt Close AUXWalking AUXWalking OrientationMove AUXMove 99 WalkingID2 Evangelos Michelioudakis OSLα: Online Structure Learning using Background Knowledge Axiomatization

8/18

slide-18
SLIDE 18

Hypergraph and Relational Pathfinding

yP

t =

  • ¬HoldsAt(MoveID1ID2, 100)
  • =
  • InitiatedAt(MoveID1ID2, 99)
  • {InitiatedAt(MoveID1ID2, 99),

HappensAt(WalkingID1, 99), HappensAt(WalkingID2, 99),

WalkingID1 ID1 ID2 MoveID1ID2 34 HappensAt HappensAt Close AUXWalking AUXWalking OrientationMove AUXMove 99 WalkingID2 Evangelos Michelioudakis OSLα: Online Structure Learning using Background Knowledge Axiomatization

9/18

slide-19
SLIDE 19

Hypergraph and Relational Pathfinding

yP

t =

  • ¬HoldsAt(MoveID1ID2, 100)
  • =
  • InitiatedAt(MoveID1ID2, 99)
  • {InitiatedAt(MoveID1ID2, 99),

HappensAt(WalkingID1, 99), HappensAt(WalkingID2, 99), AUXwalking(WalkingID1, ID1),

WalkingID1 ID1 ID2 MoveID1ID2 34 HappensAt HappensAt Close AUXWalking AUXWalking OrientationMove AUXMove 99 WalkingID2 Evangelos Michelioudakis OSLα: Online Structure Learning using Background Knowledge Axiomatization

10/18

slide-20
SLIDE 20

Hypergraph and Relational Pathfinding

yP

t =

  • ¬HoldsAt(MoveID1ID2, 100)
  • =
  • InitiatedAt(MoveID1ID2, 99)
  • {InitiatedAt(MoveID1ID2, 99),

HappensAt(WalkingID1, 99), HappensAt(WalkingID2, 99), AUXwalking(WalkingID1, ID1), AUXwalking(WalkingID2, ID2)

WalkingID1 ID1 ID2 MoveID1ID2 34 HappensAt HappensAt Close AUXWalking AUXWalking OrientationMove AUXMove 99 WalkingID2 Evangelos Michelioudakis OSLα: Online Structure Learning using Background Knowledge Axiomatization

11/18

slide-21
SLIDE 21

Hypergraph and Relational Pathfinding

yP

t =

  • ¬HoldsAt(MoveID1ID2, 100)
  • =
  • InitiatedAt(MoveID1ID2, 99)
  • {InitiatedAt(MoveID1ID2, 99),

HappensAt(WalkingID1, 99), HappensAt(WalkingID2, 99), AUXwalking(WalkingID1, ID1), AUXwalking(WalkingID2, ID2), AUXmove(MoveID1ID2, ID1, ID2)}

WalkingID1 ID1 ID2 MoveID1ID2 34 HappensAt HappensAt Close AUXWalking AUXWalking OrientationMove AUXMove 99 WalkingID2 Evangelos Michelioudakis OSLα: Online Structure Learning using Background Knowledge Axiomatization

12/18

slide-22
SLIDE 22

Clause Creation, Clause Evaluation and Weight Learning

◮ Generalize each path into a definite clause:

InitiatedAt(move(id1, id2), t) ⇐ HappensAt(walking(id1), t)∧ HappensAt(walking(id2), t)

◮ Clause Evaluation:

◮ Keep clauses whose coverage of the annotation is significantly greater

than that of the clauses already learnt.

◮ Weight Learning using AdaGrad:

◮ Extended clauses inherit initially the weights of their ancestors ◮ Optimize the weights of all clauses Evangelos Michelioudakis OSLα: Online Structure Learning using Background Knowledge Axiomatization

13/18

slide-23
SLIDE 23

Experimental Setup

◮ Activity recognition using the CAVIAR dataset

◮ 28 surveillance videos

◮ Learn target concepts for meet and move CEs ◮ 19 sequences of SDEs and CE annotations

◮ The total length of the extracted sequences is 12869 frames

◮ 10-fold cross-validation ◮ Implemented on LoMRF1

◮ Open-source implementation of Markov Logic Networks 1http://github.com/anskarl/LoMRF Evangelos Michelioudakis OSLα: Online Structure Learning using Background Knowledge Axiomatization

14/18

slide-24
SLIDE 24

OSLα Accuracy

Method meet move Precision Recall F1-score Precision Recall F1score ECcrisp 0.6868 0.8556 0.7620 0.9093 0.6390 0.7506 AdaGrad 0.7228 0.8547 0.7833 0.9172 0.6674 0.7726 MaxMargin 0.9189 0.8133 0.8629 0.8443 0.9410 0.8901 OSLα 0.8192 0.8509 0.8347 0.8056 0.7522 0.7780

Evangelos Michelioudakis OSLα: Online Structure Learning using Background Knowledge Axiomatization

15/18

slide-25
SLIDE 25

OSLα Runtimes

Method meet move training testing training testing OSLα 22m 49s 54s 1h 56m 2s 1m 6s OSL > 25h

  • Evangelos Michelioudakis

OSLα: Online Structure Learning using Background Knowledge Axiomatization

16/18

slide-26
SLIDE 26

Summary

Conclusions

◮ Probabilistic online structure learning (OSLα) based on MLNs

◮ Exploits background knowledge axiomatization (MLN

− EC)

◮ Considers both types of wrongly predicted atoms ◮ Supports a subset of first-order logic functions

Future Work

  • 1. Faster hypergraph search

◮ Heuristic or randomized (parallel) graph search (e.g., random walks)

  • 2. Learn hierarchical definitions and support negated literals
  • 3. Structure learning in the presence of unobserved data

Evangelos Michelioudakis OSLα: Online Structure Learning using Background Knowledge Axiomatization

17/18

slide-27
SLIDE 27

Any Questions?

slide-28
SLIDE 28

Appendix

Evangelos Michelioudakis OSLα: Online Structure Learning using Background Knowledge Axiomatization

19/18

slide-29
SLIDE 29

MAP Inference using Linear Programming

◮ State-of-the-art method for MAP inference in MLNs

Express Markov network as an optimization problem:

Markov Network Linear Programming max: 3y1+0.5z1+z2 st. y1+y2≥z1 1−y2≥z2, 1−y3≥z2 (1−y1)+(1−y2)≥1 (1−y1)+(1−y3)≥1 (1−y2)+(1−y3)≥1 3 HoldsAt(CEA, 5) 0.5 HoldsAt(CEA, 5) ∨ HoldsAt(CEB, 5) −1 HoldsAt(CEB, 5) ∨ HoldsAt(CEC, 5) ∞ ¬HoldsAt(CEA, 5) ∨ ¬HoldsAt(CEB, 5) ∞ ¬HoldsAt(CEA, 5) ∨ ¬HoldsAt(CEC, 5) ∞ ¬HoldsAt(CEB, 5) ∨ ¬HoldsAt(CEC, 5) ◮ Relax the variables domain to be the interval [0, 1] ◮ The solutions are usually non-integral

◮ Due to the NP-hardness of the problem ◮ Approximate integral solution using a rounding scheme Evangelos Michelioudakis OSLα: Online Structure Learning using Background Knowledge Axiomatization

20/18

slide-30
SLIDE 30

Max-Margin Weight Learning

◮ Maximize the ratio of the probability of the correct world y to the

closest incorrect world y: P(Y =y|X=x) P(Y = y|X=x)

  • y = argmax

¯ y∈Y\y

P(¯ y, x)

◮ By applying the conditional likelihood and taking the log:

log

  • 1/Z(x) exp(wT n(x, y))

1/Z(x) exp(wT n(x, ˆ y))

log

exp(wT n(x, y)) − log exp(wT n(x, ˆ

y))

wT n(x, y) − wT n(x, ˆ y) = γ(x, y; w) ⇒ γ(x, y; w) = wT n(x, y)− max

¯ y∈Y\ywT n(x, ¯

y)

Evangelos Michelioudakis OSLα: Online Structure Learning using Background Knowledge Axiomatization

21/18

slide-31
SLIDE 31

Online Weight Learning

Coordinate Dual Ascent update (CDA)

◮ Update the weight vector according to the prediction-based loss

(difference of the correct world yt and the predicted world yP

t ):

∆nPL

t

= nt(xt, yt) − nt(xt, yP

t )

wt+1 =t − 1 t wt + min

1

σt, ℓPL ||∆nPL

t

||2

2

  • ∆nPL

t ◮ CDA learning rate is controlled by the predictive quality

Adaptive Subgradient update (AdaGrad)

◮ Update the weight vector according to the subgradient of the

prediction-based loss ℓPL: gPL

t

= nt(xt, yP

t ) − nt(xt, yt) = −∆nt and Ht,i=δ+||g1:t,i||2

wt+1,i = sign

  • wt,i −

η Ht,i gt,i

  • wt,i −

η Ht,i gt,i

  • − λη

Ht,i

  • +

Evangelos Michelioudakis OSLα: Online Structure Learning using Background Knowledge Axiomatization

22/18

slide-32
SLIDE 32

AdaGrad Online Learner

◮ Prediction-based loss:

ℓPL =

ρ(yt, yP

t ) − wt, ∆nt

  • + =

ρ(yt, yP

t ) − wt, nt(xt, yt) − nt(xt, yP t )

  • +

ϑwtℓPL = nt(xt, yP

t ) − nt(xt, yt) = ∆nt ◮ Update rule:

Ht,i = δ+||g1:t,i||2 = δ +

  • t
  • j=1

(gj,i)2 wt+1,i = sign

  • wt,i −

η Ht,i gt,i

  • wt,i −

η Ht,i gt,i

  • − λη

Ht,i

  • +

Evangelos Michelioudakis OSLα: Online Structure Learning using Background Knowledge Axiomatization

23/18

slide-33
SLIDE 33

Template Predicate Elimination

InitiatedAt(move(id1, id2), t) ⇔

  • HappensAt(walking(id1), t) ∧

HappensAt(walking(id2), t) ∨

  • Close(id1, id2, 34, t)

Evangelos Michelioudakis OSLα: Online Structure Learning using Background Knowledge Axiomatization

24/18

slide-34
SLIDE 34

Template Predicate Elimination

InitiatedAt(move(id1, id2), t) ⇔

  • HappensAt(walking(id1), t) ∧

HappensAt(walking(id2), t) ∨

  • Close(id1, id2, 34, t)

HoldsAt(f, t+1) ⇐ InitiatedAt(f, t) ¬HoldsAt(f, t+1) ⇐ ¬HoldsAt(f, t) ∧ ¬InitiatedAt(f, t)

Evangelos Michelioudakis OSLα: Online Structure Learning using Background Knowledge Axiomatization

24/18

slide-35
SLIDE 35

Template Predicate Elimination

HoldsAt(move(id1, id2), t+1) ⇐

  • HappensAt(walking(id1), t) ∧

HappensAt(walking(id2), t) ∨

  • Close(id1, id2, 34, t)

¬HoldsAt(move(id1, id2), t+1) ⇐ ¬HoldsAt(move(id1, id2), t) ∧ ¬ HappensAt(walking(id1), t) ∧ HappensAt(walking(id2), t) ∨

  • Close(id1, id2, 34, t)

Evangelos Michelioudakis OSLα: Online Structure Learning using Background Knowledge Axiomatization

24/18

slide-36
SLIDE 36

CNF Example

Assume that we have the following formulas:

HoldsAt(move(id1, id2), t+1) ⇐

  • HappensAt(walking(id1), t) ∧ HappensAt(walking(id2), t)

  • Close(id1, id2, 34, t)

¬HoldsAt(move(id1, id2), t+1) ⇐ ¬HoldsAt(move(id1, id2), t)∧ ¬ HappensAt(walking(id1), t) ∧ HappensAt(walking(id2), t) ∨

  • Close(id1, id2, 34, t)

Evangelos Michelioudakis OSLα: Online Structure Learning using Background Knowledge Axiomatization

25/18

slide-37
SLIDE 37

CNF Example (1/2)

  • 1. Eliminate all implications and equivalences:

HoldsAt(move(id1, id2), t+1)∨ ¬ HappensAt(walking(id1), t) ∧ HappensAt(walking(id2), t) ∨

  • Close(id1, id2, 34, t)

¬HoldsAt(move(id1, id2), t+1)∨ ¬ ¬HoldsAt(move(id1, id2), t)∧ ¬ HappensAt(walking(id1), t) ∧ HappensAt(walking(id2), t) ∨

  • Close(id1, id2, 34, t)
  • 2. Move inwards all negations:

HoldsAt(move(id1, id2), t+1)∨

  • ¬HappensAt(walking(id1), t) ∨ ¬HappensAt(walking(id2), t)

∧ ¬Close(id1, id2, 34, t) ¬HoldsAt(move(id1, id2), t+1)∨ HoldsAt(move(id1, id2), t)∨

  • HappensAt(walking(id1), t) ∧ HappensAt(walking(id2), t)

∨ Close(id1, id2, 34, t)

Evangelos Michelioudakis OSLα: Online Structure Learning using Background Knowledge Axiomatization

26/18

slide-38
SLIDE 38

CNF Example (2/2)

  • 3. Distribute operators (disjunctions and conjunctions):

HoldsAt(move(id1, id2), t+1) ∨ ¬HappensAt(walking(id1), t)∨ ¬HappensAt(walking(id2), t)∧ HoldsAt(move(id1, id2), t+1) ∨ ¬Close(id1, id2, 34, t) ¬HoldsAt(move(id1, id2), t+1) ∨ HoldsAt(move(id1, id2), t)∨ HappensAt(walking(id1), t) ∨ Close(id1, id2, 34, t)∧ ¬HoldsAt(move(id1, id2), t+1) ∨ HoldsAt(move(id1, id2), t)∨ HappensAt(walking(id2), t) ∨ Close(id1, id2, 34, t)

  • 4. Extract clauses:

{HoldsAt(move(id1, id2), t+1) ∨ ¬HappensAt(walking(id1), t)∨ ¬HappensAt(walking(id2), t)} {HoldsAt(move(id1, id2), t+1) ∨ ¬Close(id1, id2, 34, t)} {¬HoldsAt(move(id1, id2), t+1) ∨ HoldsAt(move(id1, id2), t)∨ HappensAt(walking(id1), t) ∨ Close(id1, id2, 34, t)} {¬HoldsAt(move(id1, id2), t+1) ∨ HoldsAt(move(id1, id2), t)∨ HappensAt(walking(id2), t) ∨ Close(id1, id2, 34, t)}

Evangelos Michelioudakis OSLα: Online Structure Learning using Background Knowledge Axiomatization

27/18

slide-39
SLIDE 39

Dataset Statistics

total SDEs 63147 average SDEs per fold 56832 total meet positive CEs 3722 total move positive CEs 6272 average meet positive CEs 3350 average move positive CEs 5600

Evangelos Michelioudakis OSLα: Online Structure Learning using Background Knowledge Axiomatization

28/18

slide-40
SLIDE 40

Weight Learning Accuracy

Method meet move Precision Recall F1-score Precision Recall F1score ECcrisp 0.6868 0.8556 0.7620 0.9093 0.6390 0.7506 CDA 0.9061 0.4878 0.6342 0.9032 0.6706 0.7697 AdaGrad 0.7228 0.8547 0.7833 0.9172 0.6674 0.7726 MaxMargin 0.9189 0.8133 0.8629 0.8443 0.9410 0.8901

Evangelos Michelioudakis OSLα: Online Structure Learning using Background Knowledge Axiomatization

29/18

slide-41
SLIDE 41

Weight Learning Runtimes

Method meet move training testing training testing CDA 1m 24s 11s 1m 44s 13s AdaGrad 1m 26s 11s 1m 35s 15s MaxMargin 18m 53s 11s 28m 10s 12s

Evangelos Michelioudakis OSLα: Online Structure Learning using Background Knowledge Axiomatization

30/18

slide-42
SLIDE 42

Learned Weight Distribution

(

  • 2

,

  • 1

. 5 ] (

  • 1

. 5 ,

  • 1

] (

  • 1

,

  • .

5 ] (

  • .

5 , ] ( , . 5 ] ( . 5 , 1 ] ( 1 , 1 . 5 ] ( 1 . 5 , 2 ] ( 2 , 2 . 5 ]

50 100 150

weight clauses

(a) meet

(

  • 2

. 5 ,

  • 2

] (

  • 2

,

  • 1

. 5 ] (

  • 1

. 5 ,

  • 1

] (

  • 1

,

  • .

5 ] (

  • .

5 , ] ( , . 5 ] ( . 5 , 1 ] ( 1 , 1 . 5 ] ( 1 . 5 , 2 ] ( 2 , 2 . 5 ]

100 200 300 400

weight clauses

(b) move

Evangelos Michelioudakis OSLα: Online Structure Learning using Background Knowledge Axiomatization

31/18

slide-43
SLIDE 43

Model Pruning using ξ Threshold

0.1 0.5 1 100 200 300 245 229 178 50

ξ clauses

0.1 0.5 1 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1 0.83 0.83 0.83 0.69

ξ F1 score

0.1 0.5 1 200 400 600 539 430 395 52

ξ seconds

(c) meet

0.1 0.5 1 200 400 600 800 1,000 780 745 531 169

ξ clauses

0.1 0.5 1 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1 0.78 0.78 0.71 0.65

ξ F1 score

0.1 0.5 1 200 400 600 660 540 530 376

ξ seconds

(d) move

Evangelos Michelioudakis OSLα: Online Structure Learning using Background Knowledge Axiomatization

32/18