(model, clip)
| 110 | |
| 111 | |
| 112 | def clip_gradients(model, clip): |
| 113 | norms = [] |
| 114 | for name, p in model.named_parameters(): |
| 115 | if p.grad is not None: |
| 116 | param_norm = p.grad.data.norm(2) |
| 117 | norms.append(param_norm.item()) |
| 118 | clip_coef = clip / (param_norm + 1e-6) |
| 119 | if clip_coef < 1: |
| 120 | p.grad.data.mul_(clip_coef) |
| 121 | return norms |
| 122 | |
| 123 | |
| 124 | def cancel_gradients_last_layer(epoch, model, freeze_last_layer): |
nothing calls this directly
no outgoing calls
no test coverage detected