Inductive Logic Programming
Inductive logic programming is a branch of symbolic AI that learns logic rules from examples and background knowledge. Unlike statistical machine learning, it produces interpretable hypotheses and learns from very little data. We explain its idea, what sets it apart, its systems and its role in neuro-symbolic AI.
Inductive logic programming (ILP) is a branch of symbolic artificial intelligence that learns rules expressed in logic from examples and prior domain knowledge. It uses logic programming—in the style of the Prolog language—as a common representation for the data, the background knowledge and the hypotheses it induces.
How it works
The setup is elegant. The system is given background knowledge (facts and rules of the domain), a set of positive examples (cases that should hold) and another of negative examples (cases that should not). From there, ILP looks for a hypothesis—a logic program, a set of rules—that, together with the background knowledge, explains all the positive examples and none of the negative ones. Primary source.
What sets it apart from statistical learning
Compared with more common machine learning, ILP has distinctive traits. Where the former uses vectors of numbers and learns functions, ILP uses logic rules and learns relations. Its three great advantages are interpretability—the rules are readable, not a black box—the natural incorporation of domain knowledge and a remarkable data efficiency: it can learn from very few examples.
Its systems
The term was coined by Stephen Muggleton in 1991. Several reference systems have followed since: FOIL (Quinlan, 1990), Progol (Muggleton, 1995), Aleph (Srinivasan, 2001) and, more recently, Popper (Cropper and Morel), which “learns from failures” by pruning the hypothesis space whenever a rule fails. Documentation: foundational ILP paper; original Popper paper.
Its role today
ILP is enjoying renewed interest within neuro-symbolic AI, which seeks to combine the learning of neural networks with logical reasoning; there are differentiable versions that tolerate noisy data. It also fits the demand for explainable AI. Its most cited applications are in bioinformatics and drug discovery: the “robot scientist” Eve, for instance, supported by these techniques, flagged that a common antiseptic might be useful against malaria. Documentation: original Popper paper; University of Cambridge report on Eve.
This article was produced with artificial intelligence under human editorial oversight.