Developer Guide and Reference

  • 2021.1
  • 12/04/2020
  • 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
      t = 0
      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)
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.