• 文档 >
  • torch.nn >
  • torch.nn.utils.clip_grad_norm_
快捷键

torch.nn.utils.clip_grad_norm_

torch.nn.utils.clip_grad_norm_(parameters, max_norm, norm_type=2.0, error_if_nonfinite=False, foreach=None)[source][source]

限制一个可迭代参数的梯度范数。

规范是通过所有参数的各个梯度的范数计算得出的,就好像各个梯度的范数被连接成一个单个向量一样。梯度将就地修改。

此函数等价于先执行 torch.nn.utils.get_total_norm() ,然后执行 torch.nn.utils.clip_grads_with_norm_() ,最后返回 get_total_normtotal_norm

参数:
  • 参数(可迭代[Tensor]或 Tensor)- 一个 Tensor 的可迭代对象或单个 Tensor,其梯度将被归一化

  • max_norm(浮点数)- 梯度的最大范数

  • norm_type (浮点数) – 使用 p-norm 的类型。可以是 'inf' 表示无穷范数。

  • error_if_nonfinite (布尔值) – 如果为 True,当 parameters 的梯度总范数为 naninf-inf 时,将抛出错误。默认:False(未来将切换到 True)

  • foreach (布尔值) – 使用基于 foreach 的更快实现。如果为 None ,则使用 CUDA 和 CPU 原生张量的 foreach 实现并静默回退到慢速实现。默认: None

返回值:

参数梯度的总范数(视为单个向量)。

返回类型:

张量


© 版权所有 PyTorch 贡献者。

使用 Sphinx 构建,并使用 Read the Docs 提供的主题。

文档

PyTorch 的全面开发者文档

查看文档

教程

深入了解初学者和高级开发者的教程

查看教程

资源

查找开发资源并获得您的疑问解答

查看资源