23.02.2015 Views

Machine Learning - DISCo

Machine Learning - DISCo

Machine Learning - DISCo

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

which enable the user to specify the predicate and function symbols to be<br />

considered, and the types and formats of arguments for each.<br />

2. PROGOL uses a sequential covering algorithm to learn a set of expressions<br />

from H that cover the data. For each example (xi, f (xi)) that is not yet<br />

covered by these learned expressions, it first searches for the most specific<br />

hypothesis hi within H such that (B A hi A xi) l- f (xi). More precisely, it<br />

approximates this by calculating the most specific hypothesis among those<br />

that entail f (xi) within k applications of the resolution rule (where k is a<br />

user-specified parameter).<br />

3. PROGOL then performs a general-to-specific search of the hypothesis space<br />

bounded by the most general possible hypothesis and by the specific bound<br />

hi calculated in step 2. Within this set of hypotheses, it seeks the hypothesis<br />

having minimum description length (measured by the number of literals).<br />

This part of the search is guided by an A*-like heuristic that allows pruning<br />

without running the risk of pruning away the shortest hypothesis.<br />

The details of the PROGOL algorithm are described by Muggleton (1992,<br />

1995).<br />

10.8 SUMMARY AND FURTHER READING<br />

The main points of this chapter include:<br />

The sequential covering algorithm learns a disjunctive set of rules by first<br />

learning a single accurate rule, then removing the positive examples covered<br />

by this rule and iterating the process over the remaining training examples.<br />

It provides an efficient, greedy algorithm for learning rule sets, and an alternative<br />

to top-down decision tree learning algorithms such as ID3, which<br />

can be viewed as simultaneous, rather than sequential covering algorithms.<br />

0 In the context of sequential covering algorithms, a variety of methods have<br />

been explored for learning a single rule. These methods vary in the search<br />

strategy they use for examining the space of possible rule preconditions. One<br />

popular approach, exemplified by the CN2 program, is to conduct a generalto-specific<br />

beam search, generating and testing progressively more specific<br />

rules until a sufficiently accurate rule is found. Alternative approaches search<br />

from specific to general hypotheses, use an example-driven search rather than<br />

generate and test, and employ different statistical measures of rule accuracy<br />

to guide the search.<br />

Sets of first-order rules (i.e., rules containing variables) provide a highly<br />

expressive representation. For example, the programming language PROLOG<br />

represents general programs using collections of first-order Horn clauses.<br />

The problem of learning first-order Horn clauses is therefore often referred<br />

to as the problem of inductive logic programming.<br />

One approach to learning sets of first-order rules is to extend the sequential<br />

covering algorithm of CN2 from propositional to first-order representations.

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!