Spec-Zone.ru › PyTorch 2.14

torch.optim.Optimizer.zero_grad

Optimizer.zero_grad(set_to_none=True) [исходный код]

Сбросить градиенты всех оптимизируемых torch.Tensor.

Параметры:

set_to_none (bool, необязательный) –

Вместо того чтобы задавать градиенты равными нулю, присвоить им None. По умолчанию: True

Как правило, это позволяет уменьшить объём используемой памяти и немного повысить производительность. Однако это меняет некоторые варианты поведения. Например:

  1. Если пользователь попытается получить доступ к градиенту и выполнить над ним операции вручную, атрибут None и тензор, заполненный нулями, будут вести себя по-разному.
  2. Если пользователь запрашивает zero_grad(set_to_none=True), а затем выполняет обратный проход, для .grad гарантированно будет задано значение None, если параметры не получили градиент.
  3. Оптимизаторы 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

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API