2017-04-20 6 views
1

In konvolutionellen neuronalen Netzen, Wie kann man die Ausgabe einer bestimmten Conv-Schicht kennen? (I Keras bin mit einem CNN-Modell zu bauen)Berechnung der Größe der Ausgabe einer Conv-Schicht in CNN-Modell

Zum Beispiel, wenn I eindimensional conv Schicht verwenden, wo number_of_filters = 20, kernel_size = 10, und input_shape (500,1)

cnn.add(Conv1D(20,kernel_size=10,strides=1, padding="same",activation="sigmoid",input_shape=(Dimension_of_input,1))) 

und wenn ich bin mit zweidimensionaler conv Schicht, wobei number_of_filters = 64, kernal_size = (5,100), input_shape = (5,720,1) (Höhe, Breite, Kanal)

Conv2D(64, (5, 100), 
     padding="same", 
     activation="sigmoid", 
     data_format="channels_last", 
     input_shape=(5,720,1) 

, was die Anzahl des Ausgangs in den obigen zwei Conv-Schichten? Gibt es eine Gleichung, die verwendet werden kann, um die Anzahl der Ausgaben einer Conv-Schicht im neuronalen Faltungsnetzwerk zu kennen?

Antwort

2

Ja, es gibt Gleichungen dafür, Sie finden sie in der CS231N course website. Aber da dies eine Programmierseite ist, bietet Keras eine einfache Möglichkeit, diese Informationen programmatisch zu erhalten, indem die summary Funktion eines Modells verwendet wird.

model = Sequential() 
fill model with layers 
model.summary() 

im Terminal/console alle Schichtinformationen, wie beispielsweise Eingang Formen, Ausgabeformen, und die Anzahl der Parameter für jede Schicht gedruckt Dies wird.

Verwandte Themen