Entity Matching via Joint Blocking and Learning
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Entity matching across different data sources is challenging due to varying data schemas, noisy information, and high computational overhead, with existing approaches requiring significant human effort and lacking a one-fits-all solution, especially when dealing with large datasets and limited labeled data.
Innovation Solution
A method involving a set of labelling functions to determine matching and non-matching entities, with a subset selected for training machine learning models for a blocking module to filter out unmatched pairs and a matching module to predict matches, jointly learning both models using unlabeled entity pairs and labelling functions, reducing the need for user annotations and improving F1 score.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Measurement precision
If traditional entity matching algorithms are used, then matching accuracy can be maintained, but computational overhead becomes prohibitively high for large datasets
Solution Approach 1:
The entity matching process is divided into two sequential stages: a blocking stage that filters out obviously non-matching pairs using simple heuristics, and a matching stage that applies complex learning models only to remaining candidate pairs. This segmentation reduces computational complexity from O(N1×N2) to approximately O(N1×N2×ε) where ε is the blocking effectiveness, making the system scalable to large datasets while maintaining accuracy.
Solution Approach 2:
The blocking module performs preliminary filtering before the matching module processes entity pairs. By pre-filtering out clearly non-matching pairs using simple blocking functions, the system reduces the workload for the more computationally intensive matching stage, thereby improving overall computational efficiency without sacrificing matching accuracy.
2Measurement precision
If learning-based approaches are used, then matching performance can improve, but they require significant labeled data for training
Solution Approach 1:
The system uses unlabeled data to train the blocking module, which automatically generates pseudo-labels for entity pairs. These pseudo-labels are then used to train the matching module without requiring manual annotation. The blocking module essentially serves itself by learning from unlabeled data and providing labels that enable downstream matching tasks, eliminating the need for extensive labeled datasets.
Solution Approach 2:
The blocking module acts as an intermediary that transforms unlabeled data into useful pseudo-labels, which then serve as training data for the matching module. This intermediary layer enables the system to leverage large amounts of unlabeled data while achieving performance comparable to approaches that require labeled data, effectively bridging the gap between data availability and model training requirements.
3Measurement precision
If classification models are trained with large amounts of labeled data, then prediction accuracy improves, but the system cannot be guaranteed to perform well on new datasets
Solution Approach 1:
The system employs dynamic model selection where the blocking and matching models are trained on domain-specific unlabeled data from the target dataset itself. This allows the models to adapt to the specific characteristics of each new dataset without requiring retraining on comprehensive labeled datasets. The blocking module can be quickly retrained on new unlabeled data from emerging domains, enabling the system to adapt to new datasets while maintaining accuracy.
Solution Approach 2:
The system changes its training parameters and model architecture based on the characteristics of the input data. By training blocking and matching models on the actual unlabeled data from each domain, the system adjusts its parameters to fit the specific data distribution of that domain. This parameter adaptation enables the system to achieve high accuracy on new datasets without requiring transfer from pre-trained models trained on different data distributions.
4Device complexity
If heuristic algorithms are used, then implementation is simpler, but matching accuracy remains insufficient for real-world applications
Solution Approach 1:
The system segments the matching process into a simple blocking stage using heuristics and a more sophisticated matching stage using learning models. The blocking module maintains implementation simplicity by using straightforward blocking functions, while the matching module achieves high accuracy through learning-based approaches. This segmentation allows the system to combine the advantages of both simple heuristics and complex learning models, achieving high accuracy without excessive implementation complexity.
Solution Approach 2:
The blocking module performs preliminary filtering using simple heuristics before the learning-based matching module processes entity pairs. This preliminary action reduces the number of pairs that need to be processed by the complex matching module, making the overall system more manageable and easier to implement while maintaining high accuracy through the subsequent learning-based matching stage.
Data Source
AI summary
A method of identifying entities from different data sources as matching entity pairs that refer to a same real-world object is provided. A set of labelling functions are provided to determine matching entities and non-matching entities of a source data set and a least one target data set. A subset of labelling functions are selected from the provided set of labelling functions for training machine learning models for a blocking module that aims at filtering out as many unmatched entity pairs as possible without missing any true matches and for a matching module that aims at predicting matching results for remaining entity pairs not filtered out by the blocking module. Both a blocking model for the blocking module and a matching model are jointly learned for the matching module based on available unlabeled entity pairs and the labelling functions of the selected subset of labelling functions.


