Bukankah beberapa filter dalam lapisan konvolusional mempelajari parameter yang sama selama pelatihan?

11

Berdasarkan dari apa yang telah saya pelajari, kami menggunakan beberapa filter dalam Conv Layer CNN untuk mempelajari berbagai detektor fitur. Tetapi karena filter ini diterapkan dengan cara yang sama (yaitu digeser dan dikalikan dengan wilayah input), bukankah mereka hanya mempelajari parameter yang sama selama pelatihan? Karenanya penggunaan beberapa filter akan menjadi berlebihan?

cjbayron
sumber

Jawaban:

6

Saya memiliki kebingungan yang sama dalam memahami fakta ini. Kebingungan muncul kepada para pemula karena kejelasan buku tidak menyebutkan bahwa filter berbeda.

karena filter ini diterapkan dengan cara yang sama

Filter diterapkan dengan cara yang sama tetapi nilai sel dalam matriks berbeda satu sama lain. Jadi mereka mengekstrak fitur berbeda dari gambar.

bukankah mereka hanya mempelajari parameter yang sama selama pelatihan

Tidak, mereka tidak mempelajari parameter yang sama karena filternya berbeda sekarang. Jadi penggunaan beberapa filter tidak berlebihan.

manusia Besi
sumber
Terima kasih telah menjawab. Apa sebenarnya yang membuat mereka berbeda? Bagaimana kita memastikan bahwa mereka mempelajari parameter yang berbeda selama pelatihan? Apakah ini nilai awal mereka?
cjbayron
1
Nilai yang berbeda dari setiap sel membuatnya berbeda. Seperti beberapa akan mendeteksi garis miring, beberapa akan mendeteksi garis kurva 45 derajat dll. Jadi mereka semua berbeda.
ironman
1
Ya saya mengerti bahwa nilai yang berbeda membuat filter mendeteksi fitur yang berbeda. Tetapi bagaimana filter ini belajar secara berbeda selama pelatihan?
cjbayron
3
Jika semua filter memulai sama maka mereka akan tetap seperti itu. Inisialisasi acak berarti mereka mulai berbeda dan dari sana mereka belajar hal-hal yang berbeda. Cari pemecahan simetri di jaringan saraf untuk informasi lebih lanjut.
Aaron
4

Saya telah menemukan jawaban untuk pertanyaan ini: https://www.quora.com/Why-does-each-filter-learn-different-features-in-a-convolutional-neural-network

Dikatakan di sini: "... (Optimasi) algoritma menemukan bahwa kerugian tidak berkurang jika dua filter memiliki bobot dan bias yang sama, sehingga pada akhirnya akan mengubah salah satu filter (bobot dan bias) untuk mengurangi kerugian dengan demikian mempelajari fitur baru. "

Terima kasih atas jawabannya. Menghargai itu :)

cjbayron
sumber