Yapay Sinir Ağlarının ağırlıkları neden rastgele sayılarla başlatılıyor?


9

Sinir ağlarının başlangıç ​​ağırlıkları neden rastgele sayılar olarak başlatıldı? Bir yerde bunun simetriyi kırmak için yapıldığını okumuştum ve bu sinir ağının daha hızlı öğrenmesini sağlıyor. Simetriyi kırmak nasıl daha hızlı öğrenmesini sağlar?

Ağırlıkları 0'a başlatmak daha iyi bir fikir olmaz mıydı? Bu şekilde ağırlıklar (pozitif veya negatif olsun) değerlerini daha hızlı bulabilir mi?

Başlatıldıklarında optimum değerlerine yakın olmaları umuduyla ağırlıkların rastgele dağıtılmasının ardında yatan başka bir felsefe var mı?

Yanıtlar:


6

Ağırlık katmanlarının küçük (ve farklı) değerlere başlatılmasının arkasındaki temel sezgi, sadece sistemin sapması kırılmış ve ağırlık değerleri farklı değerlerle birlikte ve uzaklara ve birbirinden ayrılabilir.

Daha somut olarak, muhtemelen başlangıç ​​ağırlıklarınızın farklı olmasını ve aralarında "küçük bir boşluk" olmasını istersiniz, bu 'boşluk' siz ilerledikçe genişler ve ağırlıkları her yinelemede biraz daha büyük olmaya zorlar ve bu da yardımcı olur daha hızlı yakınsama için ağ, yani öğrenme süreci hızlanır.

Bunun yerine tüm ağırlıklarınızı sabit bir değere sahip olursanız, her ağırlık çok yavaş (~ sabit) bir oranda güncellenir ve bu özellikle başlangıç ​​değerleri son değerlerden 'çok uzakta' ise çok yardımcı olmaz.

Umarım yardımcı olur, İyi eğlenceler :)


Yani, ilk ağırlıkları rastgele ayarlamak, her ağırlığa hareket etmesi gereken yönde (ve genişleme boşluğu) bir dürtme yapmaya eşdeğerdir.
Shayan RC

Doğru yönde olması gerektiğini düşünmüyorum, son değerlerin [+0.5, -0.5] olabileceği bir başlangıç ​​ağırlığıyla da başlayabilirsiniz. farklı değerler ..
Subhayan

NN'lerle çalıştığımdan beri bir yıldan fazla oldu, bu yüzden el dalgalı bir şekilde konuşuyorum, lütfen arkasında matematik istiyorsanız lütfen bize bildirin. ama burada sezgiyi almanın daha önemli olduğunu düşünüyorum, matematik hemen hemen her yerde mevcut .. :)
Subhayan

Arkasındaki matematik faydalı olabilir, ancak daha da yararlı olacak bazı pratik öneriler olacaktır: Başlangıç ​​ağırlıkları ne kadar küçük olmalıdır (10 ^?) Farklı tür ağlar için nasıl değişirler? Herkes için çalışan bir çeşit sihirli sayı var mı?
Shayan RC
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.