Developer Guide and Reference

  • 2021.1
  • 12/04/2020
  • Public Content
Contents

AdaBoost Classifier

AdaBoost (short for “Adaptive Boosting”) is a popular boosting classification algorithm. AdaBoost algorithm performs well on a variety of data sets except some noisy data [Freund99].
AdaBoost is a binary classifier. For a multi-class case, use Multi-class Classifier framework of the library.

Details

Given
n
feature vectors LaTex Math image. of size
p
and a vector of class labels LaTex Math image. , where LaTex Math image. describes the class to which the feature vector LaTex Math image. belongs, and a weak learner algorithm, the problem is to build an AdaBoost classifier.
Training Stage
The following scheme shows the major steps of the algorithm:
  1. Initialize weights LaTex Math image. for
    i = 1, …, n
    .
  2. For LaTex Math image. :
    1. Train the weak learner LaTex Math image. using weights LaTex Math image.
    2. Choose a confidence value LaTex Math image. .
    3. Update LaTex Math image. , where LaTex Math image. is a normalization factor.
  3. Output the final hypothesis:
    LaTex Math image.
Prediction Stage
Given the AdaBoost classifier and
r
feature vectors LaTex Math image. , the problem is to calculate the final class:
LaTex Math image.

Batch Processing

AdaBoost classifier follows the general workflow described in Classification Usage Model.
Training
For a description of the input and output, refer to Classification Usage Model.
At the training stage, an AdaBoost classifier has the following parameters:
Parameter
Default Value
Description
algorithmFPType
float
The floating-point type that the algorithm uses for intermediate computations. Can be
float
or
double
.
method
defaultDense
The computation method used by the AdaBoost classifier. The only training method supported so far is the Y. Freund’s method.
weakLearnerTraining
Pointer to an object of the stump training class
Pointer to the training algorithm of the weak learner. By default, a stump weak learner is used.
weakLearnerPrediction
Pointer to an object of the stump prediction class
Pointer to the prediction algorithm of the weak learner. By default, a stump weak learner is used.
accuracyThreshold
0.01
AdaBoost training accuracy.
maxIterations
100
The maximal number of iterations for the algorithm.
Prediction
For a description of the input and output, refer to Classification Usage Model.
At the prediction stage, an AdaBoost classifier has the following parameters:
Parameter
Default Value
Description
algorithmFPType
float
The floating-point type that the algorithm uses for intermediate computations. Can be
float
or
double
.
method
defaultDense
Performance-oriented computation method, the only method supported by the AdaBoost classifier at the prediction stage.
weakLearnerPrediction
Pointer to an object of the stump prediction class
Pointer to the prediction algorithm of the weak learner. By default, a stump weak learner is used.

Examples

C++ (CPU)
Batch Processing:
Java*
There is no support for Java on GPU.
Batch Processing:

Product and Performance Information

1

Performance varies by use, configuration and other factors. Learn more at www.Intel.com/PerformanceIndex.