🔁
Lektion 2 · Grundlagen
Autograd & Rechengraph
Wie PyTorch per Kettenregel automatisch Gradienten berechnet
Tempo1 / 17
Vorbereitung Erzeugen Forward Verlust Backward Update Ergebnis
📜Quelltext
Zeile 11➤import torch
2
3x = torch.tensor(2.0) # Eingabe
4w = torch.tensor(3.0, requires_grad=True) # Gewicht
5b = torch.tensor(1.0, requires_grad=True) # Bias
6
7y = w * x # Forward: Multiplikation
8z = y + b # Forward: Addition
9loss = (z - 10) ** 2 # Verlust: Abstand zum Ziel 10
10
11loss.backward() # Backward: Kettenregel
12print(w.grad, b.grad)
13
14with torch.no_grad(): # Update ohne Rechengraph
15 w -= 0.01 * w.grad
16 b -= 0.01 * b.grad
17
18print((w * x + b - 10) ** 2) # neuer Verlust
🖥️Konsole (stdout)
— noch keine Ausgabe —
🔎Variablen (locals)
🟡 = geändertNoch keine Variablen – das Programm hat gerade erst begonnen.
🧰 VorbereitungZeile 1
Autograd: Ableiten per Knopfdruck
Training heißt: Parameter so verändern, dass der Verlust sinkt. Dafür braucht man die Ableitung (den Gradienten) des Verlusts nach jedem Parameter. PyTorch berechnet sie automatisch: Während des Rechnens entsteht ein Rechengraph, der beim backward() rückwärts durchlaufen wird.
🎬Visualisierung
🔁
Forward baut den Graphen, Backward läuft ihn rückwärts
- 1Forward: Werte fließen von links nach rechts
- 2Jede Operation merkt sich ihre Eingaben (grad_fn)
- 3Backward: Gradienten fließen von rechts nach links (Kettenregel)
- 4Nur Tensoren mit requires_grad=True bekommen ein .grad