本文简要介绍python语言中 torch.Tensor.register_hook
的用法。
用法:
Tensor.register_hook(hook)
注册一个后向钩子。
每次计算相对于张量的梯度时,都会调用该钩子。挂钩应具有以下签名:
hook(grad) -> Tensor or None
钩子不应该修改它的参数,但它可以选择返回一个新的渐变,它将用来代替
grad
。此函数返回一个带有方法
handle.remove()
的句柄,该方法从模块中删除钩子。例子:
>>> v = torch.tensor([0., 0., 0.], requires_grad=True) >>> h = v.register_hook(lambda grad: grad * 2) # double the gradient >>> v.backward(torch.tensor([1., 2., 3.])) >>> v.grad 2 4 6 [torch.FloatTensor of size (3,)] >>> h.remove() # removes the hook
相关用法
- Python PyTorch Tensor.real用法及代码示例
- Python PyTorch Tensor.refine_names用法及代码示例
- Python PyTorch Tensor.rename用法及代码示例
- Python PyTorch Tensor.repeat用法及代码示例
- Python PyTorch Tensor.requires_grad_用法及代码示例
- Python PyTorch Tensor.resize_用法及代码示例
- Python PyTorch Tensor.unflatten用法及代码示例
- Python PyTorch Tensor.storage_offset用法及代码示例
- Python PyTorch Tensor.to用法及代码示例
- Python PyTorch Tensor.sparse_mask用法及代码示例
- Python PyTorch Tensor.is_leaf用法及代码示例
- Python PyTorch Tensor.imag用法及代码示例
- Python PyTorch Tensor.unfold用法及代码示例
- Python PyTorch Tensor.view用法及代码示例
- Python PyTorch Tensor.new_empty用法及代码示例
- Python PyTorch Tensor.index_copy_用法及代码示例
- Python PyTorch Tensor.new_tensor用法及代码示例
- Python PyTorch Tensor.scatter_用法及代码示例
- Python PyTorch Tensor.fill_diagonal_用法及代码示例
- Python PyTorch Tensor.item用法及代码示例
- Python PyTorch Tensor.tolist用法及代码示例
- Python PyTorch Tensor.put_用法及代码示例
- Python PyTorch Tensor.map_用法及代码示例
- Python PyTorch Tensor.stride用法及代码示例
- Python PyTorch Tensor.index_fill_用法及代码示例
注:本文由纯净天空筛选整理自pytorch.org大神的英文原创作品 torch.Tensor.register_hook。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。