Was loss.backward() wirklich tut
What loss.backward() actually does

Wer neuronale Netze trainiert, tippt oft loss.backward() ein, ohne zu wissen, was im Hintergrund passiert. Dieser Artikel erklärt die Kernmechanik hinter PyTorch anhand von microcrad, einer einfachen Auto-Diff-Engine in C. Er zeigt, wie die Kettenregel, die Rückwärtsrichtung und die automatische Grapherstellung zusammenwirken, um Gradienten für alle Parameter in einem Durchlauf zu berechnen. Am Ende versteht man das Prinzip so gut, dass man es selbst implementieren könnte.
Diese Asymmetrie ist der einzige Grund, warum neuronale Netze überhaupt trainierbar sind.