IP Library › Granted Patent US 12,455,915
Granted Patent B2
US 12,455,915 · App. 17/880,814 · Granted Oct 28, 2025

Distributed entity re-resolution based on streaming updates

Inventors: Avirup Saha (Kolkata, IN); Balaji Ganesan (Bengaluru, IN); Soma Shekar Naganna (Bangalore, IN); Sameep Mehta (Bangalore, IN)
Assignee: International Business Machines Corporation
G06F16/355G06F40/279G06N3/042G06N5/022G06N20/00
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,455,915
App. No.
17/880,814
Granted
Oct 28, 2025
Kind
B2
Abstract

Mechanisms are provided for dynamic re-resolution of entities in a knowledge graph (KG) based on streaming updates. The KG and corresponding initial clusters associated with first entities are received along with a dynamic data stream having second documents referencing second entities. Clustering on the second documents based on the set of initial clusters, and document features of the second documents, is performed to provide a set of second document clusters. For second document clusters that should be modified based on entities associated with the second document cluster, a cluster modification operation is performed. Updated clusters are generated based on the clustering and modification of clusters. Entity re-resolution is dynamically performed on the entities in the KG based on the second entities associated with the updated clusters to generate an updated knowledge graph data structure.

Claims (74)

1. A method, in a data processing system, the method comprising the data processing system:

receiving a knowledge graph data structure comprising data representations of a plurality of first entities specified in a first set of documents, and a corresponding set of initial clusters associated with corresponding ones of the plurality of first entities;

receiving at least one dynamic data stream from at least one source computing system, the at least one dynamic data stream comprising second documents having data specifying second entities referenced by the second documents, wherein each second document is a collection of unstructured textual data; and

automatically, in response to receiving the at least one dynamic data stream:

executing a clustering operation on the second documents based on the set of initial clusters, and document features of the second documents, to provide a set of second document clusters comprising the second documents, wherein the clustering operation is a modified Dirichlet Hawkes Process (DHP) that performs distributed clustering, in parallel, on partitions of the at least one dynamic data stream, across a master compute node and a plurality of slave compute nodes of the data processing system;

determining, for each second document cluster in the one or more second document clusters, whether the second document cluster should be modified based on entities associated with the second document cluster;

executing, for each second document cluster that is determined should be modified, a cluster modification operation on the second document cluster, wherein updated clusters are generated comprising a combination of second document clusters that are modified and second document clusters that are not modified;

dynamically executing entity re-resolution on the plurality of first entities in the knowledge graph data structure based on the second entities associated with the updated clusters to generate an updated knowledge graph data structure;

inputting information associated with the updated knowledge graph data structure into an artificial intelligence computing system and analyzing patterns of the entity re-resolution; and

generating an identity-fraud alert based on analyzing the patterns of the entity re-resolution and based on a determination that an entity is re-resolved a plurality of times over a time period.

2. The method of claim 1 , further comprising:

providing the updated knowledge graph data structure to a downstream computer system to perform a downstream computer system operation based on the updated knowledge graph data structure.

3. The method of claim 1 , wherein the clustering operation performs clustering based on temporal characteristics associated with the second entities referenced in the second documents of the at least one dynamic data stream.

4. The method of claim 3 , wherein the clustering operation comprises:

performing distributed DHP clustering when no new clusters are needed as part of the clustering operation; and

performing non-distributed DHP clustering when a new cluster is determined to be needed as part of the clustering operation.

5. The method of claim 1 , wherein the cluster modification operation comprises merging entities that only occur in the same second document cluster so that a single entity represents the same second document cluster in the updated clusters.

6. The method of claim 1 , wherein the cluster modification operation comprises:

determining whether an entity is present in more than one second document cluster; and

in response to the entity being present in more than one second document cluster:

associating the entity with a first one of the second document clusters of the entity; and

generating one or more sub-entities corresponding to the entity, wherein each of the one or more sub-entities is associated with a second one of second document clusters or a newly generated cluster.

7. The method of claim 6 , wherein the one or more sub-entities corresponding to the entity are entities corresponding to a smallest sub-cluster of at least one of the more than one second document cluster.

8. The method of claim 1 , wherein the at least one source computing system comprises at least one of a social media website, a social networking computer system, a news feed computer system, a document aggregator computer system, a document segregator computer system, or a data streaming services computer system, and wherein the streaming data comprises metadata and textual content corresponding to submissions from users of the at least one source computing system.

9. The method of claim 1 , further comprising:

