2017-01-02 1 views
1

ich nach der "Deep MNIST für Experten" Tutorial für TensorFlow: https://www.tensorflow.org/tutorials/mnist/pros/Anzahl der Eingangskanäle für Faltungsnetz

Die zweite Faltungsschicht hat die Form [5, 5, 32, 64]; das heißt, es hat 32 Eingänge, während die erste Faltungsschicht 1 Eingang hatte (diese Eingabe ist, ich verstehe die Graustufenwerte des Originalbildes).

Was bedeutet es, dass die zweite Faltungsschicht 32 Eingangskanäle hat? Bedeutet dies, dass die 64 Filter, die in der zweiten Schicht gelernt werden, alle auf ein "virtuelles" Bild mit 32 Punkten pro Pixel angewendet werden (dieses "virtuelle" Bild besteht aus dem Originalbild, in das jedes Filter eingelernt hat) der erste Schritt wurde angewendet)? Wie wendet man einen 2D 5x5 Filter auf ein Bild mit 32 Punkten/Werten pro Pixel an, wenn das vorher Gesagte korrekt ist?

+0

Wie auch immer ich Ihre Frage verstehe, ich glaube nicht, dass SO der beste Platz für solche Fragen ist, versuchen Data Science – Arman

Antwort

0

Die erste Faltungsschicht hat die folgenden Gewichte:

W_conv1 = weight_variable([5, 5, 1, 32]) 

5x5 Hier ist die Pflastergröße 1 die Anzahl der Eingangskanäle und 32 ist die Anzahl der Ausgangskanäle. Nach der ersten Faltung hat die Ausgabe also 32 Kanäle, daher hat die Form der Gewichtungsmatrix für die zweite Faltungsschicht Eingangskanäle.

+0

Sie meinen also genau wie ein Farbbild drei Kanäle (RGB) hat, die nach der ersten Faltung hat 32? Wie multiplizieren wir eine 5x5-Filtermatrix mit einem 5x5-Teil eines Bildes mit 32 Kanälen? (Oder einfacher gesagt mit einem Bild mit mehr als einem Kanal). – Jack

+0

"Sie meinen also genau wie ein Farbbild drei Kanäle (RGB) hat, das eine nach der ersten Faltung 32?" Genau. "Wie multiplizieren wir eine 5x5 Filtermatrix mit einem 5x5 Teil eines Bildes mit 32 Kanälen?" Stellen Sie sich vor, Sie haben einen 5x5x32 Filter. Sie multiplizieren dies mit dem "entsprechenden" Ausschnitt des Bildes und summieren alle Werte, um einen Skalar zu erhalten. Hier hat Ihre Gewichtsmatrix Dimensionen [5, 5, 32, 64], was bedeutet, dass es 64 solcher Filter für jeden Teil des Bildes gibt, die Ihnen 64 Skalare geben. Wenn Sie dies über das gesamte Bild durchführen, erhalten Sie ein neues Bild mit 64 Kanälen. Hoffe, dass klärt –

+0

@TheMyth Nur um genau zu sein, würden wir 64 Kanäle pro Patch und nicht pro Bild richtig bekommen? Ich nehme an, dass die Faltung durchgeführt wird, indem Patches genommen werden, die auf jedes Eingangspixel zentriert sind, daher wird die Anzahl der Ausgangsneuronen für diese Schicht Bildgröße sein * Bildgröße * 64 & pgr; –

Verwandte Themen