Sharpened dimensionality reduction (SDR) sharpens original data before dimensionality reduction to create visually segregrated sample clusters. user-guided labeling. Each distinct cluster can then be labeled and used to further analyze an otherwise unlabeled data set. Written in C++, SDR scales well with large high-dimensional data.