Getting Started Guide

Contents

Boosting

Some of the boosting algorithms described in this section are deprecated and will be removed in a future release. This section describes the common things for AdaBoost, LogitBoost, BrownBoost algorithms. For information on the Gradient Boosted Trees algorithm, refer to Classification -> Gradient Boosted Trees .
Boosting is a set of algorithms intended to build a strong classifier from an ensemble of weighted weak
learners
by iterative re-weighting according to some accuracy measure for weak
learners
. A weak learner is a
classification or regression algorithm
that has only slightly better performance than random guessing. Weak learners are usually very simple and fast, and they focus on classification of very specific features.
Boosting algorithms include LogitBoost, BrownBoost, AdaBoost, and others. A Decision Stump classifier is one of the popular weak learners.
In
Intel DAAL
,
a weak learner is:
  • Classification algorithm for AdaBoost and BrownBoost
  • Regression algorithm for LogitBoost
Weak learners support training of the boosting model for weighted datasets.
Intel DAAL
boosting algorithms pass pointers to weak learner training and prediction objects through the parameters of boosting algorithms. Use the
getNumberOfWeakLearners()
method to determine the number of weak learners trained.
You can implement your own weak learners by deriving from the appropriate interface classes
:
  • Classification for AdaBoost and BrownBoost
  • Regression for LogitBoost
When defining your own weak learners to use with boosting classifiers, make sure the prediction component of your weak learner returns
:
  • The number from {-1, 1} in case of binary classification.
  • Class label from {0, ...,
    nClasses
    -1} for
    nClasses
    >2.
  • Some boosting algorithms like SAMME.R AdaBoost that require probabilities of classes. For description of each boosting algorithm, refer to a corresponding section in this document.

Product and Performance Information

1

Intel's compilers may or may not optimize to the same degree for non-Intel microprocessors for optimizations that are not unique to Intel microprocessors. These optimizations include SSE2, SSE3, and SSSE3 instruction sets and other optimizations. Intel does not guarantee the availability, functionality, or effectiveness of any optimization on microprocessors not manufactured by Intel. Microprocessor-dependent optimizations in this product are intended for use with Intel microprocessors. Certain optimizations not specific to Intel microarchitecture are reserved for Intel microprocessors. Please refer to the applicable product User and Reference Guides for more information regarding the specific instruction sets covered by this notice.

Notice revision #20110804