Mai 26, 2020

Mit dem stetig wachsenden Interesse an Machine Learning und Künstlicher Intelligenz sehen sich Unternehmen auch immer häufiger mit der unbefriedigenden Qualität ihrer Daten konfrontiert. Diese Erkenntnis wird entweder frühzeitig mit einem strukturierten Ansatz gewonnen oder zu spät, wenn die schlechte Datenqualität bereits die Ursache für schlecht funktionierende Datenmodelle ist. In beiden Fällen sollte der nächste Schritt eine methodische Untersuchung der verfügbaren Daten sein, gefolgt von einer Reihe von Schritten zur Behebung der identifizierten Probleme.

In diesem Artikel möchte ich Ihnen einen Überblick über häufige Datenqualitätsprobleme und Strategien zu deren Behebung geben.

„Dirty Data“: Definition und Ursachen

Verunreinigte Daten können ebenso viele Formen annehmen wie sie mögliche Ursachen haben. In den meisten Fällen sind die Daten bereits „verschmutzt“, wenn sie gesammelt und in Datenbanken erfasst werden. Nehmen wir zum Beispiel an, dass John und Bob mit der Bestandsaufnahme in einem Schraubenlager beauftragt werden. John zählt die Schrauben und identifiziert sie, indem er sie mit metrischen Messschiebern misst. Bob hingegen wiegt die Schrauben nur, anstatt sie zu zählen, und benutzt seinen Zollstock, um sie zu kategorisieren. Beide geben ihre Daten in dasselbe Eingabeformular ein, ohne dabei die Methode oder Einheit ihrer Datenpunkte anzugeben. Daraus ergeben sich Probleme in der Einheitlichkeit und, daraus resultierend, auch in der Genauigkeit. Wenn sie außerdem zufällig unabhängig voneinander die gleiche Schachtel mit Schrauben verarbeiten, erhalten wir widersprüchliche Daten und können unserer Problemliste auch noch Inkonsistenzen hinzufügen. Schließlich könnte eine Schachtel mit Schrauben hinter ein Regal gefallen und übersehen worden sein. Jetzt sind die Daten nicht mehr nur fehlerhaft, sondern auch noch unvollständig.

Neben diesen systematischen Fehlern bei der Datenerhebung gibt es eine Reihe von Möglichkeiten, wie eigentlich korrekt erhobene Daten verfälscht werden können. Dazu gehören einfache Rechtschreibfehler, inkonsistente Abkürzungen oder Eingabefehler wie zum Beispiel negative Werte, obwohl nur positive Werte Sinn machen.

Eine weitere Ursache für die Verschlechterung der Datenqualität sind grundlegende Änderungen an Datenspeichersystemen. Beispielsweise kann die Zusammenführung von zwei bisher unabhängigen Systemen in einer übergeordneten Datenbank zu Problemen führen. Bestehenden Inkonsistenzprobleme können sich hier potenzieren, da beide Systeme ihre eigenen Johns und Bobs haben werden. Zusätzliche Probleme können sich aus unterschiedlichen Datenformatierungsprinzipien oder sogar Kodierungen ergeben.

Zusätzlich kann sich die Datenqualität mit der Zeit von selbst verschlechtern, weil die Datensätze veralten. Dies geschieht beispielsweise regelmäßig bei CRM-Systemen, durch Umzüge, Telefonnummernwechsel usw.

Gefahren durch verunreinigte Daten

Wie bereits erwähnt, werden Datenqualitätsprobleme häufig offensichtlich, sobald die Daten in einem datenwissenschaftlichen Kontext verwendet werden. Die Mehrheit der Machine-Learning-Methoden lernt, indem sie sich kontinuierlich an der Realität misst. Für viele Unternehmen ist dies das erste Mal, dass die Datenqualität tatsächlich, wenn auch implizit, quantifiziert wird.

Leider sind sich viele Unternehmen, die dieses Niveau der Datenkompetenz noch nicht erreicht haben, jedoch oft nicht bewusst, welche Auswirkungen ihre falschen Daten auf ihr Geschäft haben. Im besten Fall werden die fehlerhaften Daten nicht genutzt, im schlimmsten Fall beeinflussen sie bereits getroffene datengetriebene Entscheidungen. Beispielsweise wird geschätzt, dass im Durchschnitt mindestens 25 % der Daten in CRM-Systemen in irgendeiner Weise ungenau oder veraltet sind. (Basierend auf Studien, die zeigen, dass 40 % der Personen jedes Jahr ihre Telefonnummer und 37 % ihre E-Mail-Adresse ändern).

Fehlerhafte Daten haben nicht nur keinen Informationswert, sie entwerten auch die intakten Daten, in die sie eingebettet sind. In Bezug auf Machine Learning muss die Anzahl der genauen Datensätze die fehlerhaften stark überwiegen, damit ein KI-Modell die Fehler als Ausreißer aussortieren kann.

Methoden zur Datenbereinigung

Die Methoden der Datenbereinigung reichen von (nahezu) vollautomatischem bis hin zu überwiegend manuellen Vorgängen, was in engem Zusammenhang mit der Menge an Wissen steht, die für jeden Vorgang erforderlich ist.

Die unten beschriebenen Methoden können zur einmaligen Bereinigung einer Datenbank eingesetzt werden, können aber auch als kontinuierliche Mechanismen zur Überwachung der Datenintegrität wiederverwendet werden.

Spaltenebene: Daten-Profiling

Daten-Profiling ist eine elementare Methode zur Analyse einzelner Datenfelder. Wie der Name schon sagt, erzeugt das Daten-Profiling ein Modell für „intakte“ Daten und hebt Einträge hervor, die nicht mit diesem Modell übereinstimmen. Dies klingt zunächst kompliziert, kann aber so intuitiv sein wie das Zählen des Auftretens von einem bestimmten Wert in einer Spalte. Nehmen wir an, wir zählen 4421 Vorkommnisse von dem Wert „Mercedes“, 4823 Vorkommnisse von „Audi“, 3 Vorkommnisse von „Cermedes“ und 1 „Aidu“. In diesem Fall von sporadischen Tippfehlern sind die problematischen Einträge offensichtlich leicht zu erkennen.

Dieser Ansatz funktioniert auch bei nicht kategorischen Daten. Er kann z.B. negative Preise in Produktdatenbanken ausfindig machen, oder Daten aus der Vergangenheit, die eigentlich in der Zukunft liegen sollten. Der große Vorteil des Daten-Profilings besteht darin, dass es keine Kenntnisse über die Spalte hinaus erfordert, auf die es angewendet wird. Es ist jedoch vorteilhaft, zusätzliche, explizite Regeln festzulegen, wie z.B. gültige Wertebereiche oder Muster regulärer Ausdrücke.

Es gibt einen Vorbehalt: Daten-Profiling stark davon abhängig, dass die meisten Datensätze im Datensatz tatsächlich korrekt sind, um eine trennscharfes Modell abzuleiten.

Tabellen-Ebene: Integrität

Über die Erstellung von Datenprofilen hinaus können wir unser Wissen über Prozesse und Arbeitsabläufe nutzen, um anspruchsvollere Regelwerke zu formulieren. So können wir z.B. bei einer Tabelle erfüllter Bestellungen festlegen, dass das Lieferdatum nicht vor dem Bestelldatum liegen darf. Regeln wie diese haben den großen Vorteil, dass sie kontinuierlich anwendbar sind, d.h. nach der initialen Bereinigung können sie bestehen bleiben und künftige Verstöße verhindern.

Der Aufbau eines umfassenden Satzes von Restriktionen zur Gewährleistung der Datenintegrität erfordert eine ebenso umfassende Kenntnis der Daten. Daher ist die Implementierung dieser Methode im Vergleich zum weitgehend automatisierten Daten-Profiling mit einem wesentlich größeren Arbeitsaufwand verbunden.

Datenbank-Ebene: Beziehungen

Als dritte „Ebene“ können wir, nachdem wir sichergestellt haben, dass unsere Tabellen in einem angemessenen Qualitätszustand sind, einen Blick auf das übergreifende Datenbankmodell werfen. Im Kern handelt es sich dabei um eine Erweiterung der im vorigen Absatz erwähnten Integritätsregeln in dem Sinne, dass wir diese Regeln nun auf mehrere Tabellen anwenden können.

