时间:2021-08-10 09:24:48 | 栏目:Python代码 | 点击:次
我就废话不多说,看例子吧!
import torch.nn as nn outputs = model(data) loss= loss_fn(outputs, target) optimizer.zero_grad() loss.backward() nn.utils.clip_grad_norm_(model.parameters(), max_norm=20, norm_type=2) optimizer.step()
nn.utils.clip_grad_norm_ 的参数:
parameters ?C 一个基于变量的迭代器,会进行梯度归一化
max_norm ?C 梯度的最大范数
norm_type ?C 规定范数的类型,默认为L2