Многопроменливо смятане от първи принципи
Една-единствена структура от данни обединява всичко от последните два урока: изчислителният граф. Всяка аритметична операция в модела (събиране, умножение, matmul, активация) се превръща във възел на насочен граф. Именно този граф позволява на PyTorch, JAX и TensorFlow да изчисляват градиенти автоматично.
Обучението изпълнява графа в две стъпки. Правото преминаване протича отляво надясно и изчислява и кешира стойността на всеки възел. Обратното преминаване тече отдясно наляво и чрез верижното правило избутва градиента на загубата обратно към всеки вход – възел по възел.
Идеята, която прави всичко това мащабируемо: всеки възел трябва да познава само своята собствена локална производна. За да върнете градиента назад през даден възел, умножете входящия градиент (отгоре) по локалния якобиан на възела (как изходът му зависи от входовете му). Нито един възел не се нуждае от цялостната картина – локалните правила, свързани верижно, дават точния общ градиент.