inputting the updated knowledge graph data structure into a graph neural network that generates embeddings of characteristics, for each node in the updated knowledge graph data structure, of a neighborhood of that node in the updated knowledge graph data structure; and

generating a visualization output that explains reasoning for entity re-resolution in the updated knowledge graph data structure at least by projecting the embeddings of the characteristics, wherein the visualization output represents proximity of re-resolved entities with regard to temporal characteristics.

10. The method of claim 1 , wherein executing the clustering operation comprises:

determining, based on the set of initial clusters, for each second entity, whether the clustering operation requires creation of a new cluster for the second entity;

in response to determining that none of the second entities require creation of a new cluster, executing the clustering operation on partitions of the second documents distributed across a plurality of first compute nodes; and

in response to a determination that at least one second entity requires creation of a new cluster for the at least one second entity, generating the new cluster for the at least one second entity and executing the clustering operation in a sequential clustering operation by a second compute node.

11. A non-transitory computer-readable medium storing a set of instructions for distributed data processing, the set of instructions comprising:

one or more instructions that, when executed by one or more processors of a device, cause the device to:

receive a knowledge graph data structure comprising data representations of a plurality of first entities specified in a first set of documents, and a corresponding set of initial clusters associated with corresponding ones of the plurality of first entities;

receive at least one dynamic data stream from at least one source computing system, the at least one dynamic data stream comprising second documents having data specifying second entities referenced by the second documents, wherein each second document is a collection of unstructured textual data; and

automatically, in response to receiving the at least one dynamic data stream:

execute a clustering operation on the second documents based on the set of initial clusters, and document features of the second documents, to provide a set of second document clusters comprising the second documents, wherein the clustering operation is a modified Dirichlet Hawkes Process (DHP) that performs distributed clustering, in parallel, on partitions of the at least one dynamic data stream, across a master compute node and a plurality of slave compute nodes of the data processing system;

determine, for each second document cluster in the one or more second document clusters, whether the second document cluster should be modified based on entities associated with the second document cluster;

execute, for each second document cluster that is determined should be modified, a cluster modification operation on the second document cluster, wherein updated clusters are generated comprising a combination of second document clusters that are modified and second document clusters that are not modified;

dynamically execute entity re-resolution on the plurality of first entities in the knowledge graph data structure based on the second entities associated with the updated clusters to generate an updated knowledge graph data structure;

input information associated with the updated knowledge graph data structure into an artificial intelligence computing system and analyzing patterns of the entity re-resolution; and

generate an identity-fraud alert based on analyzing the patterns of the entity re-resolution and based on a determination that an entity is re-resolved a plurality of times over a time period.

12. The non-transitory computer-readable medium of claim 11 , wherein the one or more instructions, cause the device to:

provide the updated knowledge graph data structure to a downstream computer system to perform a downstream computer system operation based on the updated knowledge graph data structure.

13. The non-transitory computer-readable medium of claim 11 , wherein the clustering operation performs clustering based on temporal characteristics associated with the second entities referenced in the second documents of the at least one dynamic data stream.

14. The non-transitory computer-readable medium of claim 13 , wherein the one or more instructions, to cause the device to perform the clustering operation, cause the device to:

perform a distributed DHP clustering when no new clusters are needed as part of the clustering operation; and

perform a non-distributed DHP clustering when a new cluster is determined to be needed as part of the clustering operation.

15. The non-transitory computer-readable medium of claim 11 , wherein the one or more instructions, to cause the device to perform a cluster modification operation, cause the device to merge entities that only occur in a same second document cluster so that a single entity represents the same second document cluster in the updated clusters.

16. The non-transitory computer-readable medium of claim 11 , wherein the one or more instructions, to cause the device to perform cluster modification operation, cause the device to:

determine whether an entity is present in more than one second document cluster; and

in response to the entity being present in more than one second document cluster:

associate the entity with a first one of the second document clusters of the entity; and

generate one or more sub-entities corresponding to the entity, wherein each of the one or more sub-entities is associated with a second one of second document clusters or a newly generated cluster.

17. The non-transitory computer-readable medium of claim 16 , wherein the one or more sub-entities corresponding to the entity are entities corresponding to a smallest sub-cluster of at least one of the more than one second document cluster.

18. The non-transitory computer-readable medium of claim 11 , wherein the one or more instructions cause the device to:

input the updated knowledge graph data structure into a graph neural network that generates embeddings of characteristics, for each node in the updated knowledge graph data structure, of a neighborhood of that node in the updated knowledge graph data structure; and

