torch.optim.Optimizer.zero_grad
-
Optimizer.zero_grad(set_to_none=True)[исходный код] -
Сбросить градиенты всех оптимизируемых
torch.Tensor.- Параметры:
-
set_to_none (bool, необязательный) –
Вместо того чтобы задавать градиенты равными нулю, присвоить им None. По умолчанию:
TrueКак правило, это позволяет уменьшить объём используемой памяти и немного повысить производительность. Однако это меняет некоторые варианты поведения. Например:
- Если пользователь попытается получить доступ к градиенту и выполнить над ним операции вручную, атрибут None и тензор, заполненный нулями, будут вести себя по-разному.
- Если пользователь запрашивает
zero_grad(set_to_none=True), а затем выполняет обратный проход, для.gradгарантированно будет задано значение None, если параметры не получили градиент. -
Оптимизаторы
torch.optimведут себя по-разному, если градиент равен 0 или None (в одном случае шаг выполняется с градиентом 0, а в другом шаг полностью пропускается).
© 2026, PyTorch Contributors
PyTorch has a BSD-style license, as found in the LICENSE file.
https://docs.pytorch.org/docs/2.14/generated/torch.optim.Optimizer.zero_grad.html