1. A computer-implemented method of clustering comprising: obtaining preference information of a user for a data set comprising a plurality of objects; calculating preference degrees for all ordered pairs of the objects in the data set based on the preference information, wherein the preference degrees are asymmetrical; calculating similarity measures for all pairs of objects in the data set based on the preference degrees calculated for respective pairs of objects, wherein the similarity measures are symmetrical; generating one or more clusters from the data set based on the similarity measures between objects, wherein a cluster comprises one or more objects from the data set; and providing the one or more clusters to the user, wherein the user has access to the objects within the clusters.