This document discusses spectral clustering, a graph-based machine learning technique. It begins with an overview of data clustering criteria such as compactness and connectivity. It then covers the key concepts of spectral clustering, including constructing a similarity graph from data, calculating the normalized cut criterion, and solving the relaxed optimization problem through eigendecomposition. The document provides pseudocode for a general spectral clustering algorithm and compares it to k-means clustering. It also discusses two common methods for deriving clusters from the eigenvectors and provides examples of spectral clustering for image segmentation.