Relu memang memiliki 0 gradien menurut definisi, lalu mengapa gradien menghilang bukan masalah untuk x <0?

10

Menurut definisi, Relu adalah max(0,f(x)). Kemudian gradien yang didefinisikan sebagai: 1 if x > 0 and 0 if x < 0.

Bukankah ini berarti gradien selalu 0 (hilang) ketika x <0? Lalu mengapa kita mengatakan Relu tidak menderita masalah gradien menghilang?

sejenis kacang-kacangan dari Jepang
sumber

Jawaban:

5

Anda sebagian besar benar! ReLU memang memiliki masalah dengan hilangnya gradien, tetapi hanya di satu sisi, jadi kami menyebutnya sesuatu yang lain: 'masalah ReLU yang sedang sekarat'. Lihat respons stack overflow ini untuk informasi lebih lanjut: Apa masalah "dying ReLU" di jaringan saraf?

Itu perbedaan semantik kecil. Banyak fungsi (tanh dan logistik / sigmoid) memiliki turunan yang sangat mendekati nol ketika Anda berada di luar rentang operasi standar. Ini adalah masalah 'gradien hilang'. Semakin buruk Anda, semakin sulit untuk kembali ke zona yang baik. ReLU tidak menjadi lebih buruk semakin jauh Anda berada di arah positif, jadi tidak ada masalah gradien hilang (di sisi itu). Asimetri ini mungkin cukup untuk membenarkan menyebutnya sesuatu yang berbeda, tetapi idenya sangat mirip.

Joseph Catrambone
sumber
2
Layak ditambahkan: Masalah gradien menghilang cenderung tentang perubahan progresif pada kedalaman jaringan, dan tidak secara langsung tentang sifat-sifat fungsi transfer neuron.
Neil Slater
1

Menghilang berarti bergerak menuju 0 tetapi tidak akan pernah benar-benar menjadi 0. Memiliki gradien 0 membuat perhitungan yang sangat mudah, memiliki gradien mendekati 0 berarti ada perubahan, hanya yang sangat kecil yang berarti pembelajaran lambat dan masalah numerik. 1 dan 0 adalah dua angka termudah untuk dihitung dalam masalah optimasi semacam ini.

Jan van der Vegt
sumber