Fungsi dropout adalah untuk meningkatkan kekokohan model dan juga untuk menghilangkan ketergantungan sederhana antara neuron.
Neuron hanya dihapus untuk satu lintasan maju dan mundur melalui jaringan - yang berarti bobotnya secara sintetik diatur ke nol untuk lintasan itu, dan demikian juga kesalahan mereka, yang berarti bahwa bobot tersebut tidak diperbarui. Dropout juga berfungsi sebagai bentuk regularisasi , karena menghukum model karena kompleksitasnya.
Saya akan merekomendasikan memiliki membaca bagian Dropout dalam buku Belajar Dalam Michael Nielsen (gratis dan online), yang memberikan intuisi yang bagus dan juga memiliki diagram / penjelasan yang sangat membantu. Dia menjelaskan bahwa:
Putus sekolah adalah teknik yang sangat berbeda untuk regularisasi. Tidak seperti regularisasi L1 dan L2, dropout tidak bergantung pada modifikasi fungsi biaya. Sebaliknya, di dropout kami memodifikasi jaringan itu sendiri.
Ini artikel ringkasan yang bagus . Dari artikel itu:
Beberapa Pengamatan:
- Dropout memaksa jaringan saraf untuk mempelajari fitur yang lebih kuat yang berguna dalam hubungannya dengan banyak himpunan bagian acak dari neuron lain.
- Dropout secara kasar menggandakan jumlah iterasi yang diperlukan untuk konvergen. Namun, waktu pelatihan untuk setiap zaman kurang.
- Dengan unit tersembunyi H, yang masing-masing dapat dijatuhkan, kami memiliki 2 ^ H model yang mungkin. Dalam fase pengujian, seluruh jaringan dipertimbangkan dan setiap aktivasi dikurangi oleh faktor p.
Contoh
Bayangkan saya meminta Anda membuatkan saya secangkir teh - Anda mungkin selalu menggunakan tangan kanan Anda untuk menuangkan air, mata kiri Anda untuk mengukur tingkat air dan kemudian tangan kanan Anda lagi untuk mengaduk teh dengan sendok. Ini berarti tangan kiri dan mata kanan Anda tidak banyak berguna. Menggunakan dropout misalnya akan mengikat tangan kanan Anda di belakang punggung - memaksa Anda untuk menggunakan tangan kiri Anda. Sekarang setelah membuatkan saya 20 cangkir teh, dengan satu mata atau satu tangan diambil dari tindakan, Anda lebih terlatih dalam menggunakan semua yang tersedia. Mungkin nanti Anda akan dipaksa untuk membuat teh di dapur kecil, di mana hanya mungkin menggunakan ketel dengan lengan kiri Anda ... dan setelah menggunakan dropout, Anda memiliki pengalaman melakukan itu! Anda menjadi lebih kuat untuk melihat data.
Dropout sebenarnya tidak menghilangkan neuron, hanya saja neuron-neuron tersebut tidak memainkan peran apa pun (jangan diaktifkan) untuk kumpulan data yang diberikan.
Contoh - Misalkan ada jalan 8 jalur - Ketika truk datang, mereka melewati jalur 1,2,4,6,7, ketika mobil datang, mereka melewati jalur 2,3,4,7,8 dan ketika sepeda datang , mereka melewati jalur 1,2,5,8. Jadi, terlepas dari kendaraan apa pun, semua jalur ada di sana, tetapi hanya beberapa yang digunakan.
Demikian pula, semua neuron digunakan dalam seluruh model, tetapi hanya sebagian neuron yang diaktifkan untuk kumpulan data tertentu. Dan model tidak ditebang nanti, kompleksitas model tetap seperti apa adanya.
Mengapa menggunakan dropout?
Seperti yang diberikan dalam buku pembelajaran Deep oleh Ian Goodfellow,
Dia juga mengatakan-
Buku ini mengatakan-
sumber
Cara lain untuk melihat apa yang dilakukan dropout adalah bahwa itu seperti slab-and-spike sebelum koefisien untuk kovariat (yaitu beberapa istilah interaksi kompleks kovariat asli dengan beberapa transformasi fungsional yang rumit) dalam model Bayesian. Ini adalah interpretasi yang diajukan oleh Yarin Gal dalam tesisnya (lihat daftar publikasi ).
Berikut ini adalah argumen singkat yang melambaikan tangan untuk alasan ini:
Mengapa kita menginginkan slab-and-spike sebelumnya? Ini menginduksi model Bayesian rata-rata antara jaringan netral tanpa neuron itu dan satu dengan itu masuk. Dengan kata lain, itu memungkinkan kita mengekspresikan ketidakpastian tentang apakah jaringan netral benar-benar perlu memiliki kompleksitas penuh yang mungkin dan dengan tepat memperhitungkan ketidakpastian ini dalam perhitungan. prediksi. Ini membahas masalah utama dari jaringan netral untuk dapat menyesuaikan dengan data (meskipun tentu saja itu bukan satu-satunya cara yang mungkin untuk mencapai itu).
sumber
Lapisan putus sekolah secara acak memilih bagian neuron tertentu, mengurangi kapasitas representasional dari model yang bersangkutan. Ini mencegah jaringan dari pemasangan batas keputusan nonlinier kompleks (yaitu "noise" dalam dataset), sehingga mencegah (atau memperbaiki) overfitting.
sumber