The EnsembleSVM library offers functionality to perform ensemble learning using Support Vector Machine (SVM) base models. In particular, we offer routines for binary ensemble models using SVM base classifiers. Experimental results have shown the predictive performance to be comparable with standard SVM models but with drastically reduced training time. Ensemble learning with SVM models is particularly useful for semi-supervised tasks.
The library has been updated and features a variety of new functionality as well as more efficient implementations of original features. The following key improvements have been made:
Support for multithreading in training and prediction with ensemble models. Since both of these are embarassingly parallel, this has induced a significant speedup (3-fold on quad-core).
Extensive programming framework for aggregation of base model predictions which allows highly efficient prototyping of new aggregation approaches. Additionally we provide several predefined strategies, including (weighted) majority voting, logistic regression and nonlinear SVMs of your choice -- be sure to check out the
esvm-edit tool! The provided framework also allows you to efficiently program your own, novel aggregation schemes.
Full code transition to C++11, the latest C++ standard, which enabled various performance improvements. The new release requires moderately recent compilers, such as
gcc 4.7.2+ or
Generic implementations of convenient facilities have been added, such as thread pools, deserialization factories and more.
The API and ABI have undergone significant changes, many of which are due to the transition to C++11.
- Operating System:
Mac Os X,
Windows Under Cygwin,
- Data Formats:
- JMLR-MLOSS Publication:
Support Vector Machine,
Large Scale Learning,