Developer Guide for Intel® Data Analytics Acceleration Library 2019 Update 5

Details

Given n feature vectors x1=(x11,…,x1p),..., xn=(xn1,…,xnp) of size p, the number of classes K, and a vector of class labels y=(y1,…,yn), where yi {0, 1 ,... ,K-1}, the problem is to build a multi-class classifier using a two-class (binary) classifier, such as a two-class SVM.

Training Stage

The model is trained with the One-Against-One method that uses the binary classification described in [Hsu02] as follows (for more references, see the Bibliography in [Hsu02]): For each pair of classes (i, j), train a binary classifier, such as SVM. The total number of such binary classifiers is K(K-1)/2.

Prediction Stage

Given a new feature vector xi, the classifier determines the class to which the vector belongs.

Intel DAAL provides two methods for class label prediction:

Training Alternative

If for each pair of classes you already have a pre-trained model, you can use the Model Builder class to get an Intel DAAL Multi-class Classifier with these two-class classifiers (for example, two-class SVMs). After the model is built, you can proceed to the prediction stage.

For general information on using the Model Builder class, see Training and Prediction. For details on using the Model Builder class for Multi-class Classifier, see Usage of training alternative.