Wie wird eine Datenerweiterung und eine Aufteilung der Zugvalidierung durchgeführt?

14

Ich mache eine Bildklassifizierung mit maschinellem Lernen.

Angenommen, ich habe einige Trainingsdaten (Bilder) und teile die Daten in Trainings- und Validierungssätze auf. Außerdem möchte ich die Daten durch zufällige Rotationen und Rauschinjektion erweitern (neue Bilder aus den Originalen erstellen). Die Erweiterung erfolgt offline.

Welches ist die richtige Methode zur Datenerweiterung?

  1. Teilen Sie die Daten zunächst in Trainings- und Validierungssätze auf, und erweitern Sie sie dann sowohl für Trainings- als auch für Validierungssätze.

  2. Teilen Sie die Daten zunächst in Trainings- und Validierungssätze auf, und erweitern Sie sie dann nur für den Trainingssatz.

  3. Führen Sie zuerst eine Datenerweiterung für die Daten durch und teilen Sie die Daten dann in einen Trainings- und Validierungssatz auf.

Yangjie
quelle
1
"Datenerweiterung" hat mehr als eine Bedeutung; Es wäre hilfreich, Ihre Frage zu bearbeiten, um zu klären, welche Ihre ist, oder nur um ein Beispiel zu nennen.
Scortchi
Wenn Sie planen, TTA durchzuführen, sollte die Erweiterung auf den Validierungssatz sowie auf den Testsatz angewendet werden.
Abby Yorker

Antworten:

18

Teilen Sie die Daten zuerst in Trainings- und Validierungssätze auf, und erweitern Sie sie dann auf dem Trainingssatz.

Sie verwenden Ihren Validierungssatz, um abzuschätzen, wie Ihre Methode mit Daten aus der realen Welt funktioniert. Daher sollte sie nur Daten aus der realen Welt enthalten. Das Hinzufügen erweiterter Daten verbessert die Genauigkeit der Validierung nicht. Es sagt bestenfalls etwas darüber aus, wie gut Ihre Methode auf die Datenerweiterung reagiert und im schlimmsten Fall die Validierungsergebnisse und die Interpretierbarkeit beeinträchtigt.

burk
quelle
Ich bin ziemlich neugierig auf etwas in Ihrer Antwort. Wenn mein Kriterium zum Beenden des CNN-Trainings den Validierungsverlust verringert, sind Sie der Meinung, dass eine Datenerweiterung der Validierungsdaten eine gute Wahl ist?
mad
1
Nein, ich denke immer noch, dass dies die Validierungsergebnisse und die Interpretierbarkeit ruinieren würde, da die Validierungsgenauigkeit kein guter Ersatz für die Genauigkeit bei neuen unsichtbaren Daten mehr ist, wenn Sie die Validierungsdaten erweitern.
Burk
Müssen wir also überhaupt keine Datenerweiterung bei der Validierung und beim Testen von Daten anwenden?
Aadnan Farooq A
@AadnanFarooqA Nein. Normalerweise sollten Sie dieselben Vorgänge für Ihre Test- und Validierungsdaten ausführen, die Sie auch für Ihre unsichtbaren Daten beabsichtigen, wenn Sie Ihr Modell für Vorhersagen verwenden.
Burk
1
@AadnanFarooqA Normalerweise sollten Sie die Trainingsdaten nach der Aufteilung nur erweitern.
Burk
4

Machen Sie niemals 3, da sonst Leckagen auftreten können. Nehmen wir zum Beispiel an, die Vergrößerung ist eine Verschiebung um 1 Pixel nach links. Wenn die Aufteilung nicht augmentationsbewusst ist, erhalten Sie möglicherweise sehr ähnliche Datenmuster sowohl im Zug als auch in der Validierung.

eyaler
quelle
0

Datenerweiterung bedeutet, externe Daten / Informationen zu den vorhandenen Daten hinzuzufügen, die analysiert werden.

Da die gesamten erweiterten Daten für maschinelles Lernen verwendet werden, ist der folgende Prozess besser geeignet:

Datenerweiterung durchführen -> Daten aufteilen

Dawny33
quelle
Danke für die Antwort. Ist es in Ordnung, dass ein Sample und das Augmented Sample, das dem Original sehr ähnlich ist, in verschiedenen Sets verteilt sind?
Yangjie
Sie meinen die vorhandenen Daten als Trainingssatz und die erweiterten Daten als Validierungssatz? Dann NO
Dawny33
Die Aufteilung erfolgt nach dem Zufallsprinzip. Wenn ich also eine Datenerweiterung durchführe und dann die Daten aufteile, werden wahrscheinlich einige vorhandene Daten (nicht alle) in den Trainingssatz aufgeteilt, während die erweiterten Daten in den Validierungssatz verschoben werden.
Yangjie
Mit Augmentation meinen Sie das Anhängen? Augmented Data sind die Daten, die an allen Punkten aktuelle Daten unterstützen. Wenn also die Aufteilung zufällig ist, führt die Aufteilung in beiden Sätzen zu der gleichen Menge an zusätzlichen Daten wie die vorhandenen Daten
Dawny33,
Gibt es einen Hinweis auf Papier dafür?
Aadnan Farooq A