Datasets: Datenmerkmale

Ein Dataset ist eine Sammlung von Beispiele.

Viele Datasets speichern Daten in Tabellen (Rastern), z. B. kommagetrennte Werte (CSV) oder direkt aus Tabellenkalkulationen oder Datenbanktabellen. Tabellen sind ein intuitives Eingabeformat für Maschinen, Lernmodelle kennen. Sie können sich jede Zeile der Tabelle als Beispiel vorstellen. und jede Spalte als potenzielles Merkmal oder Label. Dennoch können Datasets auch von anderen Formaten abgeleitet werden, einschließlich Logdateien und Protokollpuffer.

Unabhängig vom Format ist Ihr ML-Modell nur so gut wie die Daten, mit denen trainiert wird. In diesem Abschnitt werden die wichtigsten Datenmerkmale untersucht.

Datentypen

Ein Dataset könnte viele Arten von Datentypen enthalten, nicht beschränkt auf:

  • die in einer separaten Tabelle behandelt werden. Einheit
  • kategorialen Daten, die in einem separaten Einheit
  • menschliche Sprache, einschließlich einzelner Wörter und Sätze, bis hin zu ganze Textdokumente
  • Multimedia (z. B. Bilder, Videos und Audiodateien)
  • Ausgaben anderer ML-Systeme
  • Einbettungsvektoren, die sich in einem späteren Modul behandelt.

Die vorherigen Datentypen können viel weiter unterteilt werden. Nachfolgende Module in diesem Kurs, z. B. das Modul Categorical Modul „Daten“ – Details und diese Datentypen unterteilen.

Datenmenge

Als grobe Faustregel gilt: Ihr Modell sollte mindestens anhand einer Reihenfolge trainiert werden, (oder zwei) mehr Beispiele als trainierbare Parameter. Es ist jedoch gut, Modelle werden im Allgemeinen an erheblich mehr Beispielen trainiert.

Modelle, die mit großen Datasets und mit wenigen Funktionen Modelle, die anhand kleiner Datasets trainiert wurden, mit vielen Funktionen. Google hat bisher großen Erfolg beim Trainieren einfacher Modelle großen Datasets.

Unterschiedliche Datasets für unterschiedliche ML-Programme können sehr aufwendig sein. anhand unterschiedlicher Beispiele ein nützliches Modell zu erstellen. Für einige relativ können einige Dutzend Beispiele ausreichen. Bei anderen Problemen Billion Beispiele nicht ausreichen.

Sie können mit einem kleinen Dataset gute Ergebnisse erzielen, wenn Sie einem vorhandenen Modell, das bereits mit großen Datenmengen trainiert wurde, Schema.

Qualität und Zuverlässigkeit der Daten

Alle bevorzugen hohe Qualität, aber diese ist eher vage. Konzept, dass es auf viele unterschiedliche Arten definiert werden kann. In diesem Kurs werden Qualität pragmatisch:

Ein qualitativ hochwertiges Dataset hilft Ihrem Modell, sein Ziel zu erreichen. Ein Dataset von niedriger Qualität hindert Ihr Modell daran, sein Ziel zu erreichen.

Ein Dataset von hoher Qualität ist in der Regel auch zuverlässig. Zuverlässigkeit bezieht sich darauf, inwieweit Sie Ihren Daten vertrauen können. Ein Modell, das mit einem zuverlässigen Dataset trainiert wurde, liefert mit höherer Wahrscheinlichkeit nützliche als ein mit unzuverlässigen Daten trainiertes Modell.

Beim Messen der Zuverlässigkeit müssen Sie Folgendes bestimmen:

  • Wie häufig treten Labelfehler auf? Wenn Ihre Daten zum Beispiel von Menschen beschriftet sind, wie oft sind eure Prüfer Fehler gemacht?
  • Sind Ihre Features unruhig? Das heißt, die Werte in Ihren Features Fehler enthalten? Seien Sie realistisch – Sie können Ihr Dataset nicht dauerhaft löschen vor allem Lärm. Etwas Rauschen ist normal. zum Beispiel GPS-Messungen Standort von Woche zu Woche leicht schwanken.
  • Wurden die Daten für Ihr Problem ordnungsgemäß gefiltert? Beispiel: Soll Ihr Dataset Suchanfragen von Bots enthalten? Wenn Sie Spam-Erkennungssystem erstellt, dann lautet die Antwort wahrscheinlich "Ja". Wenn Sie jedoch versuchen, die Suchergebnisse für Nutzer zu verbessern, dann ist es nein.

Häufige Ursachen für unzuverlässige Daten in Datasets:

  • Fehlende Werte. Beispiel: Wenn jemand vergessen hat, auf das Alter des Hauses.
  • Doppelte Beispiele. Beispiel: Ein Server hat fälschlicherweise Logeinträge zweimal eingeben.
  • Ungültige Featurewerte. Beispiel: Jemand hat eine zusätzliche Ziffer oder einen lag das Thermometer in der Sonne.
  • Ungültige Labels. So hat z. B. eine Person versehentlich ein Bild eines Eiche als Ahornbaum.
  • Fehlerhafte Datenbereiche. Beispielsweise ist eine bestimmte Funktion sehr zuverlässig, außer dem einen Tag, an dem das Netzwerk immer wieder abstürzte.

