2. The method of claim 1 , wherein generating a candidate vector representing the candidate comprises: communicating the candidate as another query to the search engine; accessing one or more other search results returned by the search engine in response to the other query; and calculating another value for each of the tokens based at least in part on the first number of appearances of the token in the documents and a third number of appearances of the token in the other search results, wherein the candidate vector comprises the other values calculated for the tokens ordered according to the token order.
1. A method comprising: accessing a target comprising a target alphanumerical string that comprises one or more words; determining one or more tokens from one or more documents, each token comprising a token alphanumerical string that comprises one or more words and appears at least once in the documents; determining a token order among the tokens; communicating the target as an original query to a search engine; accessing one or more original search results returned by the search engine in response to the original query; calculating an original value for each token based at least in part on a first number of appearances of the token in the documents and a second number of appearances of the token in the original search results; generating a target vector representing the target, the target vector comprising the original values calculated for the tokens ordered according to the token order; for each of a plurality of candidates comprising a candidate alphanumerical string that comprises one or more words: generating a candidate vector representing the candidate; and calculating a distance between the candidate vector and the target vector; and selecting a candidate from the plurality of candidates that is related to the target based on a comparison among the distances between the candidate vectors and the target vector.