Probabilistic Logic Programming and Its Applications

Probabilistic Logic Programming and Its Applications

Probabilistic Logic Programming and its Applications Luc De Raedt with many slides from Angelika Kimmig The Turing, London, September 11, 2017 1 A key question in AI: Dealing with uncertainty Reasoning with relational data ? Learning 2 A key question in AI: Dealing with uncertainty Reasoning with relational data • logic ? • databases Learning • programming • ... 2 A key question in AI: Dealing with uncertainty • probability theory Reasoning with • graphical models relational data • ... • logic ? • databases Learning • programming • ... 2 A key question in AI: Dealing with uncertainty • probability theory Reasoning with • graphical models relational data • ... • logic ? • databases Learning • programming • parameters • ... • structure 2 A key question in AI: Dealing with uncertainty • probability theory Reasoning with • graphical models relational data • ... • logic ? • databases Learning • programming • parameters • ... • structure Statistical relational learning, probabilistic logic learning, probabilistic programming, ... 2 Networks of Uncertain Information pathway locus is related to is located in phenotype participates in refers to gene belongs to participates in homologgroup is homologous to is found in codes for cellular refers to biological component process is found in participates in Biomine molecular protein database @ function Helsinki has subsumes, http://biomine.cs.helsinki.fi/ 3 interacts with Biomine network 4 Biomine network 4 Biomine Network 5 Notch receptorBiomine processing Network BiologicalProcess GO:GO:0007220 presenilin 2 Gene EntrezGene:81751 5 Biomine Network BiologicalProces -participates_in 0.220 Gene 5 Biomine Network BiologicalProces -participates_in 0.220 • different types of nodes & links • automatically extracted from text, databases, ... • probabilities quantifying source reliability, extractor confidence, ... • similar in other contexts, e.g., linked open data, NELL@CMU, ... Gene 5 Example: Information Extraction 6 NELL: http://rtw.ml.cmu.edu/rtw/ Example: Information Extraction instances for many different relations 6 NELL: http://rtw.ml.cmu.edu/rtw/ Example: Information Extraction instances for many degree of certainty different relations 6 NELL: http://rtw.ml.cmu.edu/rtw/ border border Alliance 6 P 7 Dynamic networks Alliance 3 P 6 Alliance 2 Alliance 4 P 9 985 P 5 777 P 3 932 871 837 P 2 950 744 644 878 946 Travian: A massively multiplayer 1081 864 913 real-time strategy game Can we build a model border 1081 border of this world ? 1077 915 1040 1073 Can we use it for playing 1090 895 better ? 1090 1087 942 1093 955 621 1054 804 1084 748 559 830 1090 861 770 786 7 [Thon et al, MLJ 11] border border Dynamic networks P 10 Alliance 2 860 713 P 5 839 838 796 803 P 3 898 689 774 860 Travian: A massively multiplayer 1040 886 84A4lliance 4 real-time strategy game P 2 Can we build a model border 1051 border of this world ? 1061 951 1005 1007 Can we use it for playing 964 948 better ? 1037 945 980 1085 990 730 1005 856 1051 899 760 795 925 944 786 828 7 [Thon et al, MLJ 11] Answering Probability Our goal Questions Mike has a bag of marbles with 4 white, 8 blue, and 6 red marbles. He pulls out one marble from the bag and it is red. What is the probability that the second marble he pulls out of the bag is white? The answer is 0.235941. [Dries et al., IJCAI 17] 8 https://dtai.cs.kuleuven.be/problog/natural_language 5 Synthesising inductive data models Data Model Inductive Model Discover patterns and rules present in a Data Model + Apply patterns to make predictions and support decisions 1. The synthesis system “learns the learning task”. It identifies the right learning tasks and learns appropriate Inductive Models 2. The system may need to restructure the data set before Inductive Models synthesis can start 3. A unifying IDM language for a set of core patterns and models will be developed — based on ProbLog Common theme Dealing with uncertainty Reasoning with relational data Learning Statistical relational learning, probabilistic logic learning, probabilistic programming, ... 10 Common theme Dealing with uncertainty • many different formalisms • our focus: probabilistic Reasoning with (logic) programming relational data Learning Statistical relational learning, probabilistic logic learning, probabilistic programming, ... 10 The (Incomplete) SRL Alphabet Soup [names in alphabetical order] ´99 ´03 2011 De Raedt, Kersting, Natarajan, Poole: Statistical Relational AI The (Incomplete) SRL Alphabet Soup [names in alphabetical order] ´90 ´95 ´99 ´03 2011 First KBMC approaches: Bresse, Bacchus, Charniak, Glesner, Goldman, Koller, Poole, Wellmann De Raedt, Kersting, Natarajan, Poole: Statistical Relational AI The (Incomplete) SRL Alphabet Soup Relational Gaussian Processes Infinite Hidden Relational Models [names in alphabetical order] ´10 PSL: Broecheler, Getoor, Mihalkova ´90 ´93´94´95´96 ´97 ´99´00 ´02´03 ´07 RDNs: Jensen, Neville 2011 Relational Markov Networks Logical Bayesian Networks: Object-Oriented Bayes Nets Blockeel,Bruynooghe, Fierens,Ramon, BUGS/Plates IBAL Figaro LOHMMs: De Raedt, Kersting, 1BC(2): Flach, Raiko First KBMC approaches: Lachiche Bresse, Prob. Horn Bacchus, RMMs: Anderson,Domingos, Abduction: Poole Weld Charniak, Multi-Entity Bayes Nets Glesner, Goldman, BLPs: Kersting, De Raedt SPOOK Koller, PLP: Haddawy, Ngo Poole, Wellmann LPAD: Bruynooghe PRMs: Friedman,Getoor,Koller, Vennekens,Verbaeten PRISM: Kameya, Sato Pfeffer,Segal,Taskar DAPER Markov Logic: Domingos, SLPs: Cussens,Muggleton Richardson Church Prob. CLP: Eisele, Riezler CLP(BN): Cussens,Page, Qazi,Santos Costa DeProbabilistic Raedt, Kersting, Natarajan, Entity-Relationship Poole: Statistical Relational Models AI Many different angles • Probabilistic programming • Logic programming and probabilistic databases • (ProbLog and DS as representatives) • Functional and imperative (Church as representatives) • Statistical relational AI and learning • Markov Logic • Relational Bayesian Networks (and variants) 12 Probabilistic Logic Programs • devised by Poole and Sato in the 90s. • built on top of the programming language Prolog • upgrade directed graphical models • combines the advantages / expressive power of programming languages (Turing equivalent) and graphical models • Generalises probabilistic databases (Suciu et al.) • Implementations include: PRISM, ICL, ProbLog, LPADs, CP- logic, Dyna, Pita, DC, … 13 Roadmap • Modeling • Reasoning • Learning • Dynamics • Decisions 14 Part I : Modeling 15 ProbLog probabilistic Prolog Dealing with uncertainty Reasoning with relational data Learning 16 http://dtai.cs.kuleuven.be/problog/ ProbLog probabilistic Prolog Dealing with uncertainty Prolog / logic programming stress(ann). Learning influences(ann,bob). influences(bob,carl). smokes(X) :- stress(X). smokes(X) :- influences(Y,X), smokes(Y). 16 http://dtai.cs.kuleuven.be/problog/ ProbLog probabilistic Prolog Dealing with uncertainty Prolog / logic programming stress(ann). Learning influences(ann,bob). influences(bob,carl). one world smokes(X) :- stress(X). smokes(X) :- influences(Y,X), smokes(Y). 16 http://dtai.cs.kuleuven.be/problog/ ProbLog probabilistic Prolog 0.8::stress(ann). 0.6::influences(ann,bob). 0.2::influences(bob,carl). atoms as random variables Prolog / logic programming stress(ann). Learning influences(ann,bob). influences(bob,carl). one world smokes(X) :- stress(X). smokes(X) :- influences(Y,X), smokes(Y). 16 http://dtai.cs.kuleuven.be/problog/ ProbLog several possible worlds probabilistic Prolog 0.8::stress(ann). 0.6::influences(ann,bob). 0.2::influences(bob,carl). atoms as random variables Prolog / logic programming stress(ann). Learning influences(ann,bob). influences(bob,carl). one world smokes(X) :- stress(X). smokes(X) :- influences(Y,X), smokes(Y). 16 http://dtai.cs.kuleuven.be/problog/ ProbLog several possible worlds probabilistic Prolog 0.8::stress(ann). 0.6::influences(ann,bob). 0.2::influences(bob,carl). atoms as random Distribution Semantics [Sato, ICLP 95]: variables probabilistic choices + logic program → distribution over possible worlds Prolog / logic programming stress(ann). Learning influences(ann,bob). influences(bob,carl). one world smokes(X) :- stress(X). smokes(X) :- influences(Y,X), smokes(Y). 16 http://dtai.cs.kuleuven.be/problog/ ProbLog several possible worlds probabilistic Prolog 0.8::stress(ann). 0.6::influences(ann,bob). 0.2::influences(bob,carl). atoms as random Distribution Semantics [Sato, ICLP 95]: variables probabilistic choices + logic program → distribution over possible worlds Prolog / logic programming stress(ann). influences(ann,bob). influences(bob,carl). parameter learning, one world adapted relational smokes(X) :- stress(X). smokes(X) :- learning techniques influences(Y,X), smokes(Y). 16 http://dtai.cs.kuleuven.be/problog/ ProbLog by example: A bit of gambling h • toss (biased) coin & draw ball from each urn • win if (heads and a red ball) or (two balls of same color) 17 ProbLog by example: A bit of gambling h • toss (biased) coin & draw ball from each urn • win if (heads and a red ball) or (two balls of same color) probabilistic fact: heads is true with 0.4 :: heads. probability 0.4 (and false with 0.6) 17 ProbLog by example: A bit of gambling h • toss (biased) coin & draw ball from each urn • win if (heads and a red ball) or (two balls of same color) 0.4 :: heads. annotated disjunction: first ball is red with probability 0.3 and blue with 0.7 0.3 :: col(1,red); 0.7 :: col(1,blue). 17 ProbLog by example: A bit of gambling h • toss (biased) coin & draw ball from each urn • win

View Full Text

Details

  • File Type
    pdf
  • Upload Time
    -
  • Content Languages
    English
  • Upload User
    Anonymous/Not logged-in
  • File Pages
    188 Page
  • File Size
    -

Download

Channel Download Status
Express Download Enable

Copyright

We respect the copyrights and intellectual property rights of all users. All uploaded documents are either original works of the uploader or authorized works of the rightful owners.

  • Not to be reproduced or distributed without explicit permission.
  • Not used for commercial purposes outside of approved use cases.
  • Not used to infringe on the rights of the original creators.
  • If you believe any content infringes your copyright, please contact us immediately.

Support

For help with questions, suggestions, or problems, please contact us