Cos'è il max pooling nelle reti neurali convoluzionali?
Max Pooling è una strategia di downsampling nelle reti neurali convoluzionali. Si prega di vedere la seguente figura per una comprensione più completa (Questa figura è tratta dalla mia tesi di dottorato). [Quora in qualche modo offusca l'immagine]
Qui nella figura, mostriamo l'operazione sullo spazio dei pixel. In alternativa possiamo fare un'operazione simile su qualche altro spazio matematico. Inoltre, si può cambiare l'operazione di prendere il 'Max' con qualcos'altro, ad esempio prendere una 'Media' (questo è ciò che viene fatto nell'Average Pooling).
Generalmente, per scopi pedagogici, la rappresentazione del max pooling è fatta per regioni non sovrapposte. Questo a volte porta ad una congettura che il max pooling è solitamente eseguito senza sovrapposizioni. Tuttavia, in realtà, questa nozione non è per lo più seguita. In quasi tutte le famose architetture CNN, il max pooling è stato eseguito con regioni sovrapposte. [Dimensione del kernel, Stride] - AlexNet = [3x3, 2]; GoogleNet = [3x3, 2] , [3x3, 1]; VGG_CNN_S = [3x3,3], [2x2,2]; VGG_CNN_M e varianti = [3x3, 2]; VGG_CNN_F = [3x3, 2]. Abbiamo quindi mostrato nella figura tutte le varianti di pooling massimo attraverso le famose architetture CNN ([3x3,3] è simile in natura a [2x2,2]).
Si possono cercare su Google queste configurazioni o fare riferimento ai file di distribuzione in BVLC Caffe !!
Le sovrapposizioni di pooling sono infatti necessarie nelle CNN. Come è stato sottolineato da Hinton, che senza sovrapposizioni, l'operazione di pooling può perdere importanti informazioni riguardanti la posizione dell'oggetto.
Articoli simili
- Qual è il vantaggio di usare il pooling medio piuttosto che il pooling massimo?
- Cosa sono le reti neurali siamesi, per quali applicazioni sono buone e perché?
- L'ordine dei dati di allenamento è importante quando si addestrano le reti neurali?
- Quali strumenti sono buoni per disegnare i diagrammi dell'architettura delle reti neurali?