Support Vector Machines for regression (SVR) work by finding a hyperplane in a high-dimensional space that best fits the data. Unlike traditional linear regression, which tries to minimize the error between the prediction and the data point, SVR tries to fit the best line within a predefined threshold (epsilon-tube) of error.

Pros of SVM:

  • Provides non-linear modeling.
  • semi resistant to over fitting.

Cons of SVM:

  • Does not directly provide probability estimates.
  • Can be computationally expensive on large datasets.

Regressors

Model NameSummaryLink to sklearn-documentation
LinearSVRSimilar to SVR with a linear kernel but implemented via liblinear rather than libsvm. It scales better to large numbers of samples and provides more flexibility in loss functions and regularization.Documentation
NuSVRA variation of SVR that uses a parameter (nu) to control the number of support vectors. It is mathematically equivalent to SVR but uses a different parameterization to bound the fraction of training errors.Documentation
SVRThe standard Epsilon-Support Vector Regression. It uses a “tube” of insensitivity where errors are ignored if they are smaller than a specified , allowing for non-linear fit via kernels (like RBF or Polynomial).Documentation

Classifiers

Model NameSummaryLink to sklearn-documentation
LinearSVCSimilar to SVC with a kernel='linear', but implemented via liblinear. It is faster, scales better to large datasets, and supports more flexibility in loss functions and penalty types.Documentation
NuSVCSimilar to SVC but uses a parameter (nu) to control the number of support vectors. The parameter represents an upper bound on the fraction of margin errors and a lower bound of the fraction of support vectors.Documentation
SVCThe C-Support Vector Classification. It uses a penalty parameter to handle the trade-off between maximizing the margin and minimizing misclassifications. It supports non-linear kernels like RBF, Poly, and Sigmoid.Documentation