Support Vector Machines (SVM) are supervised machine learning algorithms used for classification and regression. They work by finding the optimal hyperplane that separates data into distinct classes. SVM handles both linear and non-linear data using techniques like the kernel trick.