Um bei unserem Beispiel der Produktbestellungstabelle zu bleiben, würden wir erwarten, dass alle Produktnummern in der Bestelltabelle mit einem Produkt in der Produkttabelle übereinstimmen. Wenn diese Regel verletzt wird, haben wir entweder unvollständige Produktdaten oder fehlerhafte Bestelldaten.

Die Werkzeuge

Datenbereinigungslösungen können in drei Hauptgruppen unterteilt werden, auf die ich im Folgenden einen kurzen Überblick geben werde. Zukünftige Blogposts werden weitere besondere Vorteile und Anwendungsfälle näher beleuchten.

Die erste Gruppe umfasst eigenständige Softwarelösungen, die Daten aus nahezu beliebigen Quellen importieren. Diese Tools bieten in der Regel Dateiimportfunktionen sowie Konnektoren für verschiedene Datenbanksysteme oder Cloud-Plattformen. Der Bereinigungsprozess selbst wird auf einer Kopie der Daten innerhalb des Tools durchgeführt, was zusätzlichen Aufwand erfordert, um die Ergebnisse auf die Originaldaten anzuwenden. Leider sind diese Produkte meist nicht in der Lage, Analysen über mehrere Tabellen hinweg anzustellen, was ihren Nutzen bei umfangreichen Datenbereinigungsoperationen einschränkt. Ein Beispiel für ein solches Tool ist OpenRefine, ehemals Google Refine.

Die zweite Gruppe besteht aus Tools, die in ein Daten-Ökosystem wie Informatica oder SAP eingebettet sind. Während die tiefe Integration mit den Daten für den Export und Import vorteilhaft ist, ist sie auch einschränkend im Funktionsumfang und in der Anpassung. Ein Vorteil gegenüber den erwähnten Stand-Alone-Lösungen ist die Möglichkeit, tabellenübergreifende Bereinigungsvorgänge durchzuführen.

Kundenspezifische, projektbasierte Lösungen machen die dritte Gruppe aus. Ähnlich wie bei leicht erhältlicher Stand-Alone-Software erfordert die Nutzung kundenspezifischer Lösungen einen Export der Originaldaten, eine detaillierte Analyse und eine Strategie zur Reintegration der Ergebnisse in das Quellsystem. Die Fähigkeit, Domänen- und Prozesswissen in den Analyseprozess einzubeziehen, unterscheidet kundenspezifische Lösungen jedoch von Standardsoftware wie OpenRefine. Ein zusätzlicher Vorteil ist, dass umfangreiche Datenqualitätsprojekte dazu tendieren, Schwachstellen in den Datenerfassungs- und Datenpflegeprozessen aufzudecken und mögliche Verbesserungen zu identifizieren.

Fazit

Das Erreichen und Aufrechterhalten einer hohen Datenqualität liegt im besten Interesse jedes Unternehmens, das aus seinen Daten Mehrwert schöpfen möchte. Fehlerhafte Daten können sich unverhältnismäßig negativ auf Geschäftserkenntnisse, Vorhersagemodelle oder die unmittelbare wirtschaftliche Leistung auswirken. Die Methoden, die ich in diesem Artikel beschrieben habe, sind die Startpunkte für eine einmalige konsolidierte Datenbasis, aber die Aufrechterhaltung dieses Zustandes erfordert auch eine Verbesserung der Datenerhebungs- und Eingabemethoden. In zukünftigen Beiträgen werde ich einen Einblick geben, wie diese Techniken in der Praxis angewendet werden, wie die damit verbundenen Prozesse aussehen und wie Sie die Datenqualität zu einem Designelement Ihrer Datenstrategie machen können.


AUTOR

Max Uppenkamp

Max Uppenkamp has been a Data Scientist at INFORM since 2019. After previously working in Natural Language Processing and Text Mining, he is now engaged in the machine-learning-supported optimization of processes. In addition to accompanying customer projects, he translates the knowledge gained into practice-oriented products and solutions.