Mengapa bobot awal dalam jaringan saraf diacak?


10

Ini mungkin terdengar konyol bagi seseorang yang memiliki banyak pengalaman dengan jaringan saraf tetapi itu mengganggu saya ...

Maksud saya, pengacakan bobot awal mungkin memberi Anda hasil yang lebih baik yang akan sedikit lebih mirip dengan jaringan yang seharusnya, tetapi mungkin juga kebalikan dari apa yang seharusnya, sementara 0,5 atau rata-rata lainnya untuk kisaran bobot yang masuk akal nilai akan terdengar seperti pengaturan default yang baik ...

Mengapa bobot awal untuk neuron lebih diacak daripada 0,5 untuk semuanya?


Apa masalah dengan hasil edit saya? Apakah Anda pikir Anda tidak dapat ditingkatkan?
nbro

@nbro menambahkan beberapa pertanyaan, yang membuatnya terlalu luas ...
Matas Vaitkevicius

Pertanyaan apa yang saya tambahkan yang tidak ada dalam posting Anda? Saya baru saja merumuskan kembali sebagai pertanyaan apa yang Anda nyatakan sebagai hipotesis.
nbro

Omong-omong, kata-kata Anda bahkan tidak benar. Bobot tidak sedang diacak, tetapi sedang diinisialisasi secara acak. Ini adalah dua konsep yang berbeda dan maksud Anda yang kedua. Hasil edit saya juga dimaksudkan untuk meningkatkan pengkalimatannya.
nbro

@nbro Hai, lihat saya tidak tidak menghargai, dan tentu saja tidak ingin menyinggung Anda. Saya buruk dalam mengajukan pertanyaan juga, kata-kata dan semuanya. Jadi saya minta maaf jika saya telah menyinggung Anda.
Matas Vaitkevicius

Jawaban:


6

Bobot awal dalam jaringan saraf diinisialisasi secara acak karena metode berbasis gradien yang biasa digunakan untuk melatih jaringan saraf tidak bekerja dengan baik ketika semua bobot diinisialisasi dengan nilai yang sama. Meskipun tidak semua metode untuk melatih jaringan saraf berbasis gradien, sebagian besar dari mereka, dan telah ditunjukkan dalam beberapa kasus bahwa menginisialisasi jaringan saraf dengan nilai yang sama membuat jaringan membutuhkan waktu lebih lama untuk bertemu pada solusi optimal. Juga, jika Anda ingin melatih ulang jaringan saraf Anda karena macet di minima lokal, itu akan terjebak di minima lokal yang sama. Untuk alasan di atas, kami tidak mengatur bobot awal ke nilai konstan.

Referensi: Mengapa backpropagation tidak berfungsi saat Anda menginisialisasi bobot dengan nilai yang sama?


Bahkan, mereka rusak jika semua bobot sama.
Quonux

9

Anda tidak boleh menetapkan semua ke 0,5 karena Anda akan memiliki masalah "hentikan simetri".

http://www.deeplearningbook.org/contents/optimization.html

Mungkin satu-satunya properti yang diketahui dengan pasti adalah bahwa parameter awal perlu " memecah simetri " antara unit yang berbeda. Jika dua unit tersembunyi dengan fungsi aktivasi yang sama terhubung ke input yang sama, maka unit ini harus memiliki parameter awal yang berbeda. Jika mereka memiliki parameter awal yang sama, maka algoritma pembelajaran deterministik yang diterapkan pada biaya dan model deterministik akan terus memperbarui kedua unit ini dengan cara yang sama. Bahkan jika model atau algoritma pelatihan mampu menggunakan stokastik untuk menghitung pembaruan yang berbeda untuk unit yang berbeda (misalnya, jika seseorang berlatih dengan dropout), biasanya yang terbaik adalah menginisialisasi setiap unit untuk menghitung fungsi yang berbeda dari semua unit lainnya. Ini dapat membantu untuk memastikan bahwa tidak ada pola input yang hilang dalam ruang nol propagasi maju dan tidak ada pola gradien yang hilang dalam ruang nol propagasi balik.


2

Itu pertanyaan yang sangat mendalam. Ada serangkaian makalah baru-baru ini dengan bukti konvergensi gradient descent untuk jaringan dalam overparameterized (misalnya, Gradient Descent Menemukan Minima Global dari Jaringan Neural Dalam , Teori Konvergensi untuk Pembelajaran Jauh melalui Parameterisasi Berlebihan atau Stadien Gradien Descent Mengoptimalkan Over-parameterized Deep Jaringan ReLU ). Semuanya mengkondisikan bukti pada distribusi bobot Gauss acak. Penting untuk bukti tergantung pada dua faktor:

  1. Bobot acak membuat ReLU secara statistik memampatkan pemetaan (hingga transformasi linear)

  2. Bobot acak menjaga pemisahan input untuk setiap distribusi input - yaitu jika sampel input dapat dibedakan propagasi jaringan tidak akan membuatnya tidak bisa dibedakan

Sifat-sifat tersebut sangat sulit untuk direproduksi dengan matriks deterministik, dan bahkan jika mereka dapat direproduksi dengan matriks deterministik, ruang-NULL (domain dari contoh permusuhan) kemungkinan akan membuat metode tidak praktis, dan pelestarian yang lebih penting dari sifat-sifat tersebut selama penurunan gradien kemungkinan akan membuat metode tidak praktis. Tetapi secara keseluruhan itu sangat sulit tetapi bukan tidak mungkin, dan mungkin memerlukan beberapa penelitian ke arah itu. Dalam situasi analog, ada beberapa hasil untuk properti isometrik terbatas untuk matriks deterministik dalam penginderaan terkompresi .

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.