1. A method performed by a computer for clustering a plurality of documents in a structure comprised of a plurality of clusters hierarchically organized, wherein each document includes a plurality of words and is represented as a set of (document, word) pairs, the method comprising: accessing the document collection; performing a clustering process that creates a hierarchy of clusters that reflects a segregation of the documents in the collection based on the words included in the documents, wherein a document in the collection is assigned to a first cluster in the hierarchy based on a first segment of the respective document, and the respective document is assigned to a second cluster in the hierarchy based on a second segment of the respective document, wherein the first and second clusters are associated with different paths of the hierarchy comprising the steps: assigning the document collection to a first class; setting a probability parameter to an initial value; determining, for each document in the collection at the value of the parameter, a probability of an assignment of the document in the collection to a cluster in the hierarchy based on a word included in the document and the first class; determining whether the first class has split into two child classes, wherein each child class reflects a cluster descendant from an initial cluster reflected by the first class; and increasing the value of the parameter based on the determination whether the first class has split into two child classes, storing a representation of the hierarchy of clusters in a memory; and making the representation available to an entity in response to a request associated with the document collection.