gradient clipper
En teknik under træning af neurale netværk, hvor gradienter begrænses til en maksimal værdi for at forhindre eksploderende gradienter.
Kort fortalt
Gradient clipper forhindrer gradienter i at blive for store under træning, så modellen ikke destabiliseres.
- Kategori
- træning
- Niveau
- øvet
Betydninger
1- 1
En teknik, der begrænser størrelsen af gradienter under backpropagation for at undgå eksploderende gradienter.
- Ved træning af en LSTM bruges en gradient clipper med en tærskel på 5,0 for at forhindre gradienter i at eksplodere.
- Gradient clipper er en afgørende komponent i træning af dybe neurale netværk for at sikre numerisk stabilitet.
Hvornår bruges det
Gradient clipper anvendes typisk i rekursive neurale netværk (RNN'er) og dybe netværk, hvor gradienter kan vokse eksplosivt. Det implementeres ofte som en hyperparameter, fx max_grad_norm, og kan anvendes enten før eller efter gradienternes opdatering.
Formel
g_clipped = g · min(1, threshold / ||g||)Kodeeksempel
torch.nn.utils.clip_grad_norm_(model.parameters(), max_norm=1.0)Anvender gradient norm clipping i PyTorch med en maksimal norm på 1,0.
Oprindelse
Begrebet stammer fra træning af neurale netværk, specifikt som en løsning på problemet med eksploderende gradienter, der blev identificeret i 1990'erne.
Afledte ord
1Kilder
2- On the difficulty of training recurrent neural networks (Pascanu et al., 2013)
- Deep Learning (Goodfellow et al., 2016)