AI & Analytics

Data Lake: voorkomen van Entity Key Drift, stap 2 fuzzy matching

Towards Data Science (Medium)
Data Lake: voorkomen van Entity Key Drift, stap 2 fuzzy matching

Samenvatting

Data Lake: fuzzy matching mist het verschil tussen typefouten en echte productcodes.

Fuzzy matching in een Data Lake: wat er gebeurt

De auteur onderzoekt in stap twee van een serie over entity key drift vijf metrics voor string similarity. Damerau-Levenshtein lijkt logisch, omdat de metric verwisselde tekens als één fout telt. Zo krijgt sds1001 tegenover sds011 afstand 1, terwijl gewone edit distance twee bewerkingen rekent.

Dat voordeel heeft een scherpe keerzijde. hdc1008 en hdc1080 zijn twee echte Texas Instruments-humiditysensoren met afzonderlijke datasheets. Damerau-Levenshtein zet ook deze codes op afstand 1, omdat slechts twee cijfers van positie wisselen. Een regel die typefouten herkent, kan daardoor echte producten samenvoegen.

Entity key drift en de grens van één drempel

De test gebruikt geverifieerde fabrikantendatasheets als ground truth. Geen van de vijf onderzochte metrics kon met één instelling typefouten betrouwbaar scheiden van legitieme productcodes. Dezelfde afstandsscore beschrijft dus zowel een menselijke tikfout als een bewust gekozen nummering van twee modellen.

De voorafgaande normalisatie ruimde alleen stijlverschillen op. Bij 719 sensorstations brachten NFKC-normalisatie, case folding en het verwijderen van scheidingstekens 114 verschillende sensorType-strings terug tot 99 natuurlijke sleutels. SDS 011, SDS011 en sds011 kwamen daardoor zonder risico samen. Daarna bleef juist de domeinkennis nodig om ongeveer twee dozijn echte hardwaremodellen uit elkaar te houden.

Voor BI-professionals die partnummers, SKU’s of modelcodes uit meerdere bronnen koppelen, ligt hier een ontwerpgrens. Een fuzzy matcher met een vaste drempel beschrijft niet automatisch de betekenis van een identifier. De brondata, fabrikantendocumentatie en de manier waarop codes ontstaan bepalen mede of een overeenkomst klopt.

Concrete takeaway voor fuzzy matching

Gebruik Damerau-Levenshtein gerust om kandidaatmatches te vinden, maar laat de metric geen automatische merge beslissen. Test de gekozen regel tegen gecontroleerde brondata en fabrikantendatasheets, en ontwerp de reconciliatie rond verificatie in plaats van rond één afstandsdrempel. De auteur publiceerde code en data op GitHub en Zenodo, zodat je de metingen kunt controleren.

Lees het volledige artikel
Meer over AI & Analytics →