What are the challenges with K-Means?

Following are the challenges faced by K-Means Clustering:

  1. k-Means doesn’t perform well if the clusters have varying sizes, different densities, or non-spherical shapes.
  2. Has to be run for a certain amount of iteration or it would produce a suboptimal result.
  3. Computationally expensive as distance is to be calculated from each centroid to all data points.
  4. Can’t handle high dimensional data
  5. Number of clusters need to be specified
  6. Since initial centroids are arbitrarily chosen, the result is not exactly replicable.
  7. Shows out of memory error for large datasets