Clustering describes a collection of unsupervised methods whose aim is to partition an overall data set into a significantly smaller number of ``clusters''. These methods in general require some kind of distance measure among the data entities in order to group them together and identify each data entity with one cluster.