Previous Up Next

6  Future work

6.1  Polymorphic recipes

Further extensions to the presented data specifications might involve so-called polymorphic types. These are essentially types that accept type parameters. This allows us to greatly modularize data specifications. For example, instead of specifying missing values as in section 4.1, we could define a polymorphic type for them that looks as follows:

  data Optional Value = Missing | Observed Value

Then we could quickly create new definitions allowing missing values for arbitrary other types, e.g. some type T, by just writing Optional T, thus greatly simplifying large, complex specifications that consist of similar data patterns.

6.2  Exotic meals made from abstract cooking techniques

So far we have avoided speaking about numerical values. Of course, adding support for those will be mandatory for many real-world applications. However, instead of just adding this special case, why not add support for inducing functions over abstract datatypes? By providing signatures of (possibly even many-sorted) algebras, whose objects may be but are not limited to numbers, and that define arbitrary operators on them (e.g. trigonometric functions, matrix operations, set operations, etc.), we could induce arbitrary programs. This would then not only cover classification tasks but also regression and many others.

6.3  Recursive functions

Efficiently inducing recursive functions, ones which can operate on recursively defined data, is a very challenging task. Most attempts have failed due to the pervasiveness of non-termination issues, which arise from general recursion. However, results from category theory27 about certain higher-order functions (fold and unfold), which can be automatically derived from type definitions involving algebraic datatypes, seem promising28: they allow limiting the class of functions to be induced to certain recursion classes, e.g. the primitive recursive functions, which always terminate29.

The author wishes to thank Gerhard Widmer for comments on an earlier draft.

This research is supported by the project “A New Modular Architecture for Data Mining (P12645-INF)”, financed by the Austrian Fonds zur Förderung der wissenschaftlichen Forschung (FWF) of the Austrian Federal Ministry for Education, Science, and Culture. The Austrian Research Institute for Artificial Intelligence acknowledges basic financial support from the Austrian Federal Ministry for Education, Science, and Culture.


Submitted to: Machine Learning Journal, Special Issue on Inductive Logic Programming and Relational Learning
Copyright   ©  2003 Kluwer Academic Publishers
Author: Markus Mottlmarkus@oefai.at⟩
Previous Up Next