Обратный проход в PyTorch
Метод backward вызывают у
скаляра: одного числа, получившегося
из формулы над тензором с записью.
Возьмём 3.0, построим
квадрат и выполним обратный проход:
import torch
x = torch.tensor(3.0, requires_grad=True)
y = x * x
y.backward()
print(x.grad) # выведет tensor(6.)
Для квадрата производная равна
удвоенному аргументу, поэтому
при 3 в поле градиента
оказывается 6. Проверим
на другом дробном значении:
import torch
x = torch.tensor(2.0, requires_grad=True)
y = x * x
y.backward()
print(x.grad.item()) # выведет 4.0
Возьмите дробное число 4.0
с записью, умножьте его на себя
и выполните обратный проход
по результату. Выведите градиент
у исходного числа.
Соберите дробное 5.0
с записью, сложите его с самим
собой и выполните обратный проход
по сумме. Выведите градиент
у исходного тензора.
Для дробного 1.5 с записью
постройте квадрат, выполните
обратный проход и выведите
градиент как обычное число.