Intel® oneAPI Data Analytics Library Developer Guide and Reference
A newer version of this document is available. Customers should click here to go to the newest version.
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 
 of size p and a vector of class labels 
, where 
 describes the class to which the feature vector 
 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:
Initialize weights
 for 
.For
:Train the weak learner
 using weights 
Choose a confidence value
.Update
, where 
 is a normalization factor.
Output the final hypothesis:
 
     
Prediction Stage
Given the AdaBoost classifier and r feature vectors 
, the problem is to calculate the final class:
 
   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:
Python*