Mengapa sqrt (6) digunakan untuk menghitung epsilon untuk inisialisasi acak jaringan saraf?


8

Dalam catatan kuliah 5 minggu untuk Andrew Ng's Coursera Machine Learning Class , rumus berikut diberikan untuk menghitung nilai digunakan untuk menginisialisasi dengan nilai acak:ϵΘ

Forumla untuk menghitung epsilon-init untuk inisialisasi acak

Dalam latihan , klarifikasi lebih lanjut diberikan:

Salah satu strategi efektif untuk memilih adalah mendasarkannya pada jumlah unit dalam jaringan. Pilihan adalah , di mana dan adalah jumlah unit dalam lapisan yang berdekatan dengan .ϵsayansayatϵsayansayatϵsayansayat=6L.sayan-L.HaikamutL.sayan=slL.Haikamut=sl+1Θ(l)

Mengapa konstanta digunakan di sini? Mengapa tidak , atau ?6576.1

Jawaban:


4

Saya percaya ini adalah inisialisasi normalisasi Xavier (diimplementasikan dalam beberapa kerangka kerja pembelajaran dalam misalnya Keras, Cafe, ...) dari Memahami kesulitan pelatihan deep neuroforforward neural network oleh Xavier Glorot & Yoshua Bengio.

Lihat persamaan 12, 15 dan 16 di kertas yang ditautkan: mereka bertujuan untuk memenuhi persamaan 12:

Var[Wsaya]=2nsaya+nsaya+1

dan varian RV seragam di [-ϵ,ϵ] adalah ϵ2/3 (rata-rata nol, pdf = 1/(2ϵ) begitu varians =-ϵϵx212ϵdx


Hmm, jadi kenapa gunakan 6 dari pada 2?
Tom Hale

Masukkan epsilon ke dalam rumus untuk varian variabel acak seragam di +/- x dan apa yang Anda dapatkan?
seanv507

Doh! Saya sekarang melihat dalam formula (16) itu[-ϵ,ϵ]digunakan. Di mana Anda dapatkanx2/3dari meskipun?
Tom Hale

1
menambahkan penjelasan untuk varian RV seragam ...
seanv507
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.