Developer Guide and Reference

  • 2021.3
  • 06/28/2021
  • Public Content
Contents

BrownBoost Classifier

BrownBoost is a boosting classification algorithm. It is more robust to noisy data sets than other boosting classification algorithms [Freund99].
BrownBoost 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 a two-class BrownBoost classifier.
Training Stage
The model is trained using the Freund method [Freund01] as follows:
  1. Calculate LaTex Math image., where:
    • LaTex Math image. is an inverse error function,
    • LaTex Math image. is a target classification error of the algorithm defined as LaTex Math image.
    • LaTex Math image.
    • LaTex Math image. is the error function,
    • LaTex Math image. is a hypothesis formulated by the
      i
      -th weak learner, LaTex Math image.,
    • LaTex Math image. is the weight of the hypothesis.
  2. Set initial prediction values: LaTex Math image..
  3. Set “remaining timing”: LaTex Math image..
  4. Do for LaTex Math image. until LaTex Math image.
    1. With each feature vector and its label of positive weight, associate LaTex Math image..
    2. Call the weak learner with the distribution defined by normalizing Lmath:
      W_i(x, y)
      to receive a hypothesis LaTex Math image..
    3. Solve the differential equation
      LaTex Math image.
      with given boundary conditions LaTex Math image. and LaTex Math image. to find LaTex Math image. and LaTex Math image. such that either LaTex Math image. or LaTex Math image., where LaTex Math image. is a given small constant needed to avoid degenerate cases.
    4. Update the prediction values: LaTex Math image..
    5. Update “remaining time”: LaTex Math image..
    End do
The result of the model training is the array of
M
weak learners LaTex Math image..
Prediction Stage
Given the BrownBoost classifier and
r
feature vectors LaTex Math image., the problem is to calculate the final classification confidence, a number from the interval LaTex Math image., using the rule:
LaTex Math image.

Batch Processing

BrownBoost 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, a BrownBoost 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 BrownBoost classifier. The only training method supported so far is the Y. Freund’s method.
nClasses
2
The number of classes.
weakLearnerTraining
DEPRECATED
: Pointer to an object of the weak learner training class
USE INSTEAD
: Pointer to an object of the classification stump training class
DEPRECATED
: Pointer to the training algorithm of the weak learner. By default, a stump weak learner is used.
USE INSTEAD
: Pointer to the classifier training algorithm. Be default, a classification stump with gini split criterion is used.
weakLearnerPrediction
DEPRECATED
: Pointer to an object of the weak learner prediction class
USE INSTEAD
: Pointer to an object of the classification stump prediction class
DEPRECATED
: Pointer to the prediction algorithm of the weak learner. By default, a stump weak learner is used.
USE INSTEAD
: Pointer to the classifier prediction algorithm. Be default, a classification stump with gini split criterion is used.
accuracyThreshold
0.01
BrownBoost training accuracy LaTex Math image..
maxIterations
100
The maximal number of iterations for the BrownBoost algorithm.
newtonRaphsonAccuracyThreshold
LaTex Math image.
Accuracy threshold of the Newton-Raphson method used underneath the BrownBoost algorithm.
newtonRaphsonMaxIterations
100
The maximal number of Newton-Raphson iterations in the algorithm.
degenerateCasesThreshold
LaTex Math image.
The threshold used to avoid degenerate cases.
Prediction
For a description of the input and output, refer to Classification Usage Model.
At the prediction stage, a BrownBoost 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 BrownBoost classifier.
nClasses
2
The number of classes.
weakLearnerPrediction
DEPRECATED
: Pointer to an object of the weak learner prediction class
USE INSTEAD
: Pointer to an object of the classification stump prediction class
DEPRECATED
: Pointer to the prediction algorithm of the weak learner. By default, a stump weak learner is used.
USE INSTEAD
: Pointer to the classifier prediction algorithm. Be default, a classification stump with gini split criterion is used.
accuracyThreshold
0.01
BrownBoost training accuracy LaTex Math image..

Examples

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

Product and Performance Information

1

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