SYSTEM AND METHOD FOR EXTRACTING ENTITIES AND RELATIONSHIPS FROM RECORDS
The present disclosure relates to methods, systems, and non-transitory computer-readable media for a unique approach to processing genealogical records. For instance, the disclosed systems can receive a genealogical record in a digital format and transcribe text from the genealogical record to generate machine-readable text. The disclosed systems can process the machine-readable text using a sliding window for in-page entity and relationship extraction. The disclosed systems can also segment each page of the genealogical record to identify and categorize text blocks therefrom. Additionally, the disclosed systems can perform cross-page entity and relation extraction and reconcile entities and relationships extracted from in-page and cross-page extraction. Further, the disclosed systems can generate, from the extracted entities and relationships, family tree data instances representing family relationships between the entities, and associating biographical data with each entity. In some embodiments, the disclosed systems store the generated family tree data instances in a database.
1 . A computer-implemented method comprising:
extracting, utilizing an entity extraction machine learning model to perform in-page entity extraction, a first entity from a genealogical record by using a sliding window of the entity extraction machine learning model to analyze a first set of tokens on a first page of the genealogical record according to a predetermined token length;
extracting, utilizing the entity extraction machine learning model to perform cross-page entity extraction, a second entity from the genealogical record by shifting the sliding window to analyze a second set of tokens on a second page adjacent to the first page of the genealogical record;
determining entity relationships for the first entity and the second entity utilizing a relationship determination machine learning model; and
generating a graph data structure comprising nodes representing the first entity and the second entity, and further comprising edges representing the entity relationships for the first entity and the second entity.
2 . The computer-implemented method of claim 1 , wherein determining the entity relationships for the first entity and the second entity comprises generating reconciled entity relationships by disambiguating duplicate entities corresponding to the first entity or of the second entity determined to be mentioned a plurality of times.
3 . The computer-implemented method of claim 1 , further comprising:
segmenting, utilizing a page segmentation model, the first page and the second page of the genealogical record into text blocks based on visual characteristics and position of text of the genealogical record; and
identifying related text portions from the first page and the second page of the genealogical record based on the text blocks.
4 . The computer-implemented method of claim 3 , further comprising:
extracting, utilizing the entity extraction machine learning model to perform cross-page entity extraction, a third entity from the first page of the genealogical record and a fourth entity from the second page of the genealogical record based on the related text portions; and
determining additional entity relationships for the first entity, second entity, third entity, and the fourth entity utilizing the relationship determination machine learning model.
5 . The computer-implemented method of claim 4 , further comprising generating a modified graph data structure comprising additional nodes representing the third entity and the fourth entity, and further comprising additional edges representing the additional entity relationships.
6 . The computer-implemented method of claim 1 , further comprising:
generating normalized biographical data by standardizing biographical data extracted from the genealogical record into a consistent format; and
associating the normalized biographical data with at least one node of the nodes comprised in the graph data structure.
7 . The computer-implemented method of claim 1 , wherein extracting the second entity from the genealogical record comprises extracting the second entity from the second page adjacent to the first page, wherein the second page is a nonconsecutive page to the first page.
8 . A system comprising:
at least one processor; and
at least one non-transitory computer-readable storage medium storing instructions that, when executed by the at least one processor, cause the system to:
extract, utilizing an entity extraction machine learning model to perform in-page entity extraction, a first entity from a genealogical record by using a sliding window of the entity extraction machine learning model to analyze a first set of tokens on a first page of the genealogical record according to a predetermined token length;
extract, utilizing the entity extraction machine learning model to perform cross-page entity extraction, a second entity from the genealogical record by shifting the sliding window to analyze a second set of tokens on a second page adjacent to the first page of the genealogical record;
determine entity relationships for the first entity and the second entity utilizing a relationship determination machine learning model; and
generate a graph data structure comprising nodes representing the first entity and the second entity, and further comprising edges representing the entity relationships for the first entity and the second entity.
9 . The system of claim 8 , wherein determining the entity relationships for the first entity and the second entity comprises generating reconciled entity relationships by disambiguating duplicate entities corresponding to the first entity or of the second entity determined to be mentioned a plurality of times.
10 . The system of claim 8 , further comprising instructions that, when executed by the at least one processor, cause the system to:
segment, utilizing a page segmentation model, the first page and the second page of the genealogical record into text blocks based on visual characteristics and position of text of the genealogical record; and
identify related text portions from the first page and the second page of the genealogical record based on the text blocks.
11 . The system of claim 10 , further comprising instructions that, when executed by the at least one processor, cause the system to:
extract, utilizing the entity extraction machine learning model to perform cross-page entity extraction, a third entity from the first page of the genealogical record and a fourth entity from the second page of the genealogical record based on the related text portions; and
determine additional entity relationships for the first entity, second entity, third entity, and the fourth entity utilizing the relationship determination machine learning model.
12 . The system of claim 11 , further comprising instructions that, when executed by the at least one processor, cause the system to generate a modified graph data structure comprising additional nodes representing the third entity and the fourth entity, and further comprising additional edges representing the additional entity relationships.
13 . The system of claim 8 , further comprising instructions that, when executed by the at least one processor, cause the system to:
generate normalized biographical data by standardizing biographical data extracted from the genealogical record into a consistent format; and
associate the normalized biographical data with at least one node of the nodes comprised in the graph data structure.
14 . The system of claim 8 , further comprising instructions that, when executed by the at least one processor, cause the system to extract the second entity from the genealogical record by extracting the second entity from the second page adjacent to the first page, wherein the second page is a nonconsecutive page to the first page.
15 . A non-transitory computer-readable medium storing instructions that, when executed by at least one processor, cause a computing device to:
extract, utilizing an entity extraction machine learning model to perform in-page entity extraction, a first entity from a genealogical record by using a sliding window of the entity extraction machine learning model to analyze a first set of tokens on a first page of the genealogical record according to a predetermined token length;
extract, utilizing the entity extraction machine learning model to perform cross-page entity extraction, a second entity from the genealogical record by shifting the sliding window to analyze a second set of tokens on a second page adjacent to the first page of the genealogical record;
determine entity relationships for the first entity and the second entity utilizing a relationship determination machine learning model; and
generate a graph data structure comprising nodes representing the first entity and the second entity, and further comprising edges representing the entity relationships for the first entity and the second entity.
16 . The non-transitory computer-readable medium of claim 15 , wherein determining the entity relationships for the first entity and the second entity comprises generating reconciled entity relationships by disambiguating duplicate entities corresponding to the first entity or of the second entity determined to be mentioned a plurality of times.
17 . The non-transitory computer-readable medium of claim 15 , further comprising instructions that, when executed by the at least one processor, cause the computing device to:
segment, utilizing a page segmentation model, the first page and the second page of the genealogical record into text blocks based on visual characteristics and position of text of the genealogical record; and
identify related text portions from the first page and the second page of the genealogical record based on the text blocks.
18 . The non-transitory computer-readable medium of claim 17 , further comprising instructions that, when executed by the at least one processor, cause the computing device to:
extract, utilizing the entity extraction machine learning model to perform cross-page entity extraction, a third entity from the first page of the genealogical record and a fourth entity from the second page of the genealogical record based on the related text portions; and
determine additional entity relationships for the first entity, second entity, third entity, and the fourth entity utilizing the relationship determination machine learning model.
19 . The non-transitory computer-readable medium of claim 18 , further comprising instructions that, when executed by the at least one processor, cause the computing device to generate a modified graph data structure comprising additional nodes representing the third entity and the fourth entity, and further comprising additional edges representing the additional entity relationships.
20 . The non-transitory computer-readable medium of claim 15 , further comprising instructions that, when executed by the at least one processor, cause the computing device to extract the second entity from the genealogical record by extracting the second entity from the second page adjacent to the first page, wherein the second page is a nonconsecutive page to the first page.