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.
Leider sind reale Beispiele oft unvollständig. Mindestens ein Featurewert fehlt.
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.
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?