Learning higher-order logic programs

07/25/2019
by   Andrew Cropper, et al.
0

A key feature of inductive logic programming (ILP) is its ability to learn first-order programs, which are intrinsically more expressive than propositional programs. In this paper, we introduce techniques to learn higher-order programs. Specifically, we extend meta-interpretive learning (MIL) to support learning higher-order programs by allowing for higher-order definitions to be used as background knowledge. Our theoretical results show that learning higher-order programs, rather than first-order programs, can reduce the textual complexity required to express programs which in turn reduces the size of the hypothesis space and sample complexity. We implement our idea in two new MIL systems: the Prolog system and the ASP system . Both systems support learning higher-order programs and higher-order predicate invention, such as inventing functions for map/3 and conditions for filter/3. We conduct experiments on four domains (robot strategies, chess playing, list transformations, and string decryption) that compare learning first-order and higher-order programs. Our experimental results support our theoretical claims and show that, compared to learning first-order programs, learning higher-order programs can significantly improve predictive accuracies and reduce learning times.

READ FULL TEXT
POST COMMENT

Comments

There are no comments yet.

Authors

page 1

page 2

page 3

page 4

12/29/2021

Learning Higher-Order Programs without Meta-Interpretive Learning

Learning complex programs through inductive logic programming (ILP) rema...
08/13/2018

Predicate Specialization for Definitional Higher-order Logic Programs

Higher-order logic programming is an interesting extension of traditiona...
04/13/2021

Extensional Denotational Semantics of Higher-Order Probabilistic Programs, Beyond the Discrete Case

We describe a mathematical structure that can give extensional denotatio...
04/18/2019

Playgol: learning programs through play

Children learn though play. We introduce the analogous idea of learning ...
08/31/2016

Knowledge Representation Analysis of Graph Mining

Many problems, especially those with a composite structure, can naturall...
12/19/2018

Coroutines with Higher Order Functions

Coroutines are non-preemptive concurrent subroutines that, unlike preemp...
07/23/2019

The Expressive Power of Higher-Order Datalog

A classical result in descriptive complexity theory states that Datalog ...

Code Repositories

metagol

Metagol - an inductive logic programming system


view repo
This week in AI

Get the week's most popular data science and artificial intelligence research sent straight to your inbox every Saturday.