dtproblog
play

DTProbLog A Decision-Theoretic Probabilistic Prolog Guy Van den - PowerPoint PPT Presentation

DTProbLog A Decision-Theoretic Probabilistic Prolog Guy Van den Broeck Ingo Thon Martijn van Otterlo Luc De Raedt Motivation Many real-world decision problems are relational and probabilistic Wildfire control Who to vaccinate for


  1. DTProbLog A Decision-Theoretic Probabilistic Prolog Guy Van den Broeck Ingo Thon Martijn van Otterlo Luc De Raedt

  2. Motivation ● Many real-world decision problems are relational and probabilistic ● Wildfire control ● Who to vaccinate for swine flu ● Viral marketing ● ... 07/14/10 DTProbLog 2

  3. Motivation ● Combination of relations , uncertainty and decision theory largely ignored some exceptions are MLDNs, DTLPs and FOMDPs ● Relations with uncertainty = S tatistical R elational L earning ● ProbLog is a simple probabilistic Prolog ● DTProbLog is a decision-theoretic ProbLog 07/14/10 DTProbLog 3

  4. Outline ● DTProbLog: the Language ● DTProbLog: the Algorithms ● Exact Solution Algorithm ● Approximate Solution Algorithms ● Experiments: Viral Marketing ● Related Work & Conclusions 07/14/10 DTProbLog 4

  5. DTProbLog: the Language 07/14/10 DTProbLog 5

  6. Maggie Homer Lenny Marge Moe Bart Lisa Apu Seymour Ralph 07/14/10 DTProbLog 6

  7. Maggie Homer Lenny Marge 1 Moe Bart Lisa Apu Seymour Ralph 07/14/10 DTProbLog 7

  8. Maggie Homer Lenny Marge 1 Moe 0.3 0.3 Bart Lisa 0.3 Apu Seymour Ralph 07/14/10 DTProbLog 8

  9. Maggie 0.17 Homer Lenny Marge 1 0.14 Moe 0.39 0.34 Bart Lisa 0.41 0.25 Apu 0.17 Seymour Ralph 0.25 0.21 07/14/10 DTProbLog 9

  10. ProbLog Probabilistic Facts 0.3 :: buy_trust(_,_). Background Knowledge buys(X) :- trusts(X,Y), buys(Y), buy_trust(X,Y). Maggie 0.17 Homer Lenny Marge 1 0.14 Moe 0.39 0.34 Bart Lisa 0.41 0.25 Apu 0.17 Seymour Ralph 0.25 0.21 07/14/10 DTProbLog 10

  11. Maggie Homer Lenny Marge Moe Bart Lisa Apu Seymour Ralph 07/14/10 DTProbLog 11

  12. Maggie Homer Lenny Marge 0.20 Moe Bart Lisa Apu Seymour Ralph 07/14/10 DTProbLog 12

  13. Maggie 0.03 Homer Lenny Marge 0.20 0.03 Moe 0.08 0.07 Bart Lisa 0.08 0.05 Apu 0.03 Seymour Ralph 0.05 0.04 07/14/10 DTProbLog 13

  14. ProbLog Probabilistic Facts 0.3 :: buy_trust(_,_). 0.2 :: buy_marketing(_). Background Knowledge buys(X) :- buys(X) :- trusts(X,Y), marketed(X), buys(Y), buy_marketing(X). buy_trust(X,Y). Maggie 0.03 Homer Lenny Marge 0.20 0.03 Moe 0.08 0.07 Bart Lisa 0.08 0.05 Apu 0.03 Seymour Ralph 0.05 0.04 07/14/10 DTProbLog 14

  15. Maggie Homer Lenny Marge Moe Bart Lisa Apu Seymour Ralph 07/14/10 DTProbLog 15

  16. Maggie 0.05 Homer Lenny Marge 0.25 0.10 Moe 0.11 0.25 Bart Lisa 0.12 0.08 Apu 0.11 Seymour Ralph 0.12 0.08 07/14/10 DTProbLog 16

  17. +$5 Which strategy gives the maximum -$3 expected utility ? ? ? Maggie ? ? ? ? ? ? Homer Lenny ? ? Marge Moe ? ? ? ? Bart Lisa ? ? ? ? Apu ? ? Seymour Ralph 07/14/10 DTProbLog 17

  18. +$5 2 -$3 1 . 1 $ Maggie 0.07 Homer Lenny Marge 0.12 0.06 Moe 0.13 0.12 Bart Lisa 0.27 0.13 Apu 0.11 Seymour Ralph 0.27 0.16 07/14/10 DTProbLog 18

  19. Probabilistic Facts DT ProbLog ... Background Knowledge ... Decisions ? :: marketed(P) :- person(P). 2 1 Utility Facts . 1 $ buys(P) => 5 :- person(P). marketed(P) => -3 :- person(P). Maggie 0.07 Homer Lenny Marge 0.12 0.06 Moe 0.13 0.12 Bart Lisa 0.27 0.13 Apu 0.11 Seymour Ralph 0.27 0.16 07/14/10 DTProbLog 19

  20. DTProbLog: the Algorithms 07/14/10 DTProbLog 20

  21. DTProbLog: the Algorithms ● DTProbLog solves decision problems in complex relational and uncertain environments. ● Exact solution algorithm ● Extends ProbLog's BDD-based inference ● Efficient datastructures: BDD and ADD ● Approximate algorithms ● Local search ● K-best proofs 07/14/10 DTProbLog 21

  22. Example: Dressing for unpredictable weather Decision Facts Probabilistic Facts ? :: umbrella. 0.3 :: rainy . ? :: raincoat. 0.5 :: windy . Background Knowledge dry :- rainy, umbrella, not(broken_umbrella). dry :- rainy, raincoat. dry :- not(rainy). broken_umbrella :- umbrella, rainy, windy . Utility Facts umbrella => -2. dry => 60. raincoat => -20. broken_umbrella => -40. 07/14/10 DTProbLog 22

  23. Exact Solution Algorithm Find all proofs for each utility attribute (Prolog) 1 Binary decision diagrams from the proofs 2 Algebraic decision diagrams for the probability 3 of each attribute Algebraic decision diagrams for the utility of 4 each attribute Algebraic decision diagram for the total utility 5 07/14/10 DTProbLog 23

  24. Find all proofs for each utility attribute (Prolog) 1 Binary decision diagrams from the proofs 2 ● Leafs indicate attribute true or false ● Nodes are probabilistic facts or decisions true false dry => 60. umbrella => -2. broken_umbrella => -40. raincoat => -20. 07/14/10 DTProbLog 24

  25. Algebraic decision diagrams for the probability 3 of each attribute ● Probabilistic facts are marginalized out ● Nodes are decisions only ● Leafs are probabilities dry => 60. umbrella => -2. broken_umbrella => -40. raincoat => -20. 07/14/10 DTProbLog 25

  26. Algebraic decision diagrams for the utility of 4 each attribute ● Leafs are expected utilities dry => 60. umbrella => -2. broken_umbrella => -40. raincoat => -20. 07/14/10 DTProbLog 26

  27. Algebraic decision diagram for the total utility 5 ∑ + sound pruning (ADD not built entirely in memory) 07/14/10 DTProbLog 27

  28. Approximate Solution: Local Search Find all proofs for each utility attribute (Prolog) 1 Binary decision diagrams from the proofs 2 Algebraic decision diagrams for the probability 3 of each attribute Algebraic decision diagrams for the utility of 4 each attribute Algebraic decision diagram for the total utility 5 07/14/10 DTProbLog 28

  29. Approximate Solution: Local Search Find all proofs for each utility attribute (Prolog) 1 Binary decision diagrams from the proofs 2 Algebraic decision diagrams for the probability 3 of each attribute Algebraic decision diagrams for the utility of 4 each attribute Algebraic decision diagram for the total utility 5 Greedy hillclimber search 3 07/14/10 DTProbLog 29

  30. Approximate Solution: K-best Proofs Find all proofs for each utility attribute (Prolog) 1 Binary decision diagrams from the proofs 2 Algebraic decision diagrams for the probability 3 of each attribute Algebraic decision diagrams for the utility of 4 each attribute Algebraic decision diagram for the total utility 5 07/14/10 DTProbLog 30

  31. Approximate Solution: K-best Proofs Find all proofs for each utility attribute (Prolog) 1 Find the k most likely proofs for each utility 1 attribute Binary decision diagrams from the proofs 2 Algebraic decision diagrams for the probability 3 of each attribute Algebraic decision diagrams for the utility of 4 each attribute Algebraic decision diagram for the total utility 5 07/14/10 DTProbLog 31

  32. Experiments: Viral Marketing 07/14/10 DTProbLog 32

  33. Experiments: Viral Marketing ● Synthetic dataset Random power law graphs of increasing size ● Real-world Epinions dataset [Domingos02] 07/14/10 DTProbLog 33

  34. (Q1) Does the exact solution algorithm perform better than naively calculating the utility of all strategies? 07/14/10 DTProbLog 34

  35. (Q2) What is the difference in runtime and solution quality between exact and local search? 07/14/10 DTProbLog 35

  36. (Q3) What is the difference in runtime and solution quality between for different values of k in k-best . 07/14/10 DTProbLog 36

  37. (Q4) Do the algorithms scale ? Epinions social network ● 75,000 people ● 500,000 trust relations YES ● Local search ● 17-best proofs ● Solved in 16 hours 07/14/10 DTProbLog 37

  38. Related Work & Conclusions 07/14/10 DTProbLog 38

  39. Related Work Representation Solution Evaluation Global Local Exact Approximate Relational Probabilities optimum optimum inference inference Influence Diagrams MLDNs [Nath] ICL [Poole] DTLPs [Chen] DTProbLog 07/14/10 DTProbLog 39

  40. Summary ● DTProbLog, the programming language ● Probabilistic Prolog ● Decisions ● Utilities: rewards or costs attached to goals ● Solution algorithms ● Exactly ● Approximately ● Experiments ● Effective ● Scale well 07/14/10 DTProbLog 40

  41. Ongoing and Future Work ● Sequential decision problems ● Easy to represented in DTProbLog ● Bad fit for solution algorithms ● Solvers ● Integer linear programming ● Bounded approximation ● Monte-Carlo ● Lifting (many BDDs have same structure) ● Learning DTProbLog programs ● Inverse reinforcement learning 07/14/10 DTProbLog 41

  42. Thank You! 07/14/10 DTProbLog 42

  43. Viral Marketing Decisions ? :: marketed(P) :- person(P). Probabilistic Facts 0.3 :: buy_trust(_,_). 0.2 :: buy_marketing(_). Background Knowledge buys(X) :- buys(X) :- trusts(X,Y), marketed(X), buys(Y), buy_marketing(X). buy_trust(X,Y). Utility Facts buys(P) => 5 :- person(P). marketed(P) => -3 :- person(P). 07/14/10 DTProbLog 43

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend