ENTITY MATCHING WITH MACHINE LEARNING FUZZY LOGIC
A fuzzy matching system matching data records in one or more data sets based on user-customized selection of multiple fuzzy matching algorithms. Possible matches may be displayed to a user, who provides feedback on the accuracy of the matches, which may then be used by a machine learning algorithm to update weightings and parameters of the multiple fuzzy matching algorithms, such as based on machine learning analysis of the matching results and the user feedback.
1 . (canceled)
2 . A computerized method, performed by a computing system having one or more hardware computer processors and one or more non-transitory computer readable storage device storing software instructions executable by the computing system to perform the computerized method comprising:
determining, using a machine learning model, an overall match score for a first and second data record, wherein the machine learning model is configured to:
determine one or more matching algorithm of a plurality of matching algorithms associated with individual properties that are part of both the first and second data records; and
execute the determined one or more matching algorithms on the individual properties of the first and second data records;
wherein a first matching algorithm of the plurality of matching algorithms is associated with a first individual property and a second matching algorithm of the plurality of matching algorithms is associated with a second individual property; and
outputting the determined overall match score.
3 . The computerized method of claim 2 , wherein the plurality of matching algorithms comprises at least one of: token matching, substring searching, trigram matching, edit-distance matching, metaphone matching, term-frequency matching, initialization weighting, or phrase matching.
4 . The computerized method of claim 2 , wherein determining the overall match score comprises generating, by each of the one or more matching algorithms, a respective match score for the first and second data record.
5 . The computerized method of claim 2 , wherein determining the overall match score comprises performing a weighted aggregation of outcomes of the one or more matching algorithms.
6 . The computerized method of claim 2 , further comprising:
receiving, via a user interface, user feedback indicating whether the first and second data record are associated with a same entity.
7 . The computerized method of claim 6 , further comprising updating, based on the user feedback, one or more weightings used to determine the overall match score.
8 . The computerized method of claim 2 , further comprising:
presenting, in a user interface, a match comparison pane that indicates a plurality of property values for the first and second data record.
9 . The computerized method of claim 8 , wherein the user interface includes visual indications that distinguish property values that are an exact match from property values that are not an exact match.
10 . The computerized method of claim 2 , further comprising:
displaying, in a user interface, a visualization indicating how heavily weighted each combination of attribute and matching algorithm is in determining the overall match score.
11 . The computerized method of claim 2 , wherein the first and second data record are from different data sets corresponding to different data sources.
12 . The computerized method of claim 2 , wherein the first and second data record are within a single data set.
13 . A computing system comprising:
a hardware computer processor; and
a non-transitory computer readable medium having software instructions stored thereon, the software instructions executable by the hardware computer processor to cause the computing system to perform operations comprising:
determining, using a machine learning model, an overall match score for a first and second data record, wherein the machine learning model is configured to:
determine one or more matching algorithm of a plurality of matching algorithms associated with individual properties that are part of both the first and second data records; and
execute the determined one or more matching algorithms on the individual properties of the first and second data records;
wherein a first matching algorithm of the plurality of matching algorithms is associated with a first individual property and a second matching algorithm of the plurality of matching algorithms is associated with a second individual property; and
outputting the determined overall match score.
14 . The computing system of claim 13 , wherein the plurality of matching algorithms comprises at least one of: token matching, substring searching, trigram matching, edit-distance matching, metaphone matching, term-frequency matching, initialization weighting, or phrase matching.
15 . The computing system of claim 13 , wherein determining the overall match score comprises generating, by each of the one or more matching algorithms, a respective match score for the first and second data record.
16 . The computing system of claim 13 , wherein determining the overall match score comprises performing a weighted aggregation of outcomes of the one or more matching algorithms.
17 . The computing system of claim 13 , further comprising:
receiving, via a user interface, user feedback indicating whether the first and second data record are associated with a same entity.
18 . The computing system of claim 13 , further comprising updating, based on the user feedback, one or more weightings used to determine the overall match score.
19 . The computing system of claim 13 , further comprising:
presenting, in a user interface, a match comparison pane that indicates a plurality of property values for the first and second data record.
20 . The computing system of claim 13 , wherein the user interface includes visual indications that distinguish property values that are an exact match from property values that are not an exact match.