Presentation on theme: "Data Set used. K Means K Means Clusters 1.K Means begins with a user specified amount of clusters 2.Randomly places the K centroids on the data set 3.Finds."— Presentation transcript:
K Means Clusters 1.K Means begins with a user specified amount of clusters 2.Randomly places the K centroids on the data set 3.Finds all the points closest to each centroid and makes them clusters 4.Changes the centroid of each cluster to the mean of the subset of points 5.Repeats step 5 until the change of the centroids is minimal.
Kmeans Implementation Issues If K is too small the algorithm did not converge (no stable clusters) – Further investigation of this is needed If K is too small, some clusters were null
Interesting case The border points are clearly defined by distance not density We ask for each point “What is the closest centroid?”
Why we like it It is relatively straight forward in concept and implementation Good for globular data We can specify the amount of clusters
Why we don’t like it Subject to initialization problems and heterogeneous results. Not good for non-globular data (but can find clusters given a large enough K) Sensitive to outliers (cleaning data set helps) Data must have the notion of a “center”
Variations Bisecting K-means K-median K - medoid Several others
DBSCAN Algo Pick a point P, find distance of every next point P' from P. If(Dist < K Factor) P' is in same cluster as P. else if (Dist = K Factor) P' is a border point. else Allot P' a new cluster.
Issues faced When adding a new point P' to the present cluster, the whole cluster of P' has to be merged with the present cluster. No lower bound on number of clusters. Choice of K Factor
Further Enhancements Calculation for K-Factor and clustering could be integrated together. Dynamic programming could be made use of since many computations are being repeated. Static vs Dynamic data