RIBL (GMD)
System: | RIBL |
Version: | |
Further specification: |
empirical ILP system |
Pointers: |
ftp://ftp.mlnet.org/ml-archive/GMD/papers/ML79.ps.gz |
Code: |
Prolog executable, running on Sun SparcStations |
References: |
(Emde and Wettschereck 1996) |
Other comments: |
Can be used within the MOBAL system |
RIBL is a relational instance-based learning (IBL) algorithm
combining the advantages of instance-based/nearest-neighbor methods with
a powerful relational (ILP) representation. As most instance-based systems,
RIBL is robust, tolerates noise well and can handle numerical data as easily
as symbolic data. Its similarity metric contains the usual propositional
similarity metrics as a special case, so on propositional input, RIBL achieves
the same quality of results known from propositional IBL learners. In contrast
to most ILP systems, it cannot generate explicit sets of clauses as learning
results.
RIBL can be used within the graphical environment of MOBAL
or simply as a stand-alone command-line program. The program is composed
of four main modules:
-
A case generation module constructs descriptions of cases
(i.e., a conjunction of literals) that serve as examples for learning or
as test cases for classification.
-
A module that computes the similarity of pairs of cases.
-
A module that computes the relevance of predicates and their
arguments.
-
A module that implements distance-weighted k-nearest
neighbor learning.
The learning input of RIBL consists of
-
facts (unit clauses) that state properties of objects and
relations among objects in the domain,
-
predicate declarations that define the arity of the predicates
as well as the sorts and mode declarations for their arguments, and
-
type declarations that classify the terms that appear as
arguments of facts into values and names, and declare the representation
of values.
While facts and predicate declarations (including sorts)
are representational constructs of MOBAL, type declarations are supported
by RIBL. Type definitions are used to differentiate between arguments that
represent an object in a domain (e.g., a person or an error code) and attribute
values (e.g., a number that specifies the age of a person or the price
of a component). In addition, type declarations specify how attribute values
are represented (i.e., by using integers, reals, sets of unordered or ordered
atoms). Mode declarations specify which arguments of a predicate are input
or output arguments. This information is used in the same manner as it
is used in other ILP learners (e.g., FOIL or GOLEM).
References
-
Werner Emde and Dietrich Wettschereck. Relational Instance
Based Learning. In Lorenza Saitta, editor, Machine Learning - Proceedings
13th International Conference on Machine Learning, pages 122 - 130. Morgan
Kaufmann, 1996.
back to index