Trainingsdaten vorbereiten

Auf dieser Seite wird beschrieben, wie Sie Ihre Trainings- und Testdaten vorbereiten, damit AutoML Video Intelligence Classification ein benutzerdefiniertes Videoannotierungsmodell für Sie erstellen kann.

Videos vorbereiten

  • AutoML Video Intelligence Classification unterstützt die folgenden Videoformate (siehe unten), wenn Sie Ihr Modell trainieren oder eine Vorhersage anfragen (Ein Video annotieren). Die maximale Dateigröße beträgt 50 GB (maximale Dauer von 3 Stunden). Einzelne Videodateien mit fehlerhaften oder leeren Zeitstempeln im Container werden nicht unterstützt.

    • .MOV
    • .MPEG4
    • .MP4
    • .AVI
  • Die Trainingsdaten sollten den Daten, für die Vorhersagen getroffen werden sollen, möglichst ähnlich sein. Wenn Ihr Anwendungsfall beispielsweise verschwommene Videos mit niedriger Auflösung (zum Beispiel von einer Überwachungskamera) beinhaltet, sollten Ihre Trainingsdaten aus verschwommenen Videos mit niedriger Auflösung bestehen. Sie sollten außerdem mehrere Blickwinkel, Auflösungen und Hintergründe für Ihre Trainingsvideos bereitstellen.

  • AutoML Video Classification-Modelle können in der Regel keine Labels vorhersagen, die von Menschen nicht zugewiesen werden können. Wenn also bei einem bestimmten Video ein Mensch nicht fähig wäre, nach einer oder zwei Sekunden Betrachtung ein Label zuzuweisen, kann Ihr Modell höchstwahrscheinlich auch nicht dafür trainiert werden.

  • Wir empfehlen ca. 1.000 Trainingsvideos oder Videosegmente pro Label. Die Mindestanzahl pro Label ist 10. Im Allgemeinen sind mehr Beispiele pro Label nötig, um Modelle mit mehreren Labels pro Video zu trainieren. Die Konfidenzwerte sind dann schwieriger zu interpretieren.

  • Das Modell funktioniert am besten, wenn für das am häufigsten verwendete Label höchstens 100-mal mehr Videos vorhanden sind als für das am wenigsten verwendete Label. Es wird empfohlen, Labels mit sehr geringer Häufigkeit zu entfernen.

  • Sie können auch None_of_the_above-Label und -Videos zur Verfügung stellen, die keinem Ihrer definierten Labels entsprechen. Beispielsweise können Sie bei einem Tier-Dataset Videos von Tieren einschließen, die keinem der definierten Labels entsprechen, und ihnen dann das Label None_of_the_above geben. Dies kann die Genauigkeit Ihres Modells verbessern. Beachten Sie, dass None_of_the_above vom System speziell behandelt wird, auch wenn alle Labelnamen funktionieren.

Trainings-, Validierungs- und Test-Datasets

Die Daten in einem Dataset werden beim Trainieren eines Modells in drei Datasets aufgeteilt: ein Trainings-Dataset, ein Validierungs-Dataset und ein Test-Dataset.

  • Das Trainings-Dataset wird zum Erstellen eines Modells verwendet. Während der Suche nach Mustern in den Trainingsdaten werden mehrere Algorithmen und Parameter versucht.
  • Wenn Muster erkannt werden, wird das Validierungs-Dataset zum Testen der Algorithmen und Muster verwendet. Von den Algorithmen und Mustern, die während des Trainings verwendet wurden, werden die mit der besten Leistung ausgewählt.
  • Nachdem die besten Algorithmen und Muster ermittelt wurden, werden sie mit dem Test-Dataset auf Fehlerrate, Qualität und Genauigkeit getestet.

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, was zu verzerrten Messwerten führen kann. Die Verwendung des Test-Datasets zur Bewertung der Qualität des Modells nach der Validierungsphase ermöglicht eine unvoreingenommene Qualitätsbeurteilung des Modells.

Verwenden Sie zum Identifizieren Ihrer Trainings-, Test- und Validierungsdaten CSV-Dateien, wie im nächsten Abschnitt beschrieben.

CSV-Dateien mit Video-URIs und -Labels erstellen

Wenn Sie Ihre Dateien in Google Cloud Storage hochgeladen haben, können Sie CSV-Dateien erstellen, die alle Trainingsdaten und Labels für diese Daten auflisten. Die CSV-Dateien können beliebige Dateinamen haben, sich im selben Bucket wie Ihre Videodateien befinden, UTF-8-codiert sein und mit der Erweiterung .csv enden.

Es gibt drei Dateien, die Sie zum Trainieren und Prüfen Ihres Modells verwenden können:

File Beschreibung
Liste der Modelltrainingsdateien

Enthält die Pfade zu den CSV-Dateien für die Trainings-, Test- und Validierungsdaten.

In dieser Datei sind die Speicherorte von bis zu drei separaten CSV-Dateien angegeben, in denen Ihre Trainings- und Testdaten aufgeführt sind.

Der Inhalt der CSV-Datei mit den Pfaden kann beispielsweise so aussehen:

Beispiel 1:


      TRAIN,gs://automl-video-demo-data/hmdb_split1_5classes_train.csv
      TEST,gs://automl-video-demo-data/hmdb_split1_5classes_test.csv
      

Beispiel 2:


      UNASSIGNED,gs://automl-video-demo-data/hmdb_split1_5classes_all.csv
      
Trainingsdaten

Wird verwendet, um das Modell zu trainieren. Enthält Pfade zu Videodateien, Start- und Endzeiten für Videosegmente sowie Labels, die das Thema des Videosegments angeben.

