# Support vector machine

Here are the key points about Support Vector Machines (SVMs):

- SVMs are supervised learning models used for classification and regression analysis.
- The goal is to find the optimal hyperplane that maximizes the margin between two classes. The points nearest the hyperplane are support vectors.
- SVMs can efficiently perform nonlinear classification using the kernel trick, implicitly mapping inputs into high-dimensional feature spaces.
- Common kernel functions include linear, polynomial, radial basis function (RBF), and sigmoid. RBF is widely used as it can handle nonlinearity.
- SVMs are effective in high dimensional spaces and have regularization parameters to avoid overfitting.
- SVMs are memory efficient, since they use a subset of training points for prediction.
- They are highly flexible and can be adapted for different tasks, and have solid theoretical guarantees regarding overfitting.
- Limitations include being prone to overfitting with noisy data, and insensitivity to uninformative features due to nonlinear kernels.
- SVMs are used for diverse applications like image recognition, text analysis, and anomaly detection due to high accuracy and ability to model complex nonlinear decision boundaries.

SVMs are versatile machine learning models that can be customized for classification and regression tasks using different kernel functions, and are widely used due to their strong generalization performance.