ILPnet2 Toolbox
Dear ILPnet member,
The software package you are about to download is the first step
towards an ILPnet toolbox, i.e., a software platform for running,
using and teaching ILP algorithms. In its first incarnation, the
toolbox consists of the data mining platform Kepler, which offers
reasonable basic functionality for loading and manipulating
multirelational data, two ILP plug-in algorithms, namely Midos and
Progol, and an exemplary step-by-step guide for using and learning
about Progol in Kepler, including prepared and ready-to-load Kepler
"workspaces" for the "animals" and "Mutagenesis" problems. (Kepler is
being made available to ILPnet members courtesy of the Knowledge
discovery team at Fraunhofer AIS, Sankt Augustin; the ILP algorithms
such as Midos and Progol are being made available to the project
members courtesy of their developers. Progol is freely available for
academic research and teaching. Progol is also available under license
for commercial research. To apply for such a license, please write to
shm@doc.ic.ac.uk.)
You can put this package to several uses, and we can certainly
recommend it as a method to allow students to quickly get a brief
hands-on impression of an algorithm in a graphical environment:
- its primary use in our view is teaching. We are using the platform
as parts of the hands-on exercises for students in our classes. We ask
the students to work their way through the step-by-step introduction
to Kepler, and then ask them to follow the step-by-step instructions
for playing with Progol. Both of these are very well tested out, and
our students are reliably able to carry them out.
- for Midos, there is not yet a step-by-step introduction, but there
is a section in chapter 4 of the relational data mining
(Dzeroski/Lavrac) book that you might find useful.
- you can of course in the same fashion use Kepler to allow people to
quickly play with other included algorithms, such as decision
trees,... Some of them are already included in the basic Kepler
step-by-step section in the manual.
For the ILP practitioner and/or researcher, Kepler offers potential
but also some limitations which means you should have a look yourself
whether you find it useful for the following purposes:
- we have found Kepler useful for preparing ILP data. You might want
to have a look in particular at the "Power Query" operator which
graphically allows complex conjunctive queries to be formulated,
including construction of new attributes and sampling. There is also a
"Prolog Rules" operator which allows new relations to be defined based
on a Prolog rule, but there is currently no documentation available on
this operator. Once you have prepared interesting data in Kepler, you
can always export them in a simple Prolog-like format to keep working
with the data outside of Kepler (see also next point). See the Kepler
manual on how to do that.
- finally, Kepler of course can be used for actually analyzing real
world data, and we find that useful for the basic and well tested
algorithms such as C4.5 and Midos. As for Progol, we have thoroughly
tested the step-by-step guide, but for real down and dirty work with
such an ILP algorithm have found that it is probably best to work
directly with the algorithm on the command line, both due to the
unavoidable bugs which are still present, and the additional
complexity of preparing complex input with a graphical tool. From a
machine learning point of view, Kepler is also lacking the required
testing facilities (for example, you cannot really do accuracy testing
or crossvalidation unless offered by the plug-in tool itself).
- as a long-term goal, we are planning to make further ILP tools
available as plug-ins to this platform, and to offer step by step
guides as we currently have it for Progol. In principle, everybody
can develop the necessary wrappers to make their algorithm available
as a plug-in in Kepler, and there is a guide (written by Mathias
Kirsten a while ago) on how to do that. Since this has turned out more
difficult to use than anticipated, we do not recommend trying this
until a better version of the guide is available. However, this will
require significant additional manpower, so it may not actually
materialize.
In sum, we hope you find this package useful for teaching and perhaps
also for experimenting yourself!
(Research group Knowledge discovery and Machine learning,
Otto-von-Guericke-Univ. Magdeburg)
P.S. A word of caution. We are providing this package as a service to
the community, and have done our best to test the step-by-step guide
and make it work reliably. We will try to fix any error in the step by
step guide and the accompanying data, but we cannot fix bugs in the
basic Kepler platform. We are discussing with Fraunhofer AIS whether
someone could be found for doing that, but we have not found a
solution yet.
P.P.S Questions about the ILP Toolbix should be addressed to
Lourdes Pena at
pena@iws.cs.uni-magdeburg.de
back to index