1. A method for anonymizing a dataset that correlates a set of entities with respective attributes, the method comprising: determining, by one or more processors on one or more computers, clusters of similar entities from the dataset, wherein the determining comprises: the one or more processors partitioning the set of entities into a first group of entities with similar attributes to one another and a complement group of entities with similar attributes to one another, wherein the partitioning comprises: the one or more processors choosing a reference entity from the set of entities; the one or more processors determining a symmetric set of attributes based on the reference entity's attributes and on an average of the attributes of the set of entities being partitioned, wherein the average of the attributes of the set of entities being partitioned is calculated as a centroid of the attributes, and wherein the symmetric set of attributes of a reference entity is determined as a reflection of attributes of the reference entity about the centroid; and the one or more processors assigning each entity to the first group or to the complement group depending on whether the entity's attributes are more similar to those of the reference entity or to those of the symmetric set of attributes respectively; identifying, by the one or more processors, the clusters of similar entities by recursively repeating the partitioning on the first group and on the complement group until every group meets one or more size criteria; and creating, by the one or more processors, an anonymous version of the dataset, wherein creating the anonymous version comprises: the one or more processors calculating, for one of the clusters of similar entities, an anonymous value for a given attribute; and the one or more processors assigning the anonymous value of the attribute to each entity in the cluster.