NN06 - Backpropagation

Kurze Übersicht

Forwärts- und Rückwärtslauf

  • Im Forwärtslauf (engl. forward pass oder forward propagation) wird ein einzelner Forwärtsschritt von Schicht [l1] auf Schicht [l] wie folgt berechnet: (1)Z[l]=W[l]A[l1]+b[l] (2)A[l]=g(Z[l]) Dabei bezeichnet g die Aktivierungsfunktion (z.B. Sigmoid oder ReLU).

  • Im Rückwärtslauf (engl. backpropagation) werden in einem einzelnen Rückwärtsschritt von Schicht [l] auf Schicht [l1] die folgenden Gradienten berechnet:

    (3)dZ[l]:=JZ[l]=dA[l]g(Z[l]) (4)dW[l]:=JW[l]=1mdZ[l]A[l1]T (5)db[l]:=Jb[l]=1mi=1mdZ[l](i) (6)dA[l1]:=JA[l1]=W[l]TdZ[l]

    Dabei steht "" für die elementweise Multiplikation.

  • Beachten Sie:

    • Der Forwärtsschirtt übernimmt A[l1] von dem vorherigen Schritt und gibt A[l] an den nächsten Schritt weiter.
    • Der Rückwärtschritt übernimmt dA[l] von dem vorherigen Schritt und gibt dA[l1] an den nächsten Rückwärtsschritt weiter.

Parameteraktualisierung

  • Die Aktualisierung der Parameter in Schicht l erfolgt wie gewohnt durch: (7)W[l]=W[l]α dW[l] (8)b[l]=b[l]α db[l] Dabei bezeichnet α die Lernrate.
Übungsblätter/Aufgaben
Lernziele
  • (K2) Forwärts- und Rückwärtslauf in Matrix Notation mit mehreren Datenpunkten als Eingabe
  • (K2) Ableitung der Aktivierungsfunktionen
  • (K3) Berechnung der partiellen Ableitungen
  • (K3) Rückwärtslauf (backpropagation) für ein gegebenes MLP