IP Library Granted Patent US 12,154,008
Granted Patent B2
US 12,154,008 · App. 17/199,691 · Granted Nov 26, 2024

Entity analysis system

Inventors: Amit R. Kapur (Venice, CA); Steven F. Pearman (Redondo Beach, CA); James R. Benedetto (Hermosa Beach, CA)
Assignee: Verizon Patent and Licensing Inc.
G06N20/00G06F40/279G06N5/02G06N7/01
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12,154,008
App. No.
17/199,691
Granted
Nov 26, 2024
Kind
B2
Abstract

A method for building a factual database of concepts and entities that are related to the concepts through a learning process. Training content (e.g., news articles, books) and a set of entities (e.g., Bill Clinton and Barack Obama) that are related to a concept (e.g., Presidents) is received. Groups of words that co-occur frequently in the textual content in conjunction with the entities are identified as templates. Templates may also be identified by analyzing parts-of-speech patterns of the templates. Entities that co-occur frequently in the textual content in conjunction with the templates are identified as additional related entities (e.g., Ronald Reagan and Richard Nixon). To eliminate erroneous results, the identified entities may be presented to a user who removes any false positives. The entities are then stored in association with the concept.

Claims (75)

1. A computer-implemented method of learning related entities, the method comprising:

receiving a plurality of entities, each entity among the plurality of entities relating to a first concept;

receiving training content including the plurality of entities; and

learning additional entities that are related to the first concept by iteratively performing the following steps:

identifying one or more potential word templates from the training content based on occurrences of one or more words in the training content relating to the first concept;

identifying one or more word templates from the one or more potential word templates based on a frequency of occurrence of the one or more potential word templates and based on one or more part-of-speech tags of the one or more potential word templates;

adding the one or more identified word templates to a set of word templates;

generating, for each identified word template, a confidence score for the identified word template based on a frequency of occurrence of the identified word template; and

adjusting, for each identified word template, the confidence score of the identified word template based on whether the one or more part of speech tags of the identified word template is similar to part-of-speech tags of word templates of the set of word templates.

2. The method of claim 1 , wherein learning additional entities that are related to the first concept further comprises:

adjusting, for each identified word template, the confidence score of the identified word template when the identified word template is identified as being a false positive;

identifying one or more candidate entities that relate to the first concept based on occurrences of each of the one or more candidate entities in the training content with at least one of the word templates of the set of word templates, wherein the one or more candidate entities are added to a set of candidate entities;

identifying a part-of-speech tag for each candidate entity; and

removing a candidate entity from the set of candidate entities when the part-of-speech tag of the candidate entity is different from a part-of-speech tag of the set of entities,

wherein the method of claim 1 further comprises:

adding one or more candidate entities remaining in the set of candidate entities to the set of entities; and

storing the set of entities in association with the first concept.

3. The method of claim 2 , wherein identifying one or more candidate entities that relate to the first concept further comprises:

removing one or more candidate entities from the set of candidate entities based on whether the one or more candidate entities are related to a second concept,

wherein the second concept does not relate to the first concept.

4. A computer-implemented method of learning related entities, the method comprising:

receiving a plurality of entities, each entity among the plurality of entities relating to a first concept;

receiving training content including the plurality of entities; and

learning additional entities that are related to the first concept by iteratively performing the following steps:

identifying one or more potential word templates from the training content based on occurrences of one or more words in the training content relating to the first concept;

adding the one or more identified word templates to a set of word templates; and

adjusting, for each identified word template, a confidence score of the identified word template when one or more part of speech tags of the identified word template is similar to part-of-speech tags of word templates of the set of word templates.

5. The method of claim 4 , wherein learning additional entities that are related to the first concept further comprises:

adjusting, for each identified word template, the confidence score of the identified word template when the identified word template is identified as being a false positive;

identifying one or more candidate entities that relate to the first concept based on occurrences of each of the one or more candidate entities in the training content with at least one of the word templates of the set of word templates, wherein the one or more identified candidate entities are added to a set of candidate entities;

identifying a part-of-speech tag for each candidate entity; and

removing a candidate entity from the set of candidate entities when the part-of-speech tag of the candidate entity is different from the part-of-speech tag of the set of entities,

wherein the method of claim 4 further comprises:

adding one or more candidate entities remaining in the set of candidate entities to the set of entities.

6. The method of claim 5 , wherein identifying one or more candidate entities that relate to the first concept based on occurrences of each of the one or more candidate entities in the training content with at least one of the word templates of the set of word templates further comprises:

identifying the one or more candidate entities based a grammatical use of the candidate entities and a part-of-speech tag of the entities of the set of entities.

7. The method of claim 5 , wherein learning additional entities that are related to the first concept further comprises:

receiving an external input to remove candidate entities that do not relate to the first concept from the set of candidate entities; and

removing candidate entities from the set of candidate entities based on the received input.

8. The method of claim 7 , wherein learning additional entities that are related to the first concept further comprises:

