Linear SVM (Support Vector Machine)
Support Vector Machines (SVMs) are supervised learning models with associated learning algorithms that analyze data used for classification and regression analysis.
Given a set of training examples, each marked as belonging to one or the other of two categories, an SVM training algorithm builds a model that assigns new examples to one category or the other, making it a non-probabilistic binary linear classifier.
Apache Ignite Machine Learning module only supports Linear SVM. For more information look at SVM in Wikipedia.
Model
A Model in the case of SVM is represented by the class SVMLinearClassificationModel
. It enables a prediction to be made for a given vector of features, in the following way:
SVMLinearClassificationModel model = ...;
double prediction = model.predict(observation);
Presently Ignite supports a few parameters for SVMLinearClassificationModel:
-
isKeepingRawLabels
- controls the output label format: -1 and +1 for false value and raw distances from the separating hyperplane (default value: false) -
threshold
- a threshold to assign +1 label to the observation if the raw value is more than this threshold (default value: 0.0)
SVMLinearClassificationModel model = ...;
double prediction = model
.withRawLabels(true)
.withThreshold(5)
.predict(observation);
Apache, Apache Ignite, the Apache feather and the Apache Ignite logo are either registered trademarks or trademarks of The Apache Software Foundation.