Warum funktioniert die Backpropagation nicht, wenn Sie alle Gewichte mit demselben Wert initialisieren (z. B. 0,5), aber wenn Sie Zufallszahlen angeben, funktioniert sie einwandfrei?
Sollte der Algorithmus den Fehler nicht berechnen und von dort aus arbeiten, obwohl die Gewichte anfangs gleich sind?
quelle
Um die Antwort von Thierry zu ergänzen, können Sie sich den Fehler als eine Funktion des Gewichtsvektors vorstellen, dh als eine Funktion vonRn→ R was Sie minimieren möchten. Der Back-Propagation-Algorithmus untersucht die lokale Umgebung eines Punktes und ermittelt, welche Richtung zu einem kleineren Fehler führt. Dies gibt Ihnen dann ein lokales Minimum.
Was Sie wollen, ist ein globales Minimum, aber Sie haben keine Garantie, wie Sie es finden können. Und wenn Ihre Oberfläche mehrere lokale Minima aufweist, sind Sie möglicherweise in Schwierigkeiten.
Wenn es jedoch nur wenige gibt, sollte Thierrys Strategie funktionieren. Wenn Sie mehrere Suchen nach lokalen Minima durchführen, indem Sie an zufällig ausgewählten Punkten beginnen, erhöht sich die Wahrscheinlichkeit, dass Sie das globale Minimum finden.
Und in dem glücklichen Fall, in dem es nur ein Minimum gibt, führt Sie jeder anfängliche Gewichtsvektor dorthin.
quelle