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 the past decade, 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 and reference guide
Consult these installation
instructions for details on how to install this software if you are using a Debian, Ubuntu, or Fedora-based
system. If you want to build the code from source yourself, download
is free software; you can redistribute it and/or modify it under
the terms of
the GNU General
Public License (version 3) as published by
the Free Software
- NEW: TiMBL server functionality is now in a separate package, TimblServer. MBT and Frog require both Timbl and TimblServer.
Book: Memory-Based Language
Processing - Daelemans, W., and Van den Bosch,
A. (2005). Cambridge, UK: Cambridge University Press.
Guide (66 pages, 498 kB PDF); Daelemans, W.,
Zavrel, J., Van der Sloot, K., and Van den Bosch, A. (2010). TiMBL:
Tilburg Memory Based Learner, version 6.3, Reference Guide. ILK
Research Group Technical Report Series no. 10-01.
guide (34 pages, 129 kB PDF); Van der Sloot,
K. (2010). TiMBL: Tilburg Memory Based Learner, version 6.3, API
Guide. ILK Research Group Technical Report Series no. 10-03.
TimblServer Manual (12 pages, 62 Kb PDF); Van der Sloot, K. (2010). TimblServer: Tilburg Memory-Based Learner Server, version 1.0, Manual. ILK Research Group Technical Report Series no. 10-02.
- Fast, decision-tree-based implementation of k-nearest neighbor classification
- Implementations of IB1 and IB2, IGTree, TRIBL, and TRIBL2 algorithms
- Similarity metrics: Overlap, MVDM, Jensen-Shannon and Jeffrey Divergence, Dot product, Cosine
- Feature weighting metrics: information gain, gain ratio, chi squared, shared variance
- Per-value similarity metrics: Levenshtein, Dice coefficient
- Distance weighting metrics: inverse, inverse linear, exponential decay
- Multi-CPU support
- Extensive verbosity options to inspect nearest neighbor sets
- Server functionality and extensive API
- Fast leave-one-out testing and internal cross-validation
- Handles user-defined example weighting