fixing param.grad is None in fp16 examples
This commit is contained in:
@@ -555,6 +555,7 @@ def main():
|
|||||||
if args.fp16 and args.loss_scale != 1.0:
|
if args.fp16 and args.loss_scale != 1.0:
|
||||||
# scale down gradients for fp16 training
|
# scale down gradients for fp16 training
|
||||||
for param in model.parameters():
|
for param in model.parameters():
|
||||||
|
if param.grad is not None:
|
||||||
param.grad.data = param.grad.data / args.loss_scale
|
param.grad.data = param.grad.data / args.loss_scale
|
||||||
is_nan = set_optimizer_params_grad(param_optimizer, model.named_parameters(), test_nan=True)
|
is_nan = set_optimizer_params_grad(param_optimizer, model.named_parameters(), test_nan=True)
|
||||||
if is_nan:
|
if is_nan:
|
||||||
|
|||||||
@@ -898,6 +898,7 @@ def main():
|
|||||||
if args.fp16 and args.loss_scale != 1.0:
|
if args.fp16 and args.loss_scale != 1.0:
|
||||||
# scale down gradients for fp16 training
|
# scale down gradients for fp16 training
|
||||||
for param in model.parameters():
|
for param in model.parameters():
|
||||||
|
if param.grad is not None:
|
||||||
param.grad.data = param.grad.data / args.loss_scale
|
param.grad.data = param.grad.data / args.loss_scale
|
||||||
is_nan = set_optimizer_params_grad(param_optimizer, model.named_parameters(), test_nan=True)
|
is_nan = set_optimizer_params_grad(param_optimizer, model.named_parameters(), test_nan=True)
|
||||||
if is_nan:
|
if is_nan:
|
||||||
|
|||||||
Reference in New Issue
Block a user