Proceedings

Synthesizing Datalog Programs using Numerical Relaxation

Download BibTeX Cite

Proceedings of the Twenty-Eighth International Joint Conference on Artificial Intelligence. Understanding Intelligence and Human-level AI in the New Machine Learning era. Pages 6117-6124.

https://doi.org/10.24963/ijcai.2019/847

Abstract

The problem of learning logical rules from examples arises in diverse fields, including program synthesis, logic programming, and machine learning. Existing approaches either involve solving computationally difficult combinatorial problems, or performing parameter estimation in complex statistical models.

In this paper, we present Difflog, a technique to extend the logic programming language Datalog to the continuous setting. By attaching real-valued weights to individual rules of a Datalog program, we naturally associate numerical values with individual conclusions of the program. Analogous to the strategy of numerical relaxation in optimization problems, we can now first determine the rule weights which cause the best agreement between the training labels and the induced values of output tuples, and subsequently recover the classical discrete-valued target program from the continuous optimum.

We evaluate Difflog on a suite of 34~benchmark problems from recent literature in knowledge discovery, formal verification, and database query-by-example, and demonstrate significant improvements in learning complex programs with recursive rules, invented predicates, and relations of arbitrary arity.

  1. [Abiteboul et al., 1995] Serge Abiteboul, Richard Hull, and Victor Vianu. Foundations of Databases. Addison-Wesley, 1995.
  2. [Albarghouthi et al., 2017] Aws Albarghouthi, Paraschos Koutris, Mayur Naik, and Calvin Smith. Constraint-based synthesis of Datalog programs. In Proceedings of the 23rd International Conference on Principles and Practice of Constraint Programming, CP, 2017.
  3. [Alur et al., 2015] Rajeev Alur, Rastislav Bodík, Eric Dal- lal, Dana Fisman, Pranav Garg, Garvit Juniwal, Hadas Kress-Gazit, P. Madhusudan, Milo Martin, Mukund Raghothaman, Shambwaditya Saha, Sanjit Seshia, Rishabh Singh, Armando Solar-Lezama, Emina Torlak, and Ab- hishek Udupa. Syntax-guided synthesis. In Dependable Software Systems Engineering, pages 1-25. 2015.
  4. [Bravenboer and Smaragdakis, 2009] Martin Bravenboer and Yannis Smaragdakis. Strictly declarative specification of sophisticated points-to analyses. In Proceedings of the 24th Annual Conference on Object-Oriented Programming, Systems, Languages, and Applications, OOPSLA, 2009.
  5. [Cohen and Page, 1995] William W. Cohen and C. David Page. Polynomial learnability and inductive logic program- ming: Methods and results. New Generation Comput., 13(3&4):369-409, 1995.
  6. [De Raedt et al., 2007] Luc De Raedt, Angelika Kimmig, and Hannu Toivonen. Problog: A probabilistic Prolog and its application in link discovery. In Proceedings of the 20th International Joint Conference on Artificial Intelligence, 2007. IJCAI
  7. [Embar et al., 2018] Varun Embar, Dhanya Sridhar, Gol- noosh Farnadi, and Lise Getoor. Scalable structure learning for Probabilistic Soft Logic. CoRR, abs/1807.00973, 2018.
  8. [Evans and Grefenstette, 2018] Richard Evans and Edward Grefenstette. Learning explanatory rules from noisy data (Extended abstract). In Proceedings of the Twenty-Seventh International Joint Conference on Artificial Intelligence, 2018. IJCAI
  9. [Green et al., 2007] Todd Green, Gregory Karvounarakis, and Val Tannen. Provenance semirings. In Proceedings of the 26th Symposium on Principles of Database Systems, PODS, 2007.
  10. [Gulwani, 2011] Sumit Gulwani. Automating string process- ing in spreadsheets using input-output examples. In Pro- ceedings of the 38th Symposium on Principles of Program- ming Languages, POPL, 2011.
  11. [Kimmig et al., 2011] Angelika Kimmig, Guy Van den Broeck, and Luc De Raedt. An algebraic Prolog for reason- ing about possible worlds. In Proceedings of the Twenty- Fifth AAAI Conference on Artificial Intelligence, 2011.
  12. [Kimmig et al., 2017] Angelika Kimmig, Guy Van den Broeck, and Luc De Raedt. Algebraic model counting. J. of Applied Logic, 22(C), July 2017.
  13. [Kok and Domingos, 2005] Stanley Kok and Pedro M. Domingos. Learning the structure of Markov Logic Net- works. In Machine Learning, Proceedings of the Twenty- Second International Conference, 2005.
  14. [Liang et al., 2010] Percy Liang, Michael I. Jordan, and Dan Klein. Learning programs: A hierarchical Bayesian ap- proach. In Proceedings of the 27th International Confer- ence on Machine Learning, 2010.
  15. [Loo et al., 2006] Boon Thau Loo, Tyson Condie, Minos Garofalakis, David Gay, Joseph Hellerstein, Petros Ma- niatis, Raghu Ramakrishnan, Timothy Roscoe, and Ion Stoica. Declarative networking: Language, execution and optimization. In Proceedings of the 2006 International Conference on Management of Data, SIGMOD, 2006.
  16. [Manhaeve et al., 2018] Robin Manhaeve, Sebastijan Duman- cic, Angelika Kimmig, Thomas Demeester, and Luc De Raedt. Deepproblog: Neural probabilistic logic program- ming. In Advances in Neural Information Processing Sys- tems, 2018.
  17. [Muggleton et al., 2015] Stephen Muggleton, Dianhuan Lin, and Alireza Tamaddoni-Nezhad. Meta-interpretive learn- ing of higher-order dyadic Datalog: Predicate invention revisited. Machine Learning, 100(1), 2015.
  18. [Muggleton, 1995] Stephen Muggleton. Inverse entailment and Progol. New Generation Computing, 13(3&4), 1995.
  19. [Muggleton, 1996] Stephen Muggleton. Stochastic logic pro- grams. In New Generation Computing. Academic Press, 1996.
  20. [Poole, 1995] David Poole. Logic programming for robot control. In Proceedings of the 14th International Joint Conference on Artificial Intelligence, IJCAI, 1995. IJCAI
  21. [Richardson and Domingos, 2006] Matthew Richardson and Pedro Domingos. Markov Logic Networks. Machine Learn- ing, 62(1-2), 2006.
  22. [Rocktäschel and Riedel, 2017] Tim Rocktäschel and Sebas- tian Riedel. End-to-end differentiable proving. In Advances in Neural Information Processing Systems, 2017.
  23. [Schkufza et al., 2016] Eric Schkufza, Rahul Sharma, and Alex Aiken. Stochastic program optimization. Commun. ACM, 59(2), 2016.
  24. [Seo, 2018] Jiwon Seo. Datalog extensions for bioinformatic data analysis. In 40th Annual International Conference of the IEEE Engineering in Medicine and Biology Society, EMBC, 2018.
  25. [Shapiro, 1983] Ehud Shapiro. Logic programs with uncer- tainties: A tool for implementing rule-based systems. In Proceedings of the Eighth International Joint Conference on Artificial Intelligence, 1983. IJCAI
  26. [Shkapsky et al., 2016] Alexander Shkapsky, Mohan Yang, Matteo Interlandi, Hsuan Chiu, Tyson Condie, and Carlo Zaniolo. Big data analytics with Datalog queries on Spark. In Proceedings of the 2016 International Conference on Management of Data, SIGMOD, 2016.
  27. [Si et al., 2018] Xujie Si, Woosuk Lee, Richard Zhang, Aws Albarghouthi, Paraschos Koutris, and Mayur Naik. Syntax- guided synthesis of Datalog programs. In Proceedings of the Joint Meeting on European Software Engineering Conference and Symposium on the Foundations of Software Engineering, FSE, 2018.
  28. [Wang et al., 2014] William Yang Wang, Kathryn Mazaitis, and William Cohen. Structure learning via parameter learn- ing. In Proceedings of the 23rd ACM International Confer- ence on Conference on Information and Knowledge Man- agement, 2014.
  29. [Yang et al., 2017] Fan Yang, Zhilin Yang, and William W. Cohen. Differentiable learning of logical rules for knowl- edge base reasoning. In Advances in Neural Information Processing Systems, 2017.

References were extracted automatically from the PDF and may contain errors.

Welcome Future Conferences AI Journal Division IJCAI Proceedings About IJCAI IJCAI Awards