Was ist die globale Max-Pooling-Schicht und was ist ihr Vorteil gegenüber der Max-Pooling-Schicht?


Antworten:


69

Globales maximales Pooling = gewöhnlicher maximaler Pooling-Layer mit Poolgröße entspricht der Größe der Eingabe (minus Filtergröße + 1, um genau zu sein). Sie können sehen, dass dies MaxPooling1Dein pool_lengthArgument GlobalMaxPooling1Derfordert , während dies nicht der Fall ist.

Wenn zum Beispiel die Eingabe der Max-Pooling-Schicht , gibt die globale Max-Pooling-Ausgabe , wohingegen die normale Max-Pooling-Schicht mit der Pool-Größe 3 Ausgaben (vorausgesetzt Schritt = 1).0,1,2,2,5,1,22 , 2 , 5 , 5 , 552,2,5,5,5

Dies ist im Code zu sehen :

class GlobalMaxPooling1D(_GlobalPooling1D):
    """Global max pooling operation for temporal data.
    # Input shape
        3D tensor with shape: `(samples, steps, features)`.
    # Output shape
        2D tensor with shape: `(samples, features)`.
    """

    def call(self, x, mask=None):
        return K.max(x, axis=1)

In einigen Domänen, z. B. bei der Verarbeitung natürlicher Sprache, wird häufig globales maximales Pooling verwendet. In einigen anderen Bereichen, wie z. B. der Bildverarbeitung, wird häufig ein maximaler Pool verwendet, der nicht global ist.


4
Kam hierher und suchte nach einem globalen durchschnittlichen Pooling (GAP), aber anhand Ihres einfachen, aber sehr effektiven Beispiels kann ich mir vorstellen, was GAP tut :)
Josh

Vielen Dank für diese sehr prägnante Antwort. +1. Das kleine Beispiel, das Sie gegeben haben, hat mich wirklich verständlich gemacht, was Global Max Pooling tut.
rayryeng - Wiedereinsetzung von Monica

13

Wie in diesem Papier beschrieben , das globales durchschnittliches Pooling (GAP) vorschlug:

Herkömmliche neuronale Faltungsnetze führen eine Faltung in den unteren Schichten des Netzes durch. Zur Klassifizierung werden die Merkmalskarten der letzten Faltungsschicht vektorisiert und in vollständig verbundene Schichten eingespeist, gefolgt von einer logistischen Softmax-Regressionsschicht. Diese Struktur überbrückt die Faltungsstruktur mit herkömmlichen Klassifizierern für neuronale Netze. Die Faltungsschichten werden als Merkmalsextraktoren behandelt, und das resultierende Merkmal wird auf herkömmliche Weise klassifiziert.

Die vollständig verbundenen Schichten sind jedoch anfällig für eine Überanpassung, wodurch die Generalisierungsfähigkeit des gesamten Netzwerks beeinträchtigt wird. Dropout wird von Hinton et al. Als Regularizer vorgeschlagen, der während des Trainings zufällig die Hälfte der Aktivierungen für die vollständig verbundenen Schichten auf Null setzt. Es hat die Verallgemeinerungsfähigkeit verbessert und verhindert weitgehend eine Überanpassung.

In diesem Artikel schlagen wir eine andere Strategie vor, die als globales durchschnittliches Pooling bezeichnet wird, um die traditionellen vollständig verbundenen Schichten in CNN zu ersetzen. Die Idee ist, eine Feature-Map für jede entsprechende Kategorie der Klassifizierungsaufgabe im letzten mlpconv-Layer zu generieren. Anstatt vollständig verbundene Layer über den Feature-Maps hinzuzufügen, wird der Durchschnitt der einzelnen Feature-Maps ermittelt und der resultierende Vektor direkt in den Softmax-Layer eingespeist. Ein Vorteil des globalen Durchschnittspoolings gegenüber den vollständig verbundenen Layern besteht darin, dass es der Faltungsstruktur natürlicher ist, indem die Korrespondenz zwischen Feature-Maps und Kategorien erzwungen wird. Somit können die Merkmalskarten leicht als Kategorienvertrauenskarten interpretiert werden. Ein weiterer Vorteil besteht darin, dass es keinen Parameter gibt, der im globalen Durchschnittspooling optimiert werden könnte, sodass eine Überanpassung in dieser Schicht vermieden wird. Außerdem, Global Average Pooling fasst die räumlichen Informationen zusammen und ist daher robuster für räumliche Übersetzungen der Eingabe. Wir können Global Average Pooling als einen strukturellen Regularisierer ansehen, der Feature-Maps explizit als Konfidenz-Maps (Kategorien) erzwingt. Dies wird durch die mlpconv-Schichten ermöglicht, da sie die Konfidenzkarten besser approximieren als GLMs.

Bearbeiten: Wie von @MaxLawnboy vorgeschlagen, ist hier ein weiteres Papier zum gleichen Thema .


Ein weiteres Papier über alle CNN-Modelle arxiv.org/pdf/1412.6806v3.pdf
Maxim Mikhaylov

Danke @MaxLawnboy, ich werde die Antwort bearbeiten, um sie einzuschließen.
Tshilidzi Mudau
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.