Dalam Alex Krizhevsky, et al. Klasifikasi imagenet dengan jaringan saraf convolutional yang mendalam mereka menyebutkan jumlah neuron di setiap lapisan (lihat diagram di bawah).
Input jaringan adalah 150.528-dimensi, dan jumlah neuron dalam lapisan jaringan yang tersisa diberikan oleh 253.440–186.624–64.889–64.889–43.264–4096–4096–1000.

Tampilan 3D
Jumlah neuron untuk semua lapisan setelah yang pertama jelas. Salah satu cara sederhana untuk menghitung neuron adalah dengan hanya mengalikan tiga dimensi dari lapisan itu ( planes X width X height):
- Layer 2:
27x27x128 * 2 = 186,624 - Layer 3:
13x13x192 * 2 = 64,896 - dll.
Namun, melihat lapisan pertama:
- Lapisan 1:
55x55x48 * 2 = 290400
Perhatikan bahwa ini tidak 253,440 seperti yang ditentukan di koran!
Hitung Ukuran Output
Cara lain untuk menghitung tensor keluaran konvolusi adalah:
Jika gambar input adalah tensor 3D
nInputPlane x height x width, ukuran gambar output akan berada dinOutputPlane x owidth x oheighttempat
owidth = (width - kW) / dW + 1
oheight = (height - kH) / dH + 1.
(dari Dokumentasi SpatialConvolution Torch )
Gambar input adalah:
nInputPlane = 3height = 224width = 224
Dan lapisan konvolusi adalah:
nOutputPlane = 96kW = 11kH = 11dW = 4dW = 4
(mis. ukuran kernel 11, langkah 4)
Memasukkan angka-angka itu kita dapatkan:
owidth = (224 - 11) / 4 + 1 = 54
oheight = (224 - 11) / 4 + 1 = 54
Jadi kita kekurangan 55x55dimensi yang kita butuhkan untuk mencocokkan kertas. Mereka mungkin padding (tetapi cuda-convnet2model secara eksplisit menetapkan padding ke 0)
Jika kita mengambil 54dimensi -ukuran kita mendapatkan 96x54x54 = 279,936neuron - masih terlalu banyak.
Jadi pertanyaan saya adalah ini:
Bagaimana mereka mendapatkan 253.440 neuron untuk lapisan konvolusional pertama? Apa yang saya lewatkan?