1. A computer-implemented method, comprising: identifying phrase candidates from text string entries; determining, using one or more computers, a similarity between one or more pairs of the phrase candidates, the determining based on one or more contexts for each phrase candidate of the pairs of phrase candidates, wherein the one or more contexts for a particular phrase candidate are features in one or more text string entries that contain the particular phrase candidate; clustering phrase candidates into one or more clusters based on the similarity determined between one or more pairs of phrase candidates; identifying, for the phrase candidates in the one or more clusters, one or more non-common features, wherein non-common features have relationships to particular phrase candidates such that the non-common features weaken the similarity between one or more pairs of phrase candidates in the one or more clusters; filtering the one or more non-common features from the respective phrase candidates in each cluster to generate filtered clusters; and determining a new similarity between the one or more pairs of the phrase candidates, the determining based on the one or more contexts for each phrase candidate of the pairs of phrase candidates in the generated filtered clusters.