On Applying Deductive Databases to Inductive Logic Programming: a Performance Study
Tiago Soares, Michel Ferreira, Ricardo Rocha and Nuno A. Fonseca
August 2006
Abstract
Inductive Logic Programming (ILP) tries to derive an intensional
representation of data (a theory) from its extensional one, which
includes positive and negative examples, as well as facts from a
background knowledge. This data is primarily available from relational
databases, and has to be converted to Prolog facts in order to be used
by most ILP systems. Furthermore, the operations involved in ILP
execution are also very database oriented, including selections, joins
and aggregations. We thus argue that the Prolog implementation of ILP
systems can profit from a hybrid execution between a logic system and
a relational database system, that can be obtained by using a coupled
deductive database system. This hybrid execution is completely
transparent for the Prolog programmer, with the deductive database
system abstracting all the Prolog to relational algebra
translation. In this paper we propose several approaches of coding ILP
algorithms using deductive databases technology, with different
distributions of work between the logic system and the database
system. We perform an in-depth evaluation of the different approaches
on a set of real-size problems. For large problems we are able to
obtain speedups of more than a factor of 100. The size of the problems
that can be solved is also significantly improved thanks to a
non-memory storage of data-sets.
Bibtex
@InProceedings{soares-ciclops06,
author = {T. Soares and M. Ferreira and R. Rocha and N. A. Fonseca},
title = {{On Applying Deductive Databases to Inductive Logic Programming: a Performance Study}},
booktitle = {Proceedings of the 6th Colloquium on Implementation of Constraint and LOgic Programming
Systems (CICLOPS 2006)},
pages = {80--94},
editor = {E. Pontelli and Hai-Feng Guo},
month = {August},
year = {2006},
address = {Seattle, Washington, USA},
}
Download Paper
PDF file