Apa itu global max pooling layer dan apa kelebihannya dibanding maxpooling layer?

Jawaban:

69

Global max pooling = layer max pooling biasa dengan ukuran pool sama dengan ukuran input (dikurangi ukuran filter +1, tepatnya). Anda dapat melihat bahwa MaxPooling1Ddibutuhkan pool_lengthargumen, sedangkan GlobalMaxPooling1Dtidak.

Sebagai contoh, jika input dari max pooling layer adalah , global max pooling output 5 , sedangkan layer pooling max biasa dengan ukuran pool sama dengan 3 output 2 , 2 , 5 , 5 , 5 (dengan asumsi langkah = 1).0,1,2,2,5,1,252,2,5,5,5

Ini bisa dilihat dalam kode :

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)

Di beberapa domain, seperti pemrosesan bahasa alami, umum untuk menggunakan global max pooling. Di beberapa domain lain, seperti visi komputer, adalah umum untuk menggunakan penggabungan maks yang tidak bersifat global.

Franck Dernoncourt
sumber
4
Datang ke sini mencari pengumpulan rata-rata global (GAP) tetapi dari contoh Anda yang sederhana namun sangat efektif, saya pikir saya dapat menebak apa yang dilakukan GAP :)
josh
Terima kasih atas jawaban yang sangat ringkas ini. +1. Contoh kecil yang Anda berikan adalah apa yang benar-benar membuat saya memahami apa yang sedang dilakukan Global Max Pooling.
rayryeng
13

Seperti yang dijelaskan dalam makalah ini yang mengusulkan global average pooling (GAP):

Jaringan saraf konvolusional konvensional melakukan konvolusi di lapisan bawah jaringan. Untuk klasifikasi, peta fitur dari lapisan konvolusional terakhir adalah vektor dan dimasukkan ke dalam lapisan yang terhubung penuh diikuti oleh lapisan regresi logistik softmax. Struktur ini menjembatani struktur konvolusional dengan pengklasifikasi jaringan saraf tradisional. Ini memperlakukan lapisan convolutional sebagai ekstraktor fitur, dan fitur yang dihasilkan diklasifikasikan secara tradisional.

Namun, lapisan yang terhubung penuh cenderung overfitting, sehingga menghambat kemampuan generalisasi jaringan secara keseluruhan. Dropout diusulkan oleh Hinton et al sebagai regulator yang secara acak menetapkan setengah dari aktivasi ke lapisan yang terhubung sepenuhnya ke nol selama pelatihan. Ini telah meningkatkan kemampuan generalisasi dan sebagian besar mencegah overfitting.

Dalam makalah ini, kami mengusulkan strategi lain yang disebut global average pooling untuk menggantikan lapisan tradisional yang sepenuhnya terhubung di CNN. Idenya adalah untuk menghasilkan satu peta fitur untuk setiap kategori yang sesuai dari tugas klasifikasi di lapisan mlpconv terakhir. Alih-alih menambahkan lapisan yang terhubung sepenuhnya di atas peta fitur, kami mengambil rata-rata setiap peta fitur, dan vektor yang dihasilkan dimasukkan langsung ke dalam lapisan softmax. Salah satu keuntungan dari penggabungan rata-rata global pada lapisan yang sepenuhnya terhubung adalah bahwa ia lebih asli pada struktur konvolusi dengan memberlakukan korespondensi antara peta fitur dan kategori. Dengan demikian peta fitur dapat dengan mudah diartikan sebagai peta kepercayaan kategori. Keuntungan lain adalah bahwa tidak ada parameter untuk dioptimalkan dalam pengumpulan rata-rata global sehingga overfitting dihindari pada lapisan ini. Selanjutnya, pengumpulan rata-rata global meringkas informasi spasial, sehingga lebih kuat untuk terjemahan spasial input. Kita dapat melihat pengelompokan rata-rata global sebagai pengatur struktural yang secara eksplisit menegakkan peta fitur menjadi peta kepercayaan konsep (kategori). Ini dimungkinkan oleh lapisan mlpconv, karena mereka membuat perkiraan yang lebih baik untuk peta kepercayaan daripada GLM.

Sunting: Seperti yang disarankan oleh @MaxLawnboy, berikut adalah makalah lain tentang topik yang sama .

Tshilidzi Mudau
sumber
Makalah lain tentang model all-CNN arxiv.org/pdf/1412.6806v3.pdf
Maxim Mikhaylov
Terima kasih @ MaxLawnboy, saya akan mengedit jawaban untuk memasukkannya.
Tshilidzi Mudau