generate a visualization output that explains reasoning for entity re-resolution in the updated knowledge graph data structure at least by projecting the embeddings of the characteristics, wherein the visualization output represents proximity of re-resolved entities with regard to temporal characteristics.

19. The non-transitory computer-readable medium of claim 11 , wherein the one or more instructions, to cause the device to execute the clustering operation, cause the device to:

determine, based on the set of initial clusters, for each second entity, whether the clustering operation requires creation of a new cluster for the second entity;

in response to determining that none of the second entities require creation of a new cluster, execute the clustering operation on partitions of the second documents distributed across a plurality of first compute nodes; and

in response to a determination that at least one second entity requires creation of a new cluster for the at least one second entity, generate the new cluster for the at least one second entity and execute the clustering operation in a sequential clustering operation by a second compute node.

20. A data processing system, comprising:

one or more processors; and

one or more memory devices coupled to the one or more processors, wherein the one or more processors are configured to:

receive a knowledge graph data structure comprising data representations of a plurality of first entities specified in a first set of documents, and a corresponding set of initial clusters associated with corresponding ones of the plurality of first entities;

receive at least one dynamic data stream from at least one source computing system, the at least one dynamic data stream comprising second documents having data specifying second entities referenced by the second documents, wherein each second document is a collection of unstructured textual data; and

automatically, in response to receiving the at least one dynamic data stream:

execute a clustering operation on the second documents based on the set of initial clusters, and document features of the second documents, to provide a set of second document clusters comprising the second documents, wherein the clustering operation is a modified Dirichlet Hawkes Process (DHP) that performs distributed clustering, in parallel, on partitions of the at least one dynamic data stream, across a master compute node and a plurality of slave compute nodes of the data processing system;

determine, for each second document cluster in the one or more second document clusters, whether the second document cluster should be modified based on entities associated with the second document cluster;

execute, for each second document cluster that is determined should be modified, a cluster modification operation on the second document cluster, wherein updated clusters are generated comprising a combination of second document clusters that are modified and second document clusters that are not modified;

dynamically execute entity re-resolution on the plurality of first entities in the knowledge graph data structure based on the second entities associated with the updated clusters to generate an updated knowledge graph data structure;

input information associated with the updated knowledge graph data structure into an artificial intelligence computing system and analyzing patterns of the entity re-resolution; and

