Автоград дальше в PyTorch
Иногда градиент нужен по формуле,
но его не следует складывать
в поле параметра после обратного
прохода. Для этого есть отдельный
запрос, который возвращает
результат и не трогает накопленный
grad.
У промежуточного тензора в цепочке градиент по умолчанию не сохраняется. Его можно явно оставить в памяти, чтобы после обратного прохода прочитать производную по этому звену.
На этапе чистого вывода модели граф вычислений не строят: для этого предназначен отдельный режим, строже обычного отключения записи градиента.
Когда обратный проход обрывается или даёт сомнительный результат, включают режим поиска аномалии: он указывает, на какой операции цепочка градиента рвётся.
Свою формулу можно встроить в автоград через класс с прямым и обратным шагом. Для проверки ручной производной служит численное сравнение с эталоном на повышенной точности.
Градиент может проходить и через решение системы линейных уравнений: матрица коэффициентов и правая часть участвуют в графе так же, как обычные тензоры.
Со всем этим мы и будем разбираться в рамках данного раздела.