Dlaczego wagi sieci neuronowych są inicjowane liczbami losowymi?

9

Dlaczego początkowe wagi sieci neuronowych są inicjowane jako liczby losowe? Czytałem gdzieś, że ma to na celu „przełamanie symetrii”, a to przyspiesza naukę sieci neuronowej. W jaki sposób przełamanie symetrii sprawia, że ​​uczy się szybciej?

Czy zainicjowanie wag na 0 nie byłoby lepszym pomysłem? W ten sposób wagi będą mogły szybciej znaleźć swoje wartości (dodatnie lub ujemne)?

Czy istnieje jakaś inna filozofia leżąca u podstaw losowości wag oprócz nadziei, że przy inicjalizacji będą one bliskie optymalnym wartościom?

Shayan RC
źródło

Odpowiedzi:

6

Podstawowa intuicja polegająca na inicjowaniu warstw ciężaru na małe (i różne) wartości polega na tym, że odchylenie systemu jest zepsute, a wartości ciężaru mogą przesuwać się wzdłuż i oddalać oraz rozdzielać na różne wartości.

Mówiąc bardziej konkretnie, prawdopodobnie chciałbyś, aby początkowe ciężary były wyraźne i miały „małą szczelinę” między nimi, ta „szczelina” rozszerza się w miarę postępów i wymusza, aby wagi były nieco większe przy każdej iteracji, a to pomaga sieć zbiega się szybciej, tzn. proces uczenia się przyspiesza.

Jeśli zamiast tego miałbyś wszystkie swoje ciężary do jakiejś stałej, każda waga zostanie zaktualizowana w bardzo powolnym (~ ustalonym) tempie, a to niewiele pomoże, szczególnie jeśli początkowe wartości są „bardzo dalekie” od wartości końcowych.

Mam nadzieję, że to pomoże, miłej nauki :)

Subhayan
źródło
Zatem mówisz, że losowanie początkowych ciężarów jest równoważne z nadawaniem każdej z ciężarów przesunięcia w kierunku, w którym musi się poruszać (i odstępu, aby się rozszerzyć).
Shayan RC
Nie sądzę, że musi być w dobrym kierunku, równie dobrze możesz zacząć od wagi początkowej wynoszącej [-0,5, +0,5], gdzie ostateczne wartości mogą wynosić [+0,5, -0,5], kluczową ideą jest różne wartości ..
Subhayan
Minęło ponad rok, odkąd pracowałem z NN, więc mówię falistą ręką, daj mi znać, jeśli chcesz matematyki. ale myślę, że ważniejsze jest uzyskanie intuicji tutaj, matematyka jest prawie wszędzie dostępna .. :)
Subhayan
Pomagałaby w tym matematyka, ale jeszcze bardziej przydatna byłaby praktyczna rada: jak małe powinny być początkowe wagi (10 ^?) Jak różnią się one dla różnych rodzajów sieci? Czy istnieją jakieś magiczne liczby, które działają dla wszystkich?
Shayan RC