searching an ontology database of related entities and concepts for a second concept that relates to a candidate entity in the set of candidate entities, wherein the ontology database includes the set of entities that relate to the first concept;

determining whether the second concept relates to the first concept; and

removing candidate entities from the set of candidate entities when the second concept of the candidate entity does not relate to the first concept.

9. The method of claim 7 , wherein learning additional entities that are related to the first concept further comprises:

searching an ontology database of related entities and concepts for a second concept that relates to a candidate entity in the set of candidate entities, wherein the ontology database includes the set of entities that relate to the first concept;

determining whether the second concept relates to the first concept; and

adding the candidate entities to the set of entities that relates to the first concept when the second concept of the candidate entity relates to the first concept.

10. The method of claim 7 , wherein the received input to remove candidate entities from the set of candidate entities is a selection by a user of candidate entities to remove from the set of candidate entities.

11. The method of claim 7 , wherein the received input to remove candidate entities from the set of candidate entities is a selection by a user of candidate entities to keep in the set of candidate entities.

12. The method of claim 7 , wherein the received input to remove candidate entities from the set of candidate entities is received in fewer than all iterations.

13. The method of claim 4 , wherein identifying one or more word templates from the training content further comprises:

tagging each of the one or more words in the training content that occur with the entity of the set of entities with a part-of-speech tag based on grammatical use of the one or more words in the training content that occur with the entity of the set of entities; and

identifying the one or more word templates based on the part-of-speech tag of the one or more words in the training content that occur with the entity of the set of entities.

14. The method of claim 13 , wherein identifying one or more word templates based on the part-of-speech tag of the one or more words in the training content that occur with the entity of the set of entities comprises:

identifying the one or more word templates based on similarities between the part-of-speech tag of the one or more words in the training content that occur with the entity of the set of entities and part-of-speech tags of word templates in the set of word templates.

15. The method of claim 13 , wherein identifying one or more word templates based on the part-of-speech tag of the one or more words in the training content that occur with the entity of the set of entities comprises:

identifying the one or more word templates based on similarities between the part-of-speech tag of the one or more words in the training content that occur with the entity of the set of entities in a current iteration and part-of-speech tags of word templates in the set of word templates identified in a previous iteration.

16. The method of claim 4 , wherein the first concept is a classification of each entity in the set of entities.

17. The method of claim 4 , wherein each entity in the set of entities is a proper noun.

18. The method of claim 4 , wherein a word template of the set of word templates includes one or more words that precede an entity of the set of entities within the training content.

19. A computer product for learning related entities, the computer product comprising a non-transitory computer-readable medium containing computer program code for performing a method comprising:

receiving a plurality of entities, each entity among the plurality of entities relating to a first concept;

receiving training content including the plurality of entities; and

learning additional entities that are related to the first concept by iteratively performing the following steps:

identifying one or more word templates from the training content based on occurrences of one or more words in the training content;

adding the one or more identified word templates to a set of word templates;

generating, for each identified word template, a confidence score for the identified word template based on a frequency of occurrence of the identified word template; and

adjusting, for each identified word template, the confidence score of the identified word template based on whether one or more part of speech tags of the identified word template is similar to part-of-speech tags of word templates of the set of word templates.

20. The computer product of claim 19 , wherein learning additional entities that are related to the first concept further comprises:

adjusting, for each identified word template, the confidence score of the identified word template when the identified word template is identified as being a false positive;

identifying one or more candidate entities that relate to the first concept based on occurrences of each of the one or more candidate entities in the training content with at least one of the word templates of the set of word templates, wherein the one or more identified candidate entities are added to a set of candidate entities;

identifying a part-of-speech tag for each candidate entity; and

removing a candidate entity from the set of candidate entities when the part-of-speech tag of the candidate entity is different from a part-of-speech tag of the set of entities,

wherein the computer product of claim 19 further comprises:

adding the one or more candidate entities of the set of candidate entities to the set of entities.

Assignments (5)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 19, 2021
From: VERIZON MEDIA INC.
To: VERIZON PATENT AND LICENSING INC.
Reel/Frame 057453/0431 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 15, 2021
From: KAPUR, AMIT R.; PEARMAN, STEVEN F.; BENEDETTO, JAMES R.
To: PROJECT ROVER, INC.
Reel/Frame 055586/0782 →
MERGER Recorded Mar 15, 2021
From: GRAVITY.COM LLC
To: OATH INC.
Reel/Frame 055586/0811 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 15, 2021
From: OATH INC.
To: VERIZON MEDIA INC.
Reel/Frame 055586/0846 →
CHANGE OF NAME Recorded Mar 15, 2021
From: PROJECT ROVER, INC.
To: GRAVITY.COM, INC.
Reel/Frame 055587/0254 →
Continuity (4)
Continuation 15381253 · Dec 16, 2016
Continuation 14926059 · Oct 29, 2015
Continuation 13205585 · Aug 8, 2011
Related Publication 20210201203A1 · Jul 1, 2021