Apa perbedaan antara dropout dan drop connect?

24

Apa perbedaan antara dropout dan drop connect?

AFAIK, dropout drop secara acak node tersembunyi selama pelatihan tetapi tetap mereka dalam pengujian, dan drop koneksi koneksi drop.

Tetapi bukankah menjatuhkan koneksi sama dengan menjatuhkan node yang tersembunyi? Bukankah node (atau koneksi) hanya satu set bobot?

Machina333
sumber

Jawaban:

24

DropOut dan DropConnect adalah kedua metode yang dimaksudkan untuk mencegah "co-adaptation" unit dalam jaringan saraf. Dengan kata lain, kami ingin unit mengekstraksi fitur secara independen dari input mereka alih-alih mengandalkan neuron lain untuk melakukannya.

Misalkan kita memiliki jaringan feedforward multilayered seperti ini (topologi tidak terlalu penting). Kami khawatir tentang unit tersembunyi berwarna kuning di adaptasi lapisan tengah.

contoh jaringan 5-4-3

Keluar

Untuk menerapkan DropOut, kami secara acak memilih subset unit dan menjepit outputnya menjadi nol, terlepas dari inputnya; ini secara efektif menghilangkan unit-unit dari model. Subset unit yang berbeda dipilih secara acak setiap kali kami menyajikan contoh pelatihan.

Di bawah ini adalah dua kemungkinan konfigurasi jaringan. Pada presentasi pertama (kiri), unit ke-1 dan ke-3 dinonaktifkan, tetapi unit ke-2 dan ke-3 telah dipilih secara acak pada presentasi berikutnya. Pada waktu pengujian, kami menggunakan jaringan lengkap tetapi skala ulang bobot untuk mengimbangi kenyataan bahwa semuanya sekarang dapat menjadi aktif (misalnya, jika Anda menjatuhkan setengah dari node, bobot juga harus dikurangi setengahnya).

Contoh DropOut

DropConnect

DropConnect bekerja dengan cara yang sama, kecuali bahwa kami menonaktifkan bobot individu (yaitu, setel ke nol), bukan node, sehingga sebuah node dapat tetap aktif sebagian. Secara skematis, tampilannya seperti ini:

DropConnect

Perbandingan

Kedua metode ini bekerja karena mereka secara efektif membiarkan Anda melatih beberapa model pada saat yang sama, kemudian rata-rata menggunakannya untuk pengujian. Misalnya, layer kuning memiliki empat node, dan dengan demikian 16 kemungkinan status DropOut (semua diaktifkan, # 1 dinonaktifkan, # 1 dan # 2 dinonaktifkan, dll).

DropConnect adalah generalisasi dari DropOut karena ia menghasilkan model yang lebih mungkin, karena hampir selalu ada lebih banyak koneksi daripada unit. Namun, Anda bisa mendapatkan hasil yang serupa pada uji coba individual. Misalnya, jaringan DropConnect di sebelah kanan telah secara efektif menjatuhkan Unit # 2 karena semua koneksi yang masuk telah dihapus.

Bacaan lebih lanjut

Makalah asli cukup mudah diakses dan berisi lebih banyak detail dan hasil empiris.

Matt Krause
sumber
6

Ya, tetapi mereka sedikit berbeda dalam hal bagaimana bobot dijatuhkan.

Ini adalah rumus DropConnect (kiri) dan dropout (kanan).

masukkan deskripsi gambar di sini masukkan deskripsi gambar di sini

Jadi, dropout menerapkan mask pada aktivasi, sementara DropConnect menerapkan mask pada bobot.

Kertas DropConnect mengatakan bahwa itu adalah generalisasi dari dropout dalam arti itu

DropConnect adalah generalisasi dari Dropout di mana setiap koneksi, bukannya setiap unit output seperti di Dropout, dapat dijatuhkan dengan probabilitas p.

dontloo
sumber