Automatische Datenbereinigung

10

Ein häufiges Problem ist, dass ML eine schlechte Datenqualität aufweist: Fehler in Merkmalswerten, falsch klassifizierte Instanzen usw. usw.

Eine Möglichkeit, dieses Problem zu beheben, besteht darin, die Daten manuell durchzugehen und zu überprüfen. Gibt es jedoch andere Techniken? (Ich wette, es gibt!)

Welche sind besser und warum?

andreister
quelle
Google Refine ist möglicherweise einen Blick wert.
Dimitriy V. Masterov

Antworten:

6

Eine Reduzierung der Dimensionalität über etwas wie PCA wäre hilfreich, um eine Vorstellung von der Anzahl der Dimensionen zu erhalten, die für die Darstellung Ihrer Daten entscheidend sind.

Um nach falsch klassifizierten Instanzen zu suchen, können Sie eine rudimentäre k-means-Clusterung Ihrer Daten durchführen, um eine Vorstellung davon zu erhalten, wie gut Ihre Rohdaten zu Ihren vorgeschlagenen Kategorien passen würden. Obwohl nicht automatisch, wäre die Visualisierung in dieser Phase hilfreich, da Ihr visuelles Gehirn an und für sich ein leistungsstarker Klassifikator ist.

In Bezug auf Daten, die völlig fehlen, verfügt die Statistik bereits über zahlreiche Techniken , um mit dieser Situation umzugehen, einschließlich der Imputation, der Entnahme von Daten aus dem vorhandenen Satz oder einem anderen Satz, um die Lücken zu füllen.

jonsca
quelle
3
Das Zeichnen von Daten ist eine manuelle Überprüfung.
andreister
@andreister Ich betrachte die Überprüfung Punkt für Punkt in einer Tabelle als manuelle Überprüfung, aber okay, ich sehe, worauf Sie hinaus wollen.
Jonsca
5

Sie können eine sachkundige Person nicht wirklich aus der Schleife entfernen und vernünftige Ergebnisse erwarten. Das bedeutet nicht, dass die Person jedes einzelne Element einzeln betrachten muss, aber letztendlich erfordert es einige tatsächliche Kenntnisse, um zu wissen, ob Zusammenfassungen / Diagramme von Daten angemessen sind. (Zum Beispiel: Kann Variable A negativ sein, kann Variable B größer als Variable A sein oder gibt es 4 oder 5 Auswahlmöglichkeiten für die kategoriale Variable C?)

Sobald Sie sich mit den Daten vertraut gemacht haben, können Sie wahrscheinlich eine Reihe von Regeln erstellen, mit denen Sie die Daten automatisch testen können. Das Problem ist, dass andere Fehler auftreten können, über die Sie nicht nachgedacht haben. (Zum Beispiel ein Programmierfehler im Datenerfassungsprozess, der die Variable A in die Variable C dupliziert.)

Wayne
quelle
Gute Antwort. Ich würde nur hinzufügen, um sicherzustellen, dass die zum Bereinigen der Variablen verwendete Syntax in der Dokumentation beibehalten wird, mit Kommentaren, wenn nicht beschreibenden Passagen darüber, warum Dinge geändert wurden. :)
Michelle
1

Wenn Sie wissen, dass Ihre Daten nicht ganz gut sind, ist es immer gut, auch nach Ausreißern zu suchen. Meistens gibt es Anomalien.

Wenn Sie viele Funktionen haben, ist die Reduzierung der Dimensionalität ein Muss. PCA ist dafür sehr effizient.

Wenn Sie fehlende Daten haben, können Sie die Imputation oder Interpolation verwenden. Wenn Ihre Anforderungen dies jedoch zulassen, besteht der beste Fall darin, die kollaborative Filterung zu verwenden.

vonPetrushev
quelle