1. A method for identifying clusters within a collection of data entities, the method comprising: defining a metric space over the data entities, a distance function of the metric space satisfying a triangle inequality; determining, based on the distance function of the metric space, a value for a number of clusters that minimizes a number of data bits used to define a model of the collection of data entities, such that the model describes the collection of data entities using a minimum description length (MDL); and assigning data entities of the collection of data entities to the clusters, the number of clusters corresponding to the determined value.