Active Learning Algorithms - Source Code

We provide an implementation of four SVM-based active learning algorithms:  "Simple", "Self Conf", "KFF", and "Balanced".  See references (1) and (2) for further information regarding these algorithms.

This implementation has two main components: Experimenter and Learner. The Experimenter outputs a learning curve graph (for the given algorithm) based on k-fold cross validation. The learner implements a standard active learner interface ("learn", "query" and "classify"). The base code is a Java 1.4.* code. We also provide a Matlab code (wrapper) for the learner component. All relevant parameters are fully configurable via a textual configuration file.

Documentation Matlab Readme Click to download pdf
Source Code Java implementation. Click to download zip; The code is written in J2SE 1.4.*
Matlab wrapper: read the following readme.pdf; download the wrapper files zip

Note: the current version is a Beta (ver. 0.1)

  1. Y, Baram, R. El-Yaniv, K. Luz. Online Choice of Active Learning Algorithms. JMLR 5:255-291, 2004. link

  2. T. Osugi, D. Kun, and S. Scott. Balancing Exploration and Exploitation: A New Algorithm for Active Machine Learning. In Proceedings of ICDM, to appear. November 2005. link

Credit Ron Begleiter provided the current implementation on top of Kobi Luz's code
This code 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; either version 2 of the License, or (at your option) any later version. This code is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License (GPL) for more details.