Support Vector Machines (SVM) are supervised machine learning algorithms primarily used for classification, working by finding the hyperplane that optimally separates classes in n-dimensional space. They can be extended to handle non-linear separations through techniques like kernel functions and support vector classifiers, which allow for some error in classification. Artificial Neural Networks (ANN) are also covered, describing their structure, function, and applications in various fields such as image and text processing, emphasizing their ability to model complex, non-linear relationships.