Wir empfehlen die Automatisierung, um unzuverlässige Daten zu kennzeichnen. Beispiel: Unittests, die ein externes formelles Datenschema definieren oder darauf basieren, Flag-Werte, die außerhalb eines definierten Bereichs liegen.

Vollständige vs. unvollständige Beispiele

In einer perfekten Welt ist jedes Beispiel vollständig. Das heißt, jedes Beispiel enthält für jedes Feature einen Wert.

Abbildung 1: Ein Beispiel, das Werte für alle fünf seiner
       Funktionen.
Abbildung 1. Ein vollständiges Beispiel.

 

Leider sind reale Beispiele oft unvollständig. Mindestens ein Featurewert fehlt.

Abbildung 2. Ein Beispiel mit Werten für vier der fünf
            Funktionen. Ein Element ist als fehlend markiert.
Abbildung 2. Ein unvollständiges Beispiel.

 

Trainieren Sie kein Modell für unvollständige Beispiele. Korrigieren oder entfernen Sie unvollständige Beispiele enthält, indem Sie einen der folgenden Schritte ausführen:

  • Löschen Sie unvollständige Beispiele.
  • Fehlende Werte unter Impute: also konvertieren Sie das unvollständige Beispiel in ein vollständiges Beispiel, indem Sie begründete Vermutungen für die fehlenden Werte.
Abbildung 3: Ein Dataset mit drei Beispielen, von denen zwei
            unvollständige Beispiele. Jemand hat diese beiden unvollständigen
            Beispiele aus dem Dataset.
Abbildung 3: Unvollständige Beispiele aus dem Dataset löschen.

 

Abbildung 4: Ein Dataset mit drei Beispielen, von denen zwei
            unvollständige Beispiele mit fehlenden Daten. Eine Entität (ein Mensch
            oder Imputationssoftware) kalkulierte Werte enthält, die den Wert
            fehlende Daten.
Abbildung 4. Fehlende Werte für unvollständige Beispiele hinzufügen.

 

Wenn das Dataset genügend vollständige Beispiele zum Trainieren eines nützlichen Modells enthält, Löschen Sie gegebenenfalls die unvollständigen Beispiele. Wenn nur bei einer Funktion eine große Datenmenge fehlt und diese kann das Modell wahrscheinlich nicht sehr nützlich sein, dann sollten Sie überlegen, aus den Modelleingaben zu ermitteln und zu sehen, wie viel Qualität zu entfernen. Wenn das Modell auch ohne dieses Modell genau oder fast genauso gut funktioniert, ist das großartig. Wenn Sie nicht genügend vollständige Beispiele zum Trainieren eines nützlichen Modells haben, können Sie fehlende Werte berechnen.

Es ist kein Problem, unbrauchbare oder redundante Beispiele zu löschen, wichtige Beispiele. Leider ist es manchmal schwierig, zwischen nutzlosen und nützlichen Beispielen. Wenn Sie sich nicht entscheiden können, sollten Sie zwei Datasets erstellen: eines, das durch Löschen unvollständige Beispiele und das andere durch Einrechnen. Bestimmen Sie dann, mit welchem Dataset das bessere Modell trainiert wird.


<ph type="x-smartling-placeholder">

Ein gängiger Algorithmus besteht darin, den Mittelwert oder Median als kalkulatorischen Wert zu verwenden. Wenn Sie also ein numerisches Merkmal mit Z-Werte, dann der kalkulatorische Wert typischerweise 0 ist (da 0 im Allgemeinen der mittlere Z-Wert ist).

Übung: Wissenstest

Hier sind zwei Spalten eines Datasets, sortiert nach Timestamp.

Zeitstempel Temperatur
8. Juni 2023, 09:00 12
8. Juni 2023, 10:00 Uhr 18
8. Juni 2023, 11:00 fehlt
8. Juni 2023 12:00 24
8. Juni 2023 13:00 38

Welcher der folgenden Werte wäre ein vernünftiger Wert für die Berechnung für den fehlenden Wert für Temperatur ein?

23
Wahrscheinlich. 23 ist der Mittelwert der benachbarten Werte (12, 18, 24 und 38). Den Rest des Datasets sehen wir jedoch nicht. dass 23 an anderen Tagen ein Ausreißer für 11:00 wäre.
31
Unwahrscheinlich. Der begrenzte Teil des Datasets, den wir sehen können, dass 31 viel zu hoch ist für die Temperatur von 11:00 Uhr. Sie können jedoch können wir nicht sicher sein, ohne die Imputation auf einer Beispiele.
51
Sehr unwahrscheinlich. 51 ist viel höher als jeder der angezeigten Werte. (und ist daher viel höher als der Mittelwert).