generate an identity-fraud alert based on analyzing the patterns of the entity re-resolution and based on a determination that an entity is re-resolved a plurality of times over a time period.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 4, 2022
From: SAHA, AVIRUP; GANESAN, BALAJI; NAGANNA, SOMA SHEKAR; MEHTA, SAMEEP
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 060717/0591 →
Continuity (1)
Related Publication 20240045896A1 · Feb 8, 2024
References Cited (33)
US 9535902B1 · Michalak · 2017 [cited by examiner]
US 9836183B1 · Love · 2017 [cited by examiner]
US 10380486B2 · Krauss · 2019 [cited by examiner]
US 20170098163A1 · Chandrasekaran · 2017 [cited by examiner]
US 20210303638A1 · Zhong · 2021 [cited by examiner]
US 20230135407A1 · Saha · 2023 [cited by examiner]
US 20240005244A1 · Vangala · 2024 [cited by examiner]
US 20240045896A1 · Saha · 2024 [cited by examiner]
US 20240152557A1 · Ameen · 2024 [cited by examiner]
CN 110647902A · 2020 [cited by examiner]
“A System and Method for Verification of Predicted Links by Data Stewards”, IP.com, IPCOM000269526D, Apr. 25, 2022, 5 pages. [cited by applicant]
Agrawal, Monica et al., “Large-scale analysis of disease pathways in the human interactome”, Pacific Symposium on Biocomputing 2018, Jan. 3-7, 2018, 12 pages. [cited by applicant]
Bhattacharya, Indrajit et al., “A Latent Dirichlet Model for Unsupervised Entity Resolution”, Proceedings of the Sixth SIAM International Conference on Data Mining, Apr. 2006, 9 pages. [cited by applicant]
Chakaravarthy, Venkatesan T. et al., “Efficient Scaling of Dynamic Graph Neural Networks”, arXiv:2109.07893v1 [cs.DC], Sep. 16, 2021, 26 pages. [cited by applicant]
Dhani, Jaspreet S. et al., “Similar Cases Recommendation using Legal Knowledge Graphs”, KGKDD '21, Aug. 14, 2021, version submitted is arXIV:2017.04771v1 [cs.AI], Jul. 10, 2021, 4 pages. [cited by applicant]
Du, Nan et al., “Dirichlet-Hawkes Processes with Applications to Clustering Continuous-Time Document Streams”, 21st ACM SIGKDD Conference on Knowledge Discovery and Data Mining (KDD '15), Aug. 10-13, 2015, 10 pages. [cited by applicant]
Franzoni, Valentina et al., “Efficient Graph-based Author Disambiguation by Topological Similarity in DBLP”, 2018 IEEE First International Conference on Artificial Intelligence and Knowledge Engineering (AIKE), Sep. 26-… [cited by applicant]
Ganesan, Balaji et al., “Anu Question Answering System”, CEUR Workshop Proceedings, Proceedings of the ISWC 2020 Demos and Industry Tracks: From Novel Ideas to Industrial Practice co-located with 19th International Sema… [cited by applicant]
Ganesan, Balaji et al., “Explainable Entity Matching Master Data Management”, Thirty-eighth International Conference on Machine Learning (ICML Expo 2021), Jul. 17, 2021, 10 pages. [cited by applicant]
Ganesan, Balaji et al., “Link Prediction using Graph Neural Networks for Master Data Management”, arXiv:2003.04732v2 [cs.SI], Aug. 28, 2020, 10 pages. [cited by applicant]
Hamilton, William L. et al., “Inductive Representation Learning on Large Graphs”, 31st Conference on Neural Information Processing Systems (NIPS2017), Dec. 4- 9, 2017, 11 pages. [cited by applicant]
Huang, Yanping et al., “GPipe: Efficient Training of Giant Neural Networks using Pipeline Parallelism”, 33rd Conference on Neural Information Processing Systems (NeurIPS 2019), Dec. 8-14, 2019, 10 pages. [cited by applicant]
Pareja, Aldo et al., “EvolveGCN: Evolving Graph Convolutional Networks for Dynamic Graphs”, The Thirty-Fourth AAAI Conference on Artificial Intelligence (AAAI-20), Feb. 7-12, 2020, 8 pages. [cited by applicant]
Poux-Medard, Gael et al., “Powered Hawkes-Dirichlet Process: Challenging Textual Clustering using a Flexible Temporal Prior”, arXiv:2109.07170v1 [cs.LG], Sep. 15, 2021, 10 pages. [cited by applicant]
Rakib, MD Rashadul Hasan et al., “Short Text Stream Clustering via Frequent Word Pairs and Reassignment of Outliers to Clusters”, Proceedings of the ACM Symposium on Document Engineering 2020 (DocEng '20), Sep. 29-Oct. … [cited by applicant]
Saeedi, Alieh et al., “Incremental Multi-source Entity Resolution for Knowledge Graph Completion”, Extended Semantic Web Conference (ESWC) 2020, May 2020, 17 pages. [cited by applicant]
Saha, Avirup et al., U.S. Appl. No. 17/518,195, filed Nov. 3, 2021, titled “Bucketing Records Using Temporal Point Processes”, 44 pages. [cited by applicant]
Saha, Avirup et al., “Short Text Clustering in Continuous Time Using Stacked Dirichlet-Hawkes Process with Inverse Cluster Frequency Prior”, 7th SIGKDD Workshop on Mining and Learning from Time Series (MileTS '21), Aug.… [cited by applicant]
Vannur, Lingraj S. et al., “Data Augmentation for Fairness in Personal Knowledge for Base Population”, 25th Pacific-Asia Conference on Knowledge Discovery and Data Mining (PAKDD2021), May 11-14, 2021, 10 pages. [cited by applicant]
You, Jiaxuan et al., “Position-aware Graph Neural Networks”, arXiv:1906.04817v2 [cs.LG], Jun. 13, 2019, 10 pages. [cited by applicant]
Zhang, Dalong et al., “Agl: A Scalable System for Industrial-purpose Graph Machine Learning”, arXiv:2003.02454v4 [cs.SI], Mar. 16, 2020, 12 pages. [cited by applicant]
Zhu, Rong et al., “AliGraph: A Comprehensive Graph Neural Network Platform”, Proceedings of the VLDB Endowment, vol. 12, No. 12, Aug. 2019, 12 pages. [cited by applicant]
Qin et al., “Seign: A Simple and Efficient Graph Neural Network for Large Dynamic Graphs”, 2023 IEEE 39th International Conference on Data Engineering (ICDE), Jul. 26, 2023, 14 pages. [cited by applicant]
Cited By (1)
US 12,585,877