Ich habe es mit einem Problem zu tun, das mit dem Finden des Gradienten der Kreuzentropieverlustfunktion für den Parameter wobei:
Wobei y i = s o f t m ein x ( θ i ) und θ i ist ein Vektoreingang.
Auch ist ein One - hot - Vektor mit der richtigen Klasse und y ist die Vorhersage für jede Klasse unter Verwendung von Softmax - Funktion.
Somit kann beispielsweise aufweisen und y i = ( 0,10 0,20 0,10 0,40 0,20 )
Um die partielle Ableitung
Von dort aus sind für jedes die einzelnen Teilgradienten ∂ C E ( θ )
Dies ist jedoch nicht der Fall, da die Verläufe für alle anderen Zeilen mit Ausnahme der 4. Zeile tatsächlich 0 sein sollten, da wir die Eigenschaft des einen heißen Vektors verwendet haben. Der tatsächliche Gradient sollte also
Und daher die Gradienten für alle sollte ∂ C E ( θ )
Aber dies ist nicht gleich y - y . Wir sollten den Gradienten der Kreuzentropiefunktion also nicht als Vektordifferenz zwischen vorhergesagt und ursprünglich bezeichnen.
Kann jemand dies klarstellen?
UPDATE: Meine Ableitung wurde behoben
Wobei y i = s o f t m ein x ( θ i ) und θ i ist ein Vektoreingang.
Auch ist ein One - hot - Vektor mit der richtigen Klasse und y ist die Vorhersage für jede Klasse unter Verwendung von Softmax - Funktion.
UPDATE: Der Index wurde aus und y Daher kann beispielsweise hat und y = ( 0,10 0,20 0,10 0,40 0,20 )
Von dort aus sind für jedes i die einzelnen Teilgradienten ∂ C E ( θ
Die oben geschieht , weil
quelle
Das Folgende ist der gleiche Inhalt wie die Bearbeitung, jedoch in (für mich) etwas klarerem Schritt-für-Schritt-Format:
Wir versuchen zu beweisen, dass:
gegeben
und
Daher,
quelle