Understanding the Assumptions of K-Means Clustering