Es gibt hier einen ähnlichen Thread ( Kostenfunktion des neuronalen Netzwerks ist nicht konvex? ), Aber ich konnte die Punkte in den Antworten dort nicht verstehen und mein Grund für die erneute Frage, in der Hoffnung, dass dies einige Probleme klären wird:
Wenn ich die Funktion für die Summe der quadrierten Differenzkosten verwende, optimiere ich letztendlich etwas in der Form wobei der tatsächliche Etikettenwert während des Trainings ist Phase und ist der vorhergesagte Labelwert. Da dies eine quadratische Form hat, sollte dies eine konvexe Kostenfunktion sein. Also, was ist es, was es in einem NN nicht-konvex machen könnte?
Antworten:
Betrachten wir zum Beispiel ein Netzwerk mit einer verborgenen Schicht von Einheiten und einer linearen Ausgabeschicht: Unsere Kostenfunktion ist wobei und (und ich der Einfachheit halber keine Voreingenommenheitsbegriffe). Dies ist nicht unbedingt konvex, wenn es als eine Funktion von (abhängig von : Wenn eine lineare Aktivierungsfunktion verwendet wird, kann diese immer noch konvex sein). Und je tiefer unser Netzwerk wird, desto weniger konvex sind die Dinge.N
Jetzt eine Funktion definieren von , wobei ist mit auf und auf . Dies ermöglicht es uns, die Kostenfunktion zu visualisieren, da diese beiden Gewichte variieren.h:R×R→R h(u,v)=g(α,W(u,v)) W(u,v) W W11 u W12 v
Die folgende Abbildung zeigt dies für die Sigma-Aktivierungsfunktion mitn=50 p=3 N=1 x y N(0,1)
Hier ist der R-Code, mit dem ich diese Zahl erstellt habe (obwohl einige der Parameter jetzt etwas andere Werte haben als zu dem Zeitpunkt, als ich sie erstellt habe, damit sie nicht identisch sind):
quelle