Prevenirea Gradient Exploding cu torch.nn.utils.clip_grad_norm_ în PyTorch & Deep Learning Practic

Sintaxă & invocare Python
torch.nn.utils.clip_grad_norm_(model.parameters(), max_norm=1.0)

În timpul antrenării rețelelor adânci sau a transformatoarelor, anumiți pași de optimizare pot genera gradiente uriașe (Gradient Exploding) ce destabilizează greutățile și duc la valori NaN. Tehnica Gradient Clipping scalează proporțional toate gradientele dacă norma lor combinată depășește un prag critic:

import torch
import torch.nn.utils as utils

loss.backward()

# Trunchierea gradientelor la norma maximă de 1.0
total_norm = utils.clip_grad_norm_(model.parameters(), max_norm=1.0)

if torch.isnan(total_norm) or torch.isinf(total_norm):
    print("Avertisment: Gradient explodat detectat!")
else:
    optimizer.step()

optimizer.zero_grad()

Apelul clip_grad_norm_ trebuie plasat obligatoriu după loss.backward() și înainte de optimizer.step().

Învață AI • Comunitate & Q&A

Întrebări & Exemple practice: Prevenirea Gradient Exploding cu torch.nn.utils.clip_grad_norm_

Ai o întrebare despre Prevenirea Gradient Exploding cu torch.nn.utils.clip_grad_norm_ sau ai descoperit un truc, prompt sau fragment de cod util? Distribuie-l cu ceilalți membri ai comunității!

🤖

Fii primul care pune o întrebare sau distribuie un fragment de cod / prompt!

Nu au fost adăugate încă întrebări sau resurse pentru această pagină. Dacă ai testat un prompt sau ai un snippet util, adaugă-l mai jos pentru comunitate.

Comunitate AI Adaugă o întrebare sau distribuie un cod / prompt

Moderare & Siguranță:

Pentru a menține calitatea și securitatea informațiilor, fiecare întrebare sau fragment de cod/prompt este analizat (manual sau prin moderare asistată de AI) înainte de publicare.