Weiterverfolgung dieser Frage ...
Ich versuche zu lernen, wie man neuronale Netze für meine Forschung verwendet und erstellt, und ein Punkt entgeht mir etwas. Mir ist klar, dass verborgene Schichten ein etwas notwendiger Teil davon sind, aber ich stecke in zwei Punkten fest, die meine Referenzen nicht zu meiner Zufriedenheit erklären:
- Was ist der genaue Zweck der verborgenen Schicht?
- Wie bestimmt man, wie viele versteckte Ebenen verwendet werden sollen?
Soweit ich weiß, geht es darum, die Funktionalität der realen Welt zu "modellieren", aber wenn möglich, möchte ich eine etwas ausführlichere Erklärung.
ne.neural-evol
dich
quelle
quelle
Antworten:
Eine verborgene Schicht wird verwendet, um die Ausdruckskraft des Netzwerks zu erhöhen. Dadurch kann das Netzwerk komplexere Modelle als möglich ohne die verborgene Schicht darstellen.
Die Auswahl der Anzahl der verborgenen Schichten oder allgemeiner die Auswahl Ihrer Netzwerkarchitektur, einschließlich der Anzahl der verborgenen Einheiten in verborgenen Schichten, sollten auf Ihren Trainings- und Kreuzvalidierungsdaten basieren. Sie sollten das Netzwerk mit einer festgelegten Anzahl von Knoten trainieren (versuchen Sie zunächst eine verborgene Ebene mit einer Einheit pro Eingabeeinheit) und das Modell testen.
Weitere Hilfe finden Sie unter diesem Link: http://www.faqs.org/faqs/ai-faq/neural-nets/part3/section-10.html
quelle
Ich gehe davon aus, dass wir über einfache Feed-Forward-Neuronale Netze sprechen, dh mehrschichtige Perzeptrone.
Beachten Sie, dass Sie sich mit mehr als zwei versteckten Ebenen in einem Land des tiefen Lernens befinden und wahrscheinlich benutzerdefinierte Algorithmen benötigen, um Ihr Netz zu trainieren. Der Grund dafür ist, dass die Vanilla-Backpropagation unter dem Problem des "verschwindenden Gradienten" in tiefen Netzen leidet: Der Gradient der Fehlerfunktion lässt an den Schichten nahe der Eingabe nach, und diese Schichten werden kaum trainiert.
quelle