ILP: Compute Once, Reuse Often

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...

ver descrição completa

Detalhes bibliográficos
Autor principal: Nuno A. Fonseca (author)
Outros Autores: Ricardo Rocha (author), Rui Camacho (author), Vítor Santos Costa (author)
Formato: book
Idioma:eng
Publicado em: 2007
Assuntos:
Texto completo:https://hdl.handle.net/10216/67388
País:Portugal
Oai:oai:repositorio-aberto.up.pt:10216/67388
Descrição
Resumo: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.