Matchcode Optimization:Double Metaphone: Difference between revisions
Jump to navigation
Jump to search
Created page with "{{MatchcodeOptimizationNav |AlgorithmsCollapse= }} ==Double Metaphone== ===Specifics=== *http://en.wikipedia.org/wiki/Double_Metaphone#Double_Metaphone. Double Metaphone imp..." |
No edit summary |
||
(3 intermediate revisions by the same user not shown) | |||
Line 5: | Line 5: | ||
==Double Metaphone== | ==Double Metaphone== | ||
===Specifics=== | ===Specifics=== | ||
*http://en.wikipedia.org/wiki/Double_Metaphone#Double_Metaphone. | :*http://en.wikipedia.org/wiki/Double_Metaphone#Double_Metaphone. | ||
Double Metaphone improves upon the Soundex algorithm by identifying inconsistencies in English spelling and pronunciation to produce a more accurate encoding. | :Double Metaphone improves upon the Soundex algorithm by identifying inconsistencies in English spelling and pronunciation to produce a more accurate encoding. | ||
===Summary=== | ===Summary=== | ||
A variation of both the SoundEx and PhonetEx algorithms. Double Metaphone performs 2 different PhonetEx-style transformations. It creates two PhonetEx-like strings (primary and alternate) for both strings based on multiple phonetic variations which originated from other languages. Unlike Soundex and Phonetex, the Metaphones are generated during the comparison algorithm. | :A variation of both the SoundEx and PhonetEx algorithms. Double Metaphone performs 2 different PhonetEx-style transformations. It creates two PhonetEx-like strings (primary and alternate) for both strings based on multiple phonetic variations which originated from other languages. Unlike Soundex and Phonetex, the Metaphones are generated during the comparison algorithm. | ||
===Returns=== | ===Returns=== | ||
Primary keys match = 99.9% | *Primary keys match = 99.9% | ||
Alternate keys match = 85.0% | *Alternate keys match = 85.0% | ||
Primary matches alternate = 85.0% | *Primary matches alternate = 85.0% | ||
Alternate keys match = 75.0% | *Alternate keys match = 75.0% | ||
===Example Matchcode Component=== | ===Example Matchcode Component=== | ||
Line 24: | Line 24: | ||
{{ExampleDataTableV1|STRING1|STRING2|RESULT | {{ExampleDataTableV1|STRING1|STRING2|RESULT | ||
|AdditionalRows= | |AdditionalRows= | ||
{{EDTRow| | {{EDTRow|Green|Johnson|Jhnsn|Match Found}} | ||
{{EDTRow| | {{EDTRow|Green|Deanardo|Dinardio|Match Found}} | ||
{{EDTRow|Green|Beaumarchais|Bumarchay|Match Found}} | {{EDTRow|Green|Beaumarchais|Bumarchay|Match Found}} | ||
{{EDTRow| | {{EDTRow|White|Theverymost|Hteberynost|Unique}} | ||
}} | }} | ||
Line 39: | Line 39: | ||
===Recommended Usage=== | ===Recommended Usage=== | ||
Hybrid deduper, where a single incoming record can quickly be evaluated independently against each record in an existing large master database. | :Hybrid deduper, where a single incoming record can quickly be evaluated independently against each record in an existing large master database. | ||
Databases created via real-time data entry where audio likeness errors are introduced. | :Databases created via real-time data entry where audio likeness errors are introduced. | ||
Databases of US and English language origin. | :Databases of US and English language origin. | ||
===Not Recommended For=== | ===Not Recommended For=== | ||
Large or Enterprise level batch runs. Since the algorithm must be evaluated for each record comparison, throughput will be very slow. | :Large or Enterprise level batch runs. Since the algorithm must be evaluated for each record comparison, throughput will be very slow. | ||
Fields whose content data is of type Dictionary or Quantifiable. | :Fields whose content data is of type Dictionary or Quantifiable. | ||
Databases of non-US and non-English language origin. | :Databases of non-US and non-English language origin. | ||
===Do Not Use With=== | ===Do Not Use With=== | ||
UTF-8 data. This algorithm was ported to MatchUp with the assumption that a character equals one byte, and therefore results may not be accurate if the data contains multi-byte characters. | :UTF-8 data. This algorithm was ported to MatchUp with the assumption that a character equals one byte, and therefore results may not be accurate if the data contains multi-byte characters. | ||
[[Category:MatchUp Hub]] | [[Category:MatchUp Hub]] | ||
[[Category:Matchcode Optimization]] | [[Category:Matchcode Optimization]] |
Latest revision as of 23:09, 26 September 2018
Double Metaphone
Specifics
- Double Metaphone improves upon the Soundex algorithm by identifying inconsistencies in English spelling and pronunciation to produce a more accurate encoding.
Summary
- A variation of both the SoundEx and PhonetEx algorithms. Double Metaphone performs 2 different PhonetEx-style transformations. It creates two PhonetEx-like strings (primary and alternate) for both strings based on multiple phonetic variations which originated from other languages. Unlike Soundex and Phonetex, the Metaphones are generated during the comparison algorithm.
Returns
- Primary keys match = 99.9%
- Alternate keys match = 85.0%
- Primary matches alternate = 85.0%
- Alternate keys match = 75.0%
Example Matchcode Component
Example Data
STRING1 STRING2 RESULT Johnson Jhnsn Match Found Deanardo Dinardio Match Found Beaumarchais Bumarchay Match Found Theverymost Hteberynost Unique
Performance | |||||
---|---|---|---|---|---|
Slower | Faster | ||||
Matches | |||||
More Matches | Greater Accuracy |
Recommended Usage
- Hybrid deduper, where a single incoming record can quickly be evaluated independently against each record in an existing large master database.
- Databases created via real-time data entry where audio likeness errors are introduced.
- Databases of US and English language origin.
Not Recommended For
- Large or Enterprise level batch runs. Since the algorithm must be evaluated for each record comparison, throughput will be very slow.
- Fields whose content data is of type Dictionary or Quantifiable.
- Databases of non-US and non-English language origin.
Do Not Use With
- UTF-8 data. This algorithm was ported to MatchUp with the assumption that a character equals one byte, and therefore results may not be accurate if the data contains multi-byte characters.