Warum werden Anfangsgewichte im neuronalen Netzwerk randomisiert?

10

Das mag für jemanden albern klingen, der viel Erfahrung mit neuronalen Netzen hat, aber es stört mich ...

Ich meine, die Randomisierung der Anfangsgewichte könnte zu besseren Ergebnissen führen, die etwas näher an dem liegen, wie das trainierte Netzwerk aussehen sollte, aber es könnte genauso gut das genaue Gegenteil von dem sein, was es sein sollte, während 0,5 oder ein anderer Durchschnitt für den Bereich des angemessenen Gewichts Wert klingt nach einer guten Standardeinstellung ...

Warum werden die Anfangsgewichte für Neuronen eher randomisiert als 0,5 für alle?

Matas Vaitkevicius
quelle
Was war das Problem mit meiner Bearbeitung? Glaubst du, du kannst nicht verbessert werden?
nbro
@nbro fügt mehrere Fragen hinzu, was es zu breit macht ...
Matas Vaitkevicius
Welche Fragen habe ich hinzugefügt, die in Ihrem Beitrag nicht vorhanden sind? Ich habe nur als Fragen umformuliert, was Sie als Hypothesen angegeben haben.
nbro
Ihr Wortlaut ist übrigens nicht einmal korrekt. Die Gewichte werden nicht zufällig ausgewählt, sondern zufällig initialisiert. Dies sind zwei verschiedene Konzepte, und Sie meinten das zweite. Meine Bearbeitung sollte auch den Wortlaut verbessern.
nbro
@nbro Hallo, schau, ich war nicht unschätzbar und wollte dich auf keinen Fall beleidigen. Ich kann auch schlecht Fragen stellen, Formulierungen und alles. Es tut mir leid, wenn ich dich beleidigt habe.
Matas Vaitkevicius

Antworten:

6

Die anfänglichen Gewichte in einem neuronalen Netzwerk werden zufällig initialisiert, da die gradientenbasierten Methoden, die üblicherweise zum Trainieren neuronaler Netzwerke verwendet werden, nicht gut funktionieren, wenn alle Gewichte auf den gleichen Wert initialisiert werden. Obwohl nicht alle Methoden zum Trainieren neuronaler Netze gradientenbasiert sind, sind es die meisten, und es wurde in mehreren Fällen gezeigt, dass das Initialisieren des neuronalen Netzes auf denselben Wert dazu führt, dass das Netzwerk viel länger braucht, um zu einer optimalen Lösung zu konvergieren. Wenn Sie Ihr neuronales Netzwerk neu trainieren möchten, weil es in lokalen Minima stecken geblieben ist, bleibt es in denselben lokalen Minima stecken. Aus den oben genannten Gründen setzen wir die Anfangsgewichte nicht auf einen konstanten Wert.

Referenzen: Warum funktioniert die Backpropagation nicht, wenn Sie die Gewichte mit demselben Wert initialisieren?

Aiden Grossman
quelle
Tatsächlich brechen sie zusammen, wenn alle Gewichte gleich sind.
Quonux
8

Sie sollten nicht alle 0,5 zuweisen, da Sie das Problem "Unterbrechungssymmetrie" haben würden.

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

Möglicherweise ist die einzige Eigenschaft, die mit absoluter Sicherheit bekannt ist, dass die Anfangsparameter die Symmetrie zwischen verschiedenen Einheiten aufbrechen müssen . Wenn zwei versteckte Einheiten mit derselben Aktivierungsfunktion an dieselben Eingänge angeschlossen sind, müssen diese Einheiten unterschiedliche Anfangsparameter haben. Wenn sie dieselben Anfangsparameter haben, aktualisiert ein deterministischer Lernalgorithmus, der auf deterministische Kosten und Modelle angewendet wird, beide Einheiten ständig auf dieselbe Weise. Selbst wenn das Modell oder der Trainingsalgorithmus in der Lage ist, mithilfe der Stochastizität unterschiedliche Aktualisierungen für unterschiedliche Einheiten zu berechnen (z. B. wenn eine Person mit Ausfall trainiert), ist es normalerweise am besten, jede Einheit zu initialisieren, um eine andere Funktion als alle anderen Einheiten zu berechnen. Dies kann dazu beitragen, sicherzustellen, dass im Nullraum der Vorwärtsausbreitung keine Eingabemuster verloren gehen und im Nullraum der Rückwärtsausbreitung keine Gradientenmuster verloren gehen.

Hallo Welt
quelle
1

Das ist eine sehr tiefe Frage. Kürzlich gab es eine Reihe von Arbeiten mit dem Nachweis der Konvergenz des Gradientenabfalls für überparametrisierte tiefe Netzwerke (z. B. Gradientenabstieg findet globale Minima tiefer neuronaler Netze , eine Konvergenztheorie für tiefes Lernen durch Überparametrisierung oder stochastischen Gradientenabstieg optimiert überparametrisierte Tiefen ReLU-Netzwerke ). Alle von ihnen bedingen den Beweis einer zufälligen Gaußschen Gewichtsverteilung. Es ist wichtig, dass Beweise von zwei Faktoren abhängen:

  1. Zufällige Gewichte machen die statistisch komprimierende Zuordnung von ReLU (bis zur linearen Transformation)

  2. Zufällige Gewichte bewahren die Trennung der Eingaben für jede Eingabeverteilung - das heißt, wenn Eingabebeispiele unterscheidbar sind, werden sie durch die Netzwerkausbreitung nicht ununterscheidbar

Diese Eigenschaften sind mit deterministischen Matrizen sehr schwer zu reproduzieren, und selbst wenn sie mit deterministischen Matrizen reproduzierbar sind, würde der NULL-Raum (Bereich der gegnerischen Beispiele) die Methode wahrscheinlich unpraktisch machen, und eine wichtigere Erhaltung dieser Eigenschaften während des Gradientenabfalls würde die Methode wahrscheinlich unpraktisch machen. Aber insgesamt ist es sehr schwierig, aber nicht unmöglich und kann einige Forschungen in diese Richtung rechtfertigen. In einer analogen Situation gab es einige Ergebnisse für die Restricted Isometry Property für deterministische Matrizen bei der komprimierten Erfassung .

mirror2image
quelle