1. A system that detects similarities between name strings in a document set, comprising: a processor and a memory, the memory comprising a preprocessing module, a matching module and a generation module; the preprocessing module configured to: extract a plurality of name strings from the document set by generating additional name strings based on an alternative spelling of one or more name strings in the document set, each name string comprising a similar entity with names that are misspelled, mistranslated, incorrectly transcribed, have multiple aliases, and/or have multiple equally valid spellings, the alternate spelling comprising determining typical misspellings, creating language specific lists of spelling corrections, and generating the alternative spelling based on the spelling corrections; the matching module configured to: detect possible matching pairs from the plurality of name strings, and detect a plurality of similarity scores to each of the possible matching pairs using a plurality of algorithms that execute in parallel; and the generation module configured to: generate a set of equivalent names by its relating name strings from the possible matching pairs based on a comparison between the similarity scores and a threshold.
5. The system of claim 1 , wherein the generation module is configured to generate a set of equivalent names by selecting from the plurality of similarity scores for each possible matching pair the highest similarity score for the pair and comparing the highest similarity score for each pair to the threshold.