Mehrdimensionale Analysis aus ersten Prinzipien
Eine einzige Datenstruktur organisiert alles aus den letzten beiden Lektionen: der Rechengraph. Jede arithmetische Operation in einem Modell (Addition, Multiplikation, Matrizenmultiplikation, Aktivierung) wird zu einem Knoten in einem gerichteten Graphen. Über diesen Graphen berechnen PyTorch, JAX und TensorFlow Gradienten automatisch.
Das Training durchläuft den Graphen in zwei Durchgängen. Der Vorwärtspass fließt von links nach rechts und berechnet und speichert den Wert jedes Knotens. Der Rückwärtspass fließt von rechts nach links und schiebt mithilfe der Kettenregel den Gradienten vom Verlust zurück zu jeder Eingabe, einen Knoten nach dem anderen.
Die Idee, die es skalierbar macht: Jeder Knoten muss nur seine eigene lokale Ableitung kennen. Um den Gradienten rückwärts durch einen Knoten zu schicken, multipliziere den eingehenden Gradienten (von oben) mit der lokalen Jacobi-Matrix des Knotens (wie seine Ausgabe von seinen Eingaben abhängt). Kein Knoten braucht jemals das Gesamtbild; lokale Regeln, miteinander verkettet, ergeben den exakten Gesamtgradienten.