11. A computer program product, stored on a machine-readable storage device that, when executed by data processing apparatus, causes the data processing apparatus to perform operations comprising: generating a raw name detection model using a collection of family names and an annotated corpus including a collection of n-grams, each n-gram having a corresponding probability of occurring as a respective name in the annotated corpus; applying the raw name detection model to a collection of semi-structured data to form annotated semi-structured data, the annotated semi-structured data identifying n-grams identifying names and n-grams not identifying names; applying the raw name detection model to a large unannotated corpus to form a large annotated corpus data identifying n-grams of the large unannotated corpus identifying names and n-grams not identifying names; and generating a name detection model including: deriving a name model using the annotated semi-structured data identifying names and the large annotated corpus data identifying names, deriving a not-name model using the semi-structured data not identifying names, and deriving a language model using the large annotated corpus.
11. A computer program product, stored on a machine-readable storage device that, when executed by data processing apparatus, causes the data processing apparatus to perform operations comprising: generating a raw name detection model using a collection of family names and an annotated corpus including a collection of n-grams, each n-gram having a corresponding probability of occurring as a respective name in the annotated corpus; applying the raw name detection model to a collection of semi-structured data to form annotated semi-structured data, the annotated semi-structured data identifying n-grams identifying names and n-grams not identifying names; applying the raw name detection model to a large unannotated corpus to form a large annotated corpus data identifying n-grams of the large unannotated corpus identifying names and n-grams not identifying names; and generating a name detection model including: deriving a name model using the annotated semi-structured data identifying names and the large annotated corpus data identifying names, deriving a not-name model using the semi-structured data not identifying names, and deriving a language model using the large annotated corpus. 16. The computer program product of claim 11 , wherein the raw name model is generated using a collection of foreign family names.