Fuzzy-Matching-Definition
Fuzzy Matching ist eine Technik zum Auffinden von Werten oder Datensätzen, die sich ähneln, aber nicht identisch sind – etwa „Jon Smith" und „John Smith" oder „12 Main St." und „12 Main Street". Anstatt eine einfache Ja-oder-Nein-Antwort zu geben, misst es, wie ähnlich sich zwei Werte sind, und gibt einen Ähnlichkeitswert zurück. So können Beinahe-Treffer aufgrund von Tippfehlern, Abkürzungen oder Formatierungsunterschieden trotzdem gefunden werden.
Wie funktioniert Fuzzy Matching?
Vor dem Vergleich werden Werte normalerweise bereinigt, indem Satzzeichen entfernt, alles in Kleinbuchstaben umgewandelt und häufige Abkürzungen ausgeschrieben werden. Die Werte werden dann mit einer oder mehreren Methoden verglichen:
- Zeichenunterschiede: Zählen, wie viele Buchstaben hinzugefügt, entfernt oder geändert werden müssen, um einen Wert in einen anderen umzuwandeln. „Smith" und „Smyth" unterscheiden sich um einen Buchstaben und werden daher als sehr ähnlich bewertet.
- Lautvergleich: Vergleichen, wie Wörter ausgesprochen werden, statt wie sie geschrieben werden – so können „Meyer" und „Maier" als derselbe Name erkannt werden.
- Wortbasierter Vergleich: Vergleichen der Wörter in jedem Wert unabhängig von ihrer Reihenfolge, sodass „Smith, John" und „John Smith" als Treffer behandelt werden.
- Teilübereinstimmung: Vergleichen kurzer Textfragmente, was bei langen Werten wie Produktbeschreibungen oder Firmennamen hilfreich ist.
Das Ergebnis ist ein Wert, oft ausgedrückt als Prozentsatz. Werte, die über einem gewählten Schwellenwert liegen, werden als Treffer behandelt oder zur Überprüfung gekennzeichnet.
Wo wird Fuzzy Matching verwendet?
- Duplikate finden: Identifizieren desselben Kunden, Lieferanten oder Produkts, der mehr als einmal erfasst wurde, als Teil der Datendeduplizierung.
- Daten aus verschiedenen Quellen kombinieren: Verknüpfung von Datensätzen aus zwei Systemen, die Namen oder Adressen unterschiedlich schreiben – etwa nach einer Unternehmensfusion.
- Suche: Rückgabe nützlicher Ergebnisse auch bei Tippfehlern in einem Suchbegriff.
- Überprüfung eingehender Daten: Vergleich neuer Datensätze mit vorhandenen, bevor sie hinzugefügt werden – so werden Duplikate frühzeitig erkannt.
Wie hängt es mit probabilistischem Matching zusammen?
Fuzzy Matching vergleicht jeweils einen Wert, etwa zwei Namen oder zwei Adressen. Probabilistisches Matching baut darauf auf, indem es die Ähnlichkeitswerte mehrerer Felder – wie Name, Adresse und Telefonnummer – in eine Gesamtwahrscheinlichkeit kombiniert, dass zwei Datensätze dieselbe Entität beschreiben. In der Praxis ist Fuzzy Matching häufig eines der Bausteine in einem größeren Match-and-Merge-Prozess.
Welche Einschränkungen hat es?
Fuzzy Matching kann falsche Treffer erzeugen, besonders bei kurzen Werten: „Jon" und „Joan" sehen sich ähnlich, sind aber unterschiedliche Namen, und zwei Produkte mit beinahe identischen Namen können verschiedene Modelle sein. Es kann auch Treffer übersehen, bei denen dieselbe Sache mit völlig unterschiedlichen Worten beschrieben wird – etwa der rechtliche Name eines Unternehmens und dessen Markenname. Der Vergleich jedes Datensatzes mit jedem anderen ist bei großen Datenmengen langsam, daher grenzen Systeme den Vergleich normalerweise zuerst ein – etwa indem nur Datensätze aus derselben Postleitzahl verglichen werden. Schwellenwerte müssen getestet und angepasst werden, um verpasste Treffer gegen falsche auszubalancieren.