Datenzuordnung ohne das richtige Werkzeug ist fehlerträchtig


Eine typische Aufgabe in der Datenwissenschaft besteht darin, verschiedene Informationen zu kombinieren, beispielsweise indem Einträge zwischen mehreren Listen zugeordnet werden.
Auf den ersten Blick ist die Zuordnung zwischen Daten (Data Matching) ein Kinderspiel. Allerdings ist es ziemlich einfach so viel Unordnung in den Daten zu erzeugen, dass das Auflösen von Widersprüchen und das Beheben Fehlern mehr Zeit in Anspruch nimmt als die ursprüngliche Zuordnung selbst. Dementsprechend könnte eine defensive Denkweise helfen:

Alles was schiefgehen kann, wird auch schiefgehen.
Murphys Gesetz

Situation

In diesem Beispiel handelt es sich um drei Listen mit Informationen zu US-Präsidenten. Wir unterstellen an dieser Stelle, dass hinter jeder Liste noch weitere Informationen zu den Einträgen vorliegen, die später analysiert werden sollen. Der Einfachheit halber liegt der Fokus auf jeweils einem Eintrag aus jeder Liste. Offensichtlich handelt es sich bei "John Adams", "J. Adams" und "Adams, John" um die selbe Person und daher sollten sie einander zugeordnet werden.
Liste 1
...
...
John Adams
...
...
Liste 2
...
J. Adams
...
...
...
Liste 3
...
...
...
Adams, John
...

Ansatz 1: Erstellen von Listen paarweiser Zuordnungen

Ein guter Ansatz um eine Datenzuordnung durchzuführen besteht darin, alle Zuordnungen als Paare von Listenelementen zu sammeln. Dies ist einfach, praktisch und bei dem Verwenden einer Tabellenkalkulation ganz natürlich. Wenn Automatisierungswerkzeuge (z. B. Alteryx, SSIS) verwendet werden, ist ihre Ausgabe ebenfalls eine Liste zugeordneter Paare. Dementsprechend sind für die drei Listen hier drei paarweise Kombinationen zu berücksichtigen. Wenn n die Anzahl der Listen ist, beträgt die Anzahl der paarweisen Kombinationen im Allgemeinen n (n-1) / 2.
Dies sind also die paarweisen Zuordnungen:
Zuordnungen zwischen Listen 1 und 2
Liste 1 Liste 2
...
...
John Adams
J. Adams
...
...
Zuordnungen zwischen Listen 2 und 3
Liste 2 Liste 3
...
...
J. Adams
Adams, John
...
...
Zuordnungen zwischen Listen 1 und 3
Liste 1 Liste 3
...
...
John Adams
...
...
...
Oje, was stimmt nicht mit den Zuordnungen zwischen den Listen 1 und 3? In der Tat kommen hier zwei Dinge zusammen:
  1. Es fehlt eine Zuordnung (d. h. falsch negativ), da die Zuordnung zwischen "John Adams" aus Liste 1 und "Adams, John" aus Liste 3 fehlt.
  2. Stattdessen wurde eine falsche Zuordnung eingetragen (d. h. falsch positiv). "John Adams" wurde einem anderen "..." Element zugeordnet. Das ist nicht richtig.
Leider treten solche Probleme mit echten Daten sehr schnell auf. Idealerweise wird nach dem Zuordnen der Einträge zwischen den Listen 1 und 2 und den Listen 2 und 3 die Zuordnung zwischen den Listen 1 und 3 automatisch erstellt. Dies wird als Transitivität bezeichnet. Leider können Tabellenkalkulation so etwas nicht ohne Weiteres.

Wichtig hierbei: Die fehlende Transitivität kann sogar auftreten, wenn Daten nur innerhalb einer einzigen Liste zugeordnet werden (also Duplikaterkennung letztendlich). Das hier gezeigte Problem ist also nicht nur eine Folge des Versuchsaufbaus mit mehr als einer Liste.

Ansatz 2: Speichern zugeordneter Elemente an einem Ort als sogenannte "Cliquen"

Um die Transitivität sicherzustellen, kann ein anderes logisches Denken hilfreich sein: Alle Listeneinträge, die zusammengehören, werden in einer Sammlung namens "Clique" abgelegt.
Zuordnungs-Clique i-1
...
...
Zuordnungs-Clique i
Liste 2: J. Adams
Liste 1: John Adams
Liste 3: Adams, John
Zuordnungs-Clique i + 1
...
...
...
Der Vorteil ist leicht zu erkennen: Die Transitivität bleibt jederzeit erhalten, da es keine Zuordnungspaare gibt, die vergessen werden können. Es ist ein Alles-oder-Nichts-Zuordnung-Konzept für jedes Element. Leider wird das Datenzuordnen auf diese Weise schnell ziemlich unübersichtlich: Da jedes Cliquenmitglied mit den verbleibenden Listenelementen verglichen werden muss, wird dieser Ansatz schnell unübersichtlich. Darüber hinaus müssen alle Cliquen gegeneinander geprüft werden. Wenn es eine Zuordnung zwischen Cliquen gibt, müssen diese vereinigt werden.

Mit Tabellenkalkulationen kann man so nicht arbeiten, denn sie sind für Listen und Tabellen mit nur einem Element pro Zelle und nicht für Cliquen konzipiert worden. Automatisierungswerkzeuge funktionieren hier besser. Obwohl sie die Zuordnungen paarweise speichern, können sie Cliquen automatisch konsolidieren. Für Alteryx ist dies beispielsweise die Gruppierungsoperation. Leider können Automatisierungstools Daten höchstens auf Grundlage textbasierter Ähnlichkeit zuordnen. Kontextbasierte Ähnlichkeit, wie sie vom Menschen erkannt wird, ist für diese Programme nicht möglich.

Matchmerize stellt die Transitivität bei den Zuordnungen durch Cliquen sicher und hält die Komplexität der Datenverarbeitung für den Anwender im Griff

Wie oben erläutert: Um die Zuordnungskonsistenz (sogenannte "Transitivität") sicherzustellen, ist ein cliquenbasierter Ansatz sehr hilfreich. Da Cliquen mit einer Tabelle nur schwer zu realisieren sind, ist es sinnvoll, etwas Anspruchsvolleres zu verwenden.

Matchmerize befreit den Anwender von der Notwendigkeit, die Cliquen manuell zu pflegen. Dies wird durch eine speziell entwickelte Anwendung erreicht, die es dem Anwender ermöglicht, sich auf das schnelle Finden der richtigen Zuordnungen zu konzentrieren.

Quizfrage: Sind Cliquen Mehrbenutzer-sicher?

Eine der Stärken von Matchmerize besteht darin, die Zuordnungen mehrerer Benutzer in eine kombinierte Ausgabeliste zu konsolidieren. Was ist jedoch, wenn die Zuordnungen der Benutzer miteinander in Widerspruch stehen? Stellen Sie sich vor, Alice macht eine Zuordnung zwischen "John Adams" und "John Q Adams", während Bob dies nicht tut. Was passiert in einem solchen Fall?
Erfahren Sie, wie Matchmerize unterschiedliche Meinungen konsolidiert