ILP: Compute Once, Reuse Often

Nuno A. Fonseca, Ricardo Rocha, Rui Carlos Camacho, Vı́tor Santos Costa · Portuguese National Funding Agency for Science, Research and Technology (RCAAP Project by FCT) · 2007

Inductive Logic Programming (ILP) is a powerful and welldeveloped abstraction for multi-relational data mining techniques. However, ILP systems are not particularly fast, most of their execution time is spent evaluating the hypotheses they construct. The evaluation time needed to assess the quality of each hypothesis depends mainly on the number of examples and the theorem proving effort required to determine if an example is entailed by the hypothesis. We propose a technique that reduces the theorem proving effort to a bare minimum and stores valuable information to compute the number of examples entailed by each hypothesis (using a tree data structure). The information is computed only once (pre-compiled) per example. Evaluation of hypotheses requires only basic and efficient operations on trees. This proposal avoids re-computation of hypothesis value in theory-level search and cross-validation algorithms, whenever the same data set is used with different parameters. In an empirical evaluation the technique yielded considerable speedups.

Read the paper · More papers on PaperTik