Centre for Language and Speech Technology


“Tilburg Memory-Based Learner„

TiMBL is an open source software package implementing several memory-based learning algorithms, among which IB1-IG, an implementation of k-nearest neighbor classification with feature weighting suitable for symbolic feature spaces, and IGTree, a decision-tree approximation of IB1-IG. All implemented algorithms have in common that they store some representation of the training set explicitly in memory. During testing, new cases are classified by extrapolation from the most similar stored cases.

For over fifteen years TiMBL has been mostly used in natural language processing as a machine learning classifier component, but its use extends to virtually any supervised machine learning domain. Due to its particular decision-tree-based implementation, TiMBL is in many cases far more efficient in classification than a standard k-nearest neighbor algorithm would be.


Download & Installation

Timbl is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation.

To download and install Timbl:

  1. First check if there are up-to-date packages included in your distribution's package manager. There are packages for Alpine Linux, Arch Linux (AUR), macOS (homebrew), Debian and derivates like Ubuntu.
  2. If not, we recommend you use our docker container via docker pull proycon/timbl. It includes Timbl and all necessary dependencies.
  3. Alternatively, you can always download, compile and install Timbl manually, as shown next.

Manual installation

To compile Timbl manually consult the included INSTALL document, you will need current versions of the following dependencies of our software:

As well as the following 3rd party dependencies:



Several wrappers, bindings and other extensions to TiMBL have been developed:

TiMBL is a core component of various NLP software systems such as MBT (memory-based tagger generator), Frog (Dutch morpho-syntactic analyzer), Gecco (Context-sensitive spelling corrector, used by Valkuil.net for Dutch, and Fowlt.net for English), and SoothSayer (Dutch word completion).

The development and improvement of Frog also relies on your bug reports, suggestions, and comments. Use the github issue tracker or mail lamasoftware (at) science.ru.nl.