English

Learning logic programs by combining programs

Machine Learning 2023-08-21 v3 Artificial Intelligence Logic in Computer Science

Abstract

The goal of inductive logic programming is to induce a logic program (a set of logical rules) that generalises training examples. Inducing programs with many rules and literals is a major challenge. To tackle this challenge, we introduce an approach where we learn small non-separable programs and combine them. We implement our approach in a constraint-driven ILP system. Our approach can learn optimal and recursive programs and perform predicate invention. Our experiments on multiple domains, including game playing and program synthesis, show that our approach can drastically outperform existing approaches in terms of predictive accuracies and learning times, sometimes reducing learning times from over an hour to a few seconds.

Keywords

Cite

@article{arxiv.2206.01614,
  title  = {Learning logic programs by combining programs},
  author = {Andrew Cropper and Céline Hocquette},
  journal= {arXiv preprint arXiv:2206.01614},
  year   = {2023}
}