SVM Learner

This node trains a support vector machine on the input data. It supports a number of different kernels (HyperTangent, Polynomial and RBF). The SVM learner supports multiple class problems as well (by computing the hyperplane between each class and the rest), but note that this will increase the runtime.

The SVM learning algorithm used is described in the following papers: Fast Training of Support Vector Machines using Sequential Minimal Optimization, by John C. Platt and Improvements to Platt's SMO Algorithm for SVM Classifier Design, by S. S. Keerthi et. al.

Options

Class column
Choose the column that contains the nominal target variable.
Overlapping penalty
The overlapping penalty is useful in the case that the input data is not separable. It determines how much penalty is assigned to each point that is misclassified. A good value for it is 1.
Kernel type
Choose the kernel function for the support vector machine. Each kernel has its own parameters which can be configured below.
  • Polynomial: Polynomial kernel of the form (gamma * x * y + bias)^power.
  • HyperTangent: Hyperbolic tangent kernel of the form tanh(kappa * x * y + delta).
  • RBF: Radial Basis Function kernel of the form exp(-||x - y||^2 / (2 * sigma^2)).
Bias
The bias parameter for the polynomial kernel.
Power
The power parameter for the polynomial kernel.
Gamma
The gamma parameter for the polynomial kernel.
Kappa
The kappa parameter for the hyperbolic tangent kernel.
Delta
The delta parameter for the hyperbolic tangent kernel
Sigma
The sigma parameter for the Radial Basis Function (RBF) kernel.

Input Ports

Icon
Datatable with training data.

Output Ports

Icon
Trained Support Vector Machine.

Popular Predecessors

Views

SVM View
Shows the trained Support Vector Machines for each class with their corresponding support vectors.

Workflows

Links

Developers

You want to see the source code for this node? Click the following button and we’ll use our super-powers to find it for you.