Wenn Sie eine CSV-Datei für Trainingsdaten angeben, müssen Sie auch eine CSV-Datei für Testdaten angeben.

Testdaten

Wird verwendet, um das Modell während der Trainingsphase zu testen. Enthält Pfade zu Videodateien, Start- und Endzeiten für Videosegmente sowie Labels, die das Thema des Videosegments angeben.

Wenn Sie eine CSV-Datei für Testdaten angeben, müssen Sie auch eine CSV-Datei für Trainingsdaten angeben.

Nicht zugewiesene Daten

Wird sowohl zum Trainieren als auch zum Testen des Modells verwendet. Enthält Pfade zu Videodateien, Start- und Endzeiten für Videosegmente sowie Labels, die das Thema des Videosegments angeben. Die Zeilen in der Datei mit nicht zugewiesenen Daten werden automatisch in Trainings- und Testdaten unterteilt. 80% für das Training und 20% für das Testen.

Sie können nur eine CSV-Datei für nicht zugewiesene Daten angeben, ohne CSV-Dateien für Trainings- und Testdaten angeben zu müssen. Sie können auch nur die CSV-Dateien für Trainings- und Testdaten angeben, ohne eine CSV-Datei für nicht zugewiesene Daten angeben zu müssen.

Die Trainings-, Test- und Vorhersagedateien sowie die Dateien mit nicht zugewiesenen Daten enthalten eine Zeile für jedes Video in dem Dataset, das Sie hochladen, mit folgenden Spalten in jeder Zeile:

  1. Der Inhalt, der kategorisiert und annotiert werden soll. Dieses Feld enthält den Google Cloud Storage-URI für das Video. Bei Cloud Storage-URIs wird zwischen Groß- und Kleinschreibung unterschieden.

  2. Ein Label, das angibt, wie das Video kategorisiert ist. Labels müssen mit einem Buchstaben beginnen und dürfen nur Buchstaben, Zahlen und Unterstriche enthalten. Sie können mehrere Labels für ein Video festlegen. Dazu müssen Sie in der CSV-Datei mehrere Zeilen hinzufügen, die jeweils dasselbe Videosegment mit einem anderen Label kennzeichnen.

  3. Start- und Endzeit des Videosegments. Diese zwei durch Kommas getrennten Felder geben die Start- und Endzeit des zu analysierenden Videosegments in Sekunden an. Die Startzeit muss kleiner sein als die Endzeit. Beide Werte dürfen nicht negativ sein und müssen innerhalb des Zeitbereichs des Videos liegen. Beispiel: 0.09845,1.3600555 Legen Sie eine Startzeit von 0 und eine Endzeit entsprechend der Länge des Videos oder "inf" fest, um den gesamten Inhalt des Videos verwenden zu können. Beispiel: 0,inf

Hier einige Beispielzeilen für die CSV-Dateien:

Einzelnes Label:

gs://<your-video-path>/vehicle.mp4,u-turn,0,5.4

Mehrere Labels im selben Videosegment:

gs://<your-video-path>/vehicle.mp4,right-turn,0,8.285
gs://<your-video-path>/vehicle.mp4,left-turn,0,8.285
gs://<your-video-path>/vehicle.mp4,u-turn,0,8.285

inf verwenden, um das Ende eines Videos anzugeben:

gs://<your-video-path>/vehicle.mp4,right-turn,0,inf

Für optimale Ergebnisse sollten Sie pro Label mindestens mehrere hundert Trainingsvideosegmente einschließen, um ein genaues Modell zu erstellen. Die Anzahl kann je nach Komplexität Ihrer Daten variieren.

Sie können auch Videos in der CSV-Datendatei bereitstellen, ohne Labels anzugeben. Sie müssen dann die AutoML Video Classification-UI verwenden, um Labels auf Ihre Daten anzuwenden, bevor Sie Ihr Modell trainieren. Dazu müssen Sie nur den Cloud Storage-URI für das Video gefolgt von drei Kommas angeben, wie im folgenden Beispiel gezeigt.

gs://<your-video-path>/vehicle.mp4,,,

Sie müssen keine Validierungsdaten angeben, um die Ergebnisse Ihres trainierten Modells überprüfen zu können. AutoML Video Classification unterteilt die für das Training bestimmten Zeilen automatisch in Trainings- und Validierungsdaten. 70 % für das Training und 30 % für die Validierung.

Speichern Sie den Inhalt als CSV-Datei in Ihrem Google Cloud Storage-Bucket.

Häufig auftretende Fehler mit CSV

  • Verwendung von Unicode-Zeichen für Labels. Japanische Schriftzeichen werden z. B. nicht unterstützt.
  • Verwendung von Leerzeichen und nicht alphanumerischen Zeichen für Labels.
  • Leere Zeilen.
  • Leere Spalten (Zeilen mit zwei aufeinanderfolgenden Kommas).
  • Falsche Großschreibung von Cloud Storage-Videopfaden.
  • Falsch konfigurierte Zugriffssteuerung für Videodateien. Ihr Dienstkonto muss mindestens Leseberechtigungen haben oder die Dateien müssen öffentlich lesbar sein.
  • Verweise auf Dateien, die keine Videodateien sind (zum Beispiel PDF- oder PSD-Dateien). Ebenso führen Dateien, die keine Videodateien sind, aber mit einer Dateiendung für Videos umbenannt wurden, zu einem Fehler.
  • URI des Videos verweist auf einen anderen Bucket als das aktuelle Projekt. Der Zugriff ist nur auf Videos im Projekt-Bucket möglich.
  • Nicht CSV-formatierte Dateien