Trainingsdaten vorbereiten

Bilder vorbereiten

Allgemeine Anforderungen für Bilder
Unterstützte Dateitypen
  • JPEG
  • PNG
  • GIF
  • BMP
  • ICO
Bildarten

AutoML Vision-Modelle zur Objekterkennung sind für Fotos von Objekten aus dem richtigen Leben optimiert.

Größe der Trainingsbilddatei (MB) Maximal 30 MB
Größe der Vorhersage-Bilddatei* (MB) Maximal 1,5 MB
Bildgröße (Pixel)

Maximal 1.024 x 1.024 Pixel empfohlen

Bei Bildern, die deutlich größer als 1.024 x 1.024 Pixel sind, kann dies die Bildqualität bei der Bildnormalisierung durch AutoML Vision-Objekterkennung beeinträchtigen.

Anforderungen an Labels und Begrenzungsrahmen
Labelinstanzen für das Training

Mindestens 10 Annotationen (Instanzen).

Annotationsvoraussetzungen

Für jedes Label müssen mindestens 10 Bilder mit mindestens jeweils einer Annotation enthalten sein (Begrenzungsrahmen und das Label).

Für das Modelltraining empfehlen wir jedoch, etwa 1000 Annotationen pro Label zu verwenden. Generell gilt: Je mehr Bilder pro Label Sie haben, desto besser wird Ihr Modell.

Labelverhältnis (zwischen dem am häufigsten und dem am wenigsten verwendeten Label):

Das Modell funktioniert am besten, wenn für das am häufigsten verwendete Label höchstens 100 Mal mehr Bilder vorhanden sind als für das am wenigsten verwendete Label.

Für die Modellleistung wird empfohlen, Labels mit sehr niedriger Häufigkeit zu entfernen.

Randlänge des Begrenzungsrahmens Mindestens 0,01 × Länge einer Seite eines Bildes. Beispiel: Für ein Bild mit 1.000 × 900 Pixel sind Begrenzungsrahmen mit mindestens 10 × 9 Pixel erforderlich.
Größe des Begrenzungsrahmens (Pixel) Mindestens 8 × 8 Pixel
Begrenzungsrahmen pro Bild Maximal 500
Begrenzungsrahmen, die von einer Vorhersageanfrage zurückgegeben werden

100 (Standard), maximal 500

Sie können diesen Wert als Teil der Anfrage predict im Feld params.max_bounding_box_count angeben.

Anforderungen an Trainingsdaten und Datasets
Eigenschaften von Trainingsbildern

Die Trainingsdaten sollten den Daten, für die Vorhersagen getroffen werden sollen, möglichst ähnlich sein.

Wenn Ihr Anwendungsfall z. B. verschwommene Bilder mit niedriger Auflösung (z. B. von einer Überwachungskamera) beinhaltet, sollten auch Ihre Trainingsdaten aus verschwommenen Bildern mit niedriger Auflösung bestehen. Sie sollten außerdem mehrere Blickwinkel, Auflösungen und Hintergründe für Ihre Trainingsbilder bereitstellen.

AutoML Vision-Modelle zur Objekterkennung können in der Regel keine Labels vorhersagen, die von Menschen nicht zugewiesen werden können. Wenn also ein Mensch nicht darin unterwiesen werden kann, beim Betrachten eines Bildes innerhalb von 1 bis 2 Sekunden ein Label zuzuweisen, kann Ihr Modell wahrscheinlich auch nicht darin trainiert werden.

Bilder in jedem Dataset Maximal 150.000
Gesamtzahl der annotierten Begrenzungsrahmen in jedem Dataset Maximal 1.000.000
Anzahl der Labels pro Dataset Mindestens 1, maximal 1.000

Leitfaden zu Best Practices

Welche Arten von Bilddaten können Sie verwenden?

  • Unterstützte Bilddateiformate: JPEG, PNG, GIF, BMP oder ICO
  • Die Trainingsdaten sollten den Daten, für die Vorhersagen getroffen werden sollen, möglichst ähnlich sein. Wenn Ihr Anwendungsfall z. B. Bilder mit niedriger Auflösung von Mobiltelefonkameras beinhaltet, sollten auch Ihre Trainingsdaten aus Bildern mit niedriger Auflösung bestehen. Sie sollten außerdem mehrere Blickwinkel, Auflösungen und Hintergründe für Ihre Trainingsbilder bereitstellen. Ein anderes Beispiel: Wenn Sie Regionen in hochauflösenden Bildern erkennen möchten, trainieren Sie das Modell nicht mit zugeschnittenen Bildern.

Was sind die Mindestbedingungen für Daten?

  • Ihre Labels müssen gültige Strings sein (keine Kommas). Kommas sind nur beim CSV-basierten Import ein Problem. Eine Lösung für dieses Problem ist: "file_comma,path","label,comma",0,0,,,1,1,,.
  • Die Begrenzungsrahmen sollten in jedem Fall größer als 8 × 8 Pixel sein. Begrenzungsrahmen, die kleiner sind, werden gefiltert.
  • Bilder können 1.024 × 1.024 Pixel überschreiten. Diese Bilder werden jedoch automatisch verkleinert, was zu einem Verlust der Bildqualität führen kann. Aus diesem Grund empfehlen wir eine maximale Bildgröße von 1.024 × 1.024 Pixel. Bilder, die kleiner sind, werden nicht hochskaliert.
  • Alle Begrenzungsrahmen sollten in den Bildern sein.
  • Die Begrenzungsrahmen sollten vollständig beschriftet sein: Wenn sich zwei Autos in einem Bild befinden, sollten beide mit einem Label versehen werden.

Wie groß muss das Dataset sein?

  • Je mehr, desto besser. Dies trifft fast immer zu. Eine Ausnahme wäre jedoch, wenn das Hinzufügen weiterer Beispiele zu einem Ungleichgewicht oder Datenverlust führen wurde (siehe unten).
  • Die Datenmenge, die zum Trainieren eines guten Modells benötigt wird, hängt von verschiedenen Faktoren ab:
    • Anzahl der Klassen. Je mehr eindeutige Klassen Sie haben, desto mehr Beispiele werden pro Klasse benötigt.
    • Komplexität/Vielfalt der Klassen. Ähnlich wie beim Menschen: Ein Mensch kann anhand nur weniger Beispiele schnell zwischen Bier und Wein unterscheiden. Er muss jedoch öfter verschiedene Weine probieren, um zwischen 5–6 Rotweinsorten unterscheiden zu können. Und für viele Menschen ist es schwierig, 50 verschiedene Rotweine voneinander zu unterscheiden. Zumindest muss dafür viel geübt werden. Analog können neuronale Netzwerke schnell einmal Elefanten von Katzen unterscheiden, aber sie benötigen viel mehr Beispiele, um 30 verschiedene Tiere klassifizieren zu können.
  • Als Faustregel empfehlen wir daher mindestens 100 Trainingsbeispiele pro Klasse, wenn Sie wenige und unverwechselbare Klassen haben, und mehr als 200 Trainingsbeispiele, wenn Ihre Klassen subtiler sind und Sie mehr als 50 verschiedene Klassen haben.

Trainings- und Bewertungs-Datasets – Vergleich

Beim Trainieren von Modellen für maschinelles Lernen teilen Sie das Dataset normalerweise in drei separate Datasets auf:

  1. ein Trainings-Dataset
  2. ein Validierungs-Dataset
  3. ein Test-Dataset

Das Trainings-Dataset wird zum Erstellen eines Modells verwendet. Das Trainingsmodell testet während der Suche nach Mustern in den Trainingsdaten mehrere Hyperparameter. Bei der Mustererkennung verwendet die AutoML Vision-Objekterkennung das Validierungs-Dataset, um die Hyperparameter des Modells zu testen. Die AutoML Vision-Objekterkennung wählt die Algorithmen und Muster mit der besten Leistung aus allen Optionen aus, die in der Trainingsphase ermittelt wurden.

Nachdem die besten Algorithmen und Muster ermittelt wurden, werden sie mit dem Test-Dataset auf Fehlerrate, Qualität und Richtigkeit getestet. Kunden benötigen ein separates Test-Dataset, mit dem sie das Modell unabhängig testen können. Dieses Test-Dataset wird entweder im Trainings-Dataset vom Nutzer festgelegt oder bei Trainingsbeginn automatisch ausgewählt.

Es wird sowohl ein Validierungs- als auch ein Test-Dataset verwendet, um Verzerrungen im Modell zu vermeiden. Während der Validierungsphase werden optimale Modellparameter verwendet. Die Verwendung dieser optimalen Modellparameter kann zu verzerrten Messwerten führen. Die Verwendung des Test-Datasets zur Bewertung der Qualität des Modells nach der Validierungsphase ermöglicht eine unvoreingenommene Qualitätsbeurteilung des Modells für das Training.

Wenn Sie Dataset-Beispiele manuell auswählen, sollten Sie Datasets so strukturieren, dass sie zur selben Gruppe gehören. Ebenso sollten Sie Dataset-Aufteilungen mit ähnlichen Bildern erstellen, die alle eine ähnliche Verteilung von Labels haben.

Manuelle und automatische Dataset-Aufteilungen

Sie können die Aufteilung in Training, Validierung und Test beim Importieren von Datasets in eine CSV-Datei manuell angeben.

Wenn Sie nichts angeben, wird die AutoML Vision-Objekterkennung Ihre Daten nach dem Zufallsprinzip aufteilen. Aufteilungen werden folgendermaßen erstellt:

  • 80 % der Bilder werden für das Training verwendet.
  • 10 % der Bilder werden für die Hyperparameter-Abstimmung und/oder für die Entscheidung verwendet, wann das Training beendet werden soll.
  • 10 % der Bilder werden zum Bewerten des Modells verwendet. Diese Bilder werden nicht für das Training verwendet.

Allgemeine Probleme

  • Unausgeglichene Daten: In vielen Fällen ist die Anzahl der Beispiele pro Klasse (Label) nicht gleich. Kleinere Ungleichgewichte verursachen in der Regel keine Probleme, aber größere Diskrepanzen zwischen den Klassen können zu einem Problem werden. Wenn ein größeres Ungleichgewicht besteht (z. B. wenn einige Klassen mehr als zehnmal häufiger als andere auftreten), wird dies bei der Modellerstellung zu einem Problem. Zwar gibt es Ansätze, Klassenungleichgewichten entgegenzuwirken, doch sind dies keine idealen Konfigurationen für Modelltrainings. Versuchen Sie nach Möglichkeit, Modelltrainings mit sehr unausgeglichenen Daten zu vermeiden.

    Als allgemeine Regel gilt, dass das Verhältnis zwischen den am häufigsten und den am wenigsten verwendeten Klassen unter 2:1 liegen sollte.

  • Fehlerhafte Aufteilungen: Wenn Sie Trainingsdaten bereitstellen, kann die AutoML Vision-Objekterkennung diese automatisch in Trainings-, Validierungs- und Test-Datasets aufteilen. Sie können die Labels für die Trainingsaufteilung auch selbst zuweisen.

    Es gibt keine Garantie, dass Sie dieselbe Aufteilung erhalten, wenn Sie dieselben Daten mehrmals importieren.

    Die Trainings-, Validierungs- und Testdaten sollten keine starke Korrelation haben. Ein häufig auftretender Fehler ist beispielsweise, dass Bilder, die aus Videos stammen, einander sehr ähnlich sind. Wenn Sie zulassen, dass das System das Dataset nach dem Zufallsprinzip aufteilt, ist es sehr wahrscheinlich, dass Sie sowohl in den Trainings- als auch in den Validierungs-/Testdaten sehr ähnliche Bilder erhalten. Dies führt zu einer falschen hohen Genauigkeit der Testdaten.

  • Datenverlust: Datenverlust ist ein erhebliches Problem, das Modelle verzerren kann. Datenverlust tritt auf, wenn der Algorithmus während des Modelltrainings Informationen verwenden kann, die er nicht verwenden sollte und die bei zukünftigen Vorhersagen nicht verfügbar sein werden. Dies führt zu übermäßig optimistischen Ergebnissen bei Trainings-, Validierungs- und möglicherweise Test-Datasets. Bei einigen zukünftigen, nicht bekannten Daten ist diese Leistung jedoch möglicherweise nicht so gut. Dies geschieht häufig unbeabsichtigt und erfordert besondere Sorgfalt bei der Datenvorbereitung.

    Beispiele für Datenverlust: Positive und negative Ergebnisse aus verschiedenen Bildquellen oder Blickwinkeln.