2016-01-27 19 views
7

Nella sezione Densely Connected Layer dell'esercitazione di tensorflow, si dice che la dimensione dell'immagine è 7 x 7, dopo che è stata elaborata. Ho provato il codice e sembra che questi parametri funzionino.Come capire la sezione "Densely Connected Layer" in tensorflow tutorial

Ma non so come ottenere questa dimensione 7 x 7. Capisco che:

  • l'immagine originale è 28 x 28,
  • nello strato 1 ° conv, la funzione max_pool_2x2 ridurrà sia della dimensione dell'immagine di un fattore 4, quindi dopo la prima operazione pool, la dimensione dell'immagine è 7 x 7
  • Ecco quello che non capisco

    nello strato di 2 ° conv, c'è un'altra chiamata max_pool_2x2 funzione, quindi penso che la dimensione dell'immagine deve essere di ridurre di un fattore 4 aga in. Ma in realtà no.

Quale passaggio ho sbagliato?

risposta

20

È inoltre necessario conoscere il passo della piscina massima e della convoluzione.

def conv2d(x, W): 
    return tf.nn.conv2d(x, W, strides=[1, 1, 1, 1], padding='SAME') 

def max_pool_2x2(x): 
    return tf.nn.max_pool(x, ksize=[1, 2, 2, 1], 
         strides=[1, 2, 2, 1], padding='SAME') 

Qui, possiamo vedere che spira ha una falcata di 1 e la piscina Max ha un passo di 2. Come si può guardare a max piscina, è che ci vuole una scatola 2x2, e scivola sopra l'immagine , ogni volta assumendo il valore massimo di oltre 4 pixel. Se hai un passo di 2, ci vogliono 2 passi ogni volta che si muove! La dimensione dell'immagine dovrebbe ridursi di un fattore 2 anziché di 4.

In altre parole, un'immagine 28x28 con piscina massima 2x2 e passo 2, diventerà 14x14. Un'altra piscina massima 2x2 e la falcata 2 la ridurranno a 7x7.

Per illustrare ulteriormente il mio punto, prendiamo il caso di max pool 2x2 e passo 1. Se non si esegue il pad dell'immagine, questa diventerà un'immagine 27x27 dopo il pool massimo.

Ecco un'immagine per una risposta più completa: enter image description here

+1

Ah ~ Strid, ho dimenticato di contare che. Grazie ~ – davidshen84

+1

Sei il benvenuto! :) – jkschin

4

Date un'occhiata a Teach Yourself Deep Learning with TensorFlow e Udacity con Vincent Vanhoucke

Questo è trattato nel corso. Attualmente sto lavorando su di esso.

Il corso è gratuito, tuttavia è necessario registrarsi. Si tratta di una serie di video, quiz e progetti di codifica, tutti autonomi e autovalori. Sto imparando molto e mi diverto.

Ecco uno dei quiz.

enter image description here

+0

Questo è sul mio elenco TODO, dopo il mio piano vacanze :) – davidshen84

+0

@GuyCoder hai ancora voglia di parlare del corso? – Serafins

+0

L'ho fatto. Ho solo sperato che tu sappia come farlo :) – Serafins

Problemi correlati