Was sind einige nützliche Datenerweiterungstechniken für tiefe Faltungs-Neuronale Netze?


13

Hintergrund: Ich habe kürzlich auf einer tieferen Ebene die Wichtigkeit der Datenerweiterung beim Training von neuronalen Faltungsnetzen verstanden, nachdem ich diesen ausgezeichneten Vortrag von Geoffrey Hinton gesehen habe .

Er erklärt, dass Faltungsneuralnetze der aktuellen Generation den Bezugsrahmen des zu testenden Objekts nicht verallgemeinern können, was es einem Netzwerk erschwert, wirklich zu verstehen, dass gespiegelte Bilder eines Objekts gleich sind.

Einige Forschungen haben versucht, diesem Problem abzuhelfen. Hier ist eines der vielen vielen Beispiele . Ich denke, dies hilft festzustellen, wie kritisch die Datenerweiterung heute beim Training von Faltungs-Neuronalen Netzen ist.

Datenerweiterungstechniken werden selten miteinander verglichen. Daher:

Fragen:

  • In welchen Zeitungen berichteten die Praktizierenden von außergewöhnlich besseren Leistungen?

  • Welche Datenerweiterungstechniken haben Sie als hilfreich empfunden?


Hallo @rhadar, hattest du Neuigkeiten? Danke :)
nullgeppetto

Antworten:


1

Sec. 1: Datenerweiterung Da tiefe Netzwerke mit einer großen Anzahl von Trainingsbildern trainiert werden müssen, um eine zufriedenstellende Leistung zu erzielen, ist es besser, eine Datenerweiterung durchzuführen, um die Leistung zu steigern, wenn der ursprüngliche Bilddatensatz begrenzte Trainingsbilder enthält. Darüber hinaus muss die Datenerweiterung durchgeführt werden, wenn ein tiefgreifendes Netzwerk trainiert werden soll.

  • Es gibt viele Möglichkeiten zur Datenerweiterung, z. B. das beliebte horizontale Spiegeln, zufällige Zuschneiden und Farbjitter. Darüber hinaus können
    Sie Kombinationen aus mehreren verschiedenen Verarbeitungsschritten ausprobieren, z. B.
    die Rotation und die zufällige Skalierung gleichzeitig. Außerdem können
    Sie versuchen, die Sättigung und den Wert (S- und V-Komponenten des
    HSV-Farbraums) aller Pixel auf eine Potenz zwischen 0,25 und 4 zu erhöhen (
    für alle Pixel innerhalb eines Patches gleich). Multiplizieren Sie diese Werte mit einem Faktor
    zwischen 0,7 und 1.4, und addieren Sie einen Wert zwischen -0,1 und 0,1.
    Sie können auch einen Wert zwischen [-0,1, 0,1] zum Farbton (H-
    Komponente von HSV) aller Pixel im Bild / Patch hinzufügen .

  • Krizhevsky et al. 1 schlug 2012 beim Training des berühmten Alex-Net eine ausgefallene PCA vor. Durch die ausgefallene PCA wird die Intensität der RGB-
    Kanäle in den Trainingsbildern geändert. In der Praxis können Sie zunächst PCA mit dem Satz von RGB-Pixelwerten in Ihren Trainingsbildern ausführen. Und
    dann addieren Sie für jedes Trainingsbild einfach die folgende Menge zu
    jedem RGB-Bildpixel (dh I_ {xy} = [I_ {xy} ^ R, I_ {xy} ^ G, I_ {xy} ^ B] ^ T ):
    [bf {p} _1, bf {p} _2, bf {p} _3] [alpha_1 Lambda_1, alpha_2 Lambda_2, alpha_3
    Lambda_3] ^ T wobei bf {p} _i und Lambda_i der i-te Eigenvektor und der
    Eigenwert sind der 3 × 3-Kovarianzmatrix der RGB-Pixelwerte
    und alpha_i ist eine Zufallsvariable, die aus einem Gaußschen gezogen wird
    mit Mittelwert Null und Standardabweichung 0,1. Bitte beachten Sie, dass jedes
    alpha_i nur einmal für alle Pixel eines bestimmten
    Trainingsbildes gezeichnet wird, bis dieses Bild erneut für das Training verwendet wird. Das
    heißt, wenn das Modell wieder auf dasselbe Trainingsbild trifft, wird
    zufällig ein weiteres alpha_i für die Datenerweiterung erzeugt. In 1
    behaupteten sie , dass „eine ausgefallene PCA ungefähr eine wichtige
    Eigenschaft natürlicher Bilder erfassen könnte , nämlich dass die Objektidentität gegenüber Änderungen der Intensität und Farbe der Beleuchtung unveränderlich ist“. Um die
    Klassifizierungsleistung zu verbessern, reduzierte dieses Schema die Top-1-Fehlerquote
    im Wettbewerb von ImageNet 2012 um über 1%.

(Quelle: Tipps / Tricks in tiefen neuronalen Netzen (von Xiu-Shen Wei))

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.