MFOIL is a descendant of FOIL which aims at improving its noise handling
capacities. These are of crucial importance when processing imperfect
real-world datasets.
MFOIL integrates several noise-handling techniques adapted from
attribute-value learning approaches into FOIL. In particular,
it offers two
alternative accuracy-based search heuristics replacing FOIL's
entropy-based information gain criterion, namely the Laplace-estimate and
the more sophisticated m -estimate. The m -estimate takes into account
the prior probabilities of examples, leading to a more reliable criterion
for small example sets. The user-settable parameter m allows to
control the influence of the prior probabilities. In MFOIL,
FOIL's encoding-length based stopping criteria are replaced by criteria
relying on statistical significance testing.
Further differences between FOIL and MFOIL concern the search
strategy and the background knowledge. As FOIL, MFOIL adopts a
covering strategy, but, unlike FOIL, it conducts beam search in
order to overcome at least partially some of the disadvantages of
FOIL's greedy hill-climbing search. On the other hand, some of
FOIL's more advanced features, such as number handling, are not realised
in MFOIL. Whereas FOIL is restricted to ground background
knowledge, MFOIL is able to process intensionally defined background
predicates as well. Furthermore, MFOIL
allows the user to declare additional informations on the background
predicates which reduce the number of candidate body literals that are
constructed during induction and thus help to gain efficiency.
References
S. Dzeroski.
Handling imperfect data in inductive logic programming.
In Proceedings of the 4th Scandinavian Conference on Artificial
Intelligence, pages 111-125. IOS Press, 1993.
N. Lavrac and S. Dzeroski.
Inductive Logic Programming: Techniques and Applications.
Ellis Horwood, 1994.