Support Vector Machine (SVM) is a type of machine learning algorithm that can be used for classification and regression tasks. In SVM, the kernel function is used to map the input data from the original feature space to a higher-dimensional feature space. Linear SVM is a type of binary classification algorithm that works well for linearly separable data. SVM have several hyperparameters that need to be set before training the model. These hyperparameters control the behavior of the SVM algorithm and can significantly affect the performance of the model. SVM is a versatile machine learning algorithm that has various applications in different fields. The hard-margin SVM aims to separate the classes perfectly with a linear decision boundary, while the soft-margin SVM allows some misclassifications to handle nonlinearly separable data. The chapter discusses the mathematics behind SVM, including the optimization problem, the Lagrange multipliers, and the dual problem.