Saya telah membaca banyak tentang jaringan saraf convoloutional dan bertanya-tanya bagaimana mereka menghindari masalah gradien menghilang. Saya tahu jaringan kepercayaan yang mendalam menumpuk auto-encoders tingkat tunggal atau jaringan dangkal pra-terlatih lainnya dan dengan demikian dapat menghindari masalah ini, tetapi saya tidak tahu bagaimana hal itu dihindari di CNN.
Menurut Wikipedia :
"Terlepas dari" masalah gradien hilang "yang disebutkan di atas," kekuatan pemrosesan GPU yang unggul membuat propagasi balik yang layak layak untuk jaringan saraf umpan jauh ke depan dengan banyak lapisan. "
Saya tidak mengerti mengapa pemrosesan GPU akan menghilangkan masalah ini?
GPU's are fast correlated with vanishing gradients
, saya bisa memahami logika cepat dengan bandwidth memori yang besar untuk memproses multiplikasi matriks multipel! tetapi bisakah Anda menjelaskan apa hubungannya dengan turunannya? Masalah gradien menghilang tampaknya melakukan lebih banyak dengan inisialisasi berat , bukan!Jawaban:
Masalah gradien menghilang mengharuskan kita untuk menggunakan tingkat belajar kecil dengan gradient descent yang kemudian membutuhkan banyak langkah kecil untuk bertemu. Ini adalah masalah jika Anda memiliki komputer yang lambat yang membutuhkan waktu lama untuk setiap langkah. Jika Anda memiliki GPU cepat yang dapat melakukan lebih banyak langkah dalam sehari, ini bukan masalah.
Ada beberapa cara untuk mengatasi masalah gradien yang hilang. Saya akan menebak bahwa efek terbesar untuk CNN berasal dari beralih dari unit nonlinear sigmoid ke unit linear diperbaiki. Jika Anda menganggap jaringan saraf sederhana yang error tergantung pada berat w i j hanya melalui y j , di manaE wij yj
gradiennya adalah
Jika adalah fungsi sigmoid logistik, f ′ akan mendekati nol untuk input besar maupun input kecil. Jika f adalah unit linear yang diperbaiki,f f′ f
http://jmlr.org/proceedings/papers/v9/glorot10a/glorot10a.pdf
sumber