DL-Learner is a tool for learning concepts in Description Logics (DLs) from user-provided examples. Equivalently, it can be used to learn classes in OWL ontologies from selected objects. The goal of DL-Learner is to support knowledge engineers in constructing knowledge and learning about the data they created.

Learning Problem

Given: background knowledge base, positive + negative examples (for a not yet defined concept)
Goal: a concept definition, such that when the definition is added to the background knowledge all positive examples follow and none of the negative examples follow

See also the Wikipedia entry for ILP (Inductive Logic Programming). What DL-Learner considers is the the ILP problem applied to Descriptions Logics / OWL.


The following figure gives an overview of the “generate and test” approach used in DL-Learner and other inductive learning tools:

Input for the learning algorithm are examples and background knowledge. DL-Learner itself is a framework for several learning algorithms like a refinement operator based algorithm and a genetic programming based algorithm (see publications for details). These algorithms use a generate and test approach. This means they generate concepts, which appear to be useful to them. They evaluate them using a concept quality measure (a heuristics). To measure the quality a Description Logic reasoner is required. The DL-Learner uses the so-called DIG interface to communicate with reasoners. This means that all DIG capable reasoners, i.e. all popular reasoners, can be used. The concept generation procedure is repeated until a solution (or a sufficiently good concept) has been found.

Learning Example

One of the simplest examples for concept learning is to learn the concept “father”. Assume the following background knowledge is given (Description Logic syntax):

In this case, an ontology learning system could learn the concept definition “Male AND EXISTS hasChild.TOP”, i.e. all objects, which are male and have at least one child.