Sieci neuronowe od podstaw do nowoczesnej AI · Backpropagation — jak sieć się uczy
Budujemy micrograd: Value, backward(), wizualizacja grafu (Karpathy)
Backpropagation — jak sieć się uczy
Wprowadzenie
Micrograd Andreja Karpathy'ego (2020) to ~150 linii Pythona, które implementują cały silnik autograd: klasa Value przechowuje data + grad + lista rodziców + funkcja _backward, operatory __add__, __mul__, __pow__, tanh budują graf dynamicznie podczas forward, metoda backward() wykonuje topological sort i propaguje gradient od loss do liści. Ta lekcja prowadzi przez konstrukcję krok po kroku: dlaczego potrzebujemy += zamiast = przy akumulacji gradientów (multivariate chain rule), jak działa topological sort z DFS, jak wizualizować graf przez Graphviz, oraz jak ten sam wzorzec skaluje się do PyTorch (gdzie zamiast skalarów mamy tensory, a zamiast Pythona — backend C++/CUDA). Kluczowa lekcja: backprop nie jest magią ani frameworkiem — to algorytm, który możesz napisać sam w jeden wieczór.