# Support Vector Machines

The *Support Vector Machine (SVM)* algorithm is part of a family of *classifier* and *regression* algorithms that aim to predict the *class* or *value* of an observation. The SVM algorithm identifies data points, called support vectors, that generate the widest possible margin between two classes in order to yield the best classification generalization. The SVM is made powerful by the use of kernels, a function that computes the dot product of two vectors, thereby allowing us to effectively skip feature transformations and consequently improve computation performance. In this post, we walk through the application of the *SVM* algorithm through linear and nonlinear modeling.