peewit home

Welcome to the Homepage of Peewit.


peewit is a framework for running machine learning experiments that does not provide any productive parts. It assumes a certain uniformity in the relations of experimental components but is otherwise rather universal.

The goal of peewit is to support experimental housekeeping. The user explicitly decomposes the experiment into components such that the machine to some extend gets grip on the experimental structure. One way to play thereon is by prolonged life-time of names: if the user give names to things, these names are applicable throughout different phases of a project. Another profit is comfortable parallelization of concurrent sub-experiments.

There is a manual that is bit a stup but in contains an up-to-date describtion of der experiment model. The easiest access to the concept is trough the example experiments that are shipped with the prototype.


The python implementation (link below) is sufficiently developed to illustrate the approach but still has deficiencies. It lacks sound documentation and it weakly tested. You can get an impression on how peewit is used simply by reading the examples modules included in the download.

peewit 0.10 (zipped tar-file)

The download contains the following six directories: example_data_sets/, example_project/, example_user_packages/, python/, stuff/, and unittests/. The implementation of the framework is included in the directory python/.

Please read peewit/doc/readme.txt more information on the distribution and for instructions on making the examples run. peewit depends on python-3 and on numpy. For full functionality you further have to provide unison, ssh, git, and matplotlib 1.20 as well as libsvm for the example project.


Version History

2014-5-7, main changes in 0.10
  • sidecubes: cubes stemming from other branches are store as side-cube
  • ascent returns sequence
  • timeout on descent
  • order contraint in vcube-chain drob
2013-2-11, changes in 0.9
  • ported to python-3
2012-7-9, main changes in 0.8
  • core rewrite, dropped features:
    • parent experiments
    • multi-dim descent values
  • descent values from v-cubes
  • sibling-values in proper object instead of dict
2011-11-4, main changes in 0.7
  • semi-unform v-cube: number of descent values may depend on ancestor values
  • run-number on result representations
  • private repo-dirs for run-commits
For more history see Change Log Page


We are grateful to build on python, numpy, unison, git, and matplotlib, as well as for working with pydev.


If you want to discuss the concept, code improvements or extensions, or if you have questions on usage, please contact


Other peewit pages:

small ke-icon

Knowledge Engineering Group

Fachbereich Informatik
TU Darmstadt

S2|02 D203
Hochschulstrasse 10

D-64289 Darmstadt

Telefon-Symbol+49 6151 16-21811
Fax-Symbol +49 6151 16-21812

A A A | Drucken | Impressum | Sitemap | Suche | Mobile Version
zum Seitenanfangzum Seitenanfang