Deep Learning Academy · Lezione

Gradienti evanescenti ed esplosivi

Scopra cosa danneggia le reti profonde e quali sono le prime soluzioni

Lezione 4 di 413 passaggi

Gradienti evanescenti ed esplosivi è una lezione Deep Learning Academy gratuita su CoddyKit. Questa è la lezione 4 di 4. Puoi leggere la lezione completa qui gratuitamente — poi esercitati direttamente nel browser con un editor di codice integrato e un tutor IA disponibile 24/7. Fa parte del percorso di apprendimento Deep Learning Academy, e i tuoi progressi si sincronizzano tra il web e l'app CoddyKit. Il corso Deep Learning Academy include 4 lezioni in totale.

I gradienti sono un prodotto

Attraverso molti layer, la retropropagazione moltiplica tra loro molte local derivatives. La dimensione di questo lungo prodotto determina se l'apprendimento funziona o si interrompe.

Moltiplicare numeri piccoli

Se la derivata di ogni collegamento è inferiore a uno, il prodotto si riduce rapidamente. Dopo molti layer, il gradiente diventa tiny, quasi nullo quando raggiunge i layer iniziali.

Questo è il vanishing gradient

Quando i gradienti si riducono quasi a zero, i layer iniziali si aggiornano appena e smettono di imparare. Questo è il problema del vanishing gradient che per lungo tempo ha ostacolato le reti profonde.

Moltiplicare numeri grandi

Se ogni derivata è superiore a uno, il prodotto invece esplode. I gradienti diventano huge mentre risalgono la rete e i pesi compiono variazioni eccessive.

Questo è l'exploding gradient

I gradienti fuori controllo causano il problema dell'exploding gradient. Spesso la loss diventa NaN quando gli aggiornamenti superano di gran lunga qualsiasi valore utile. 💥

Sigmoid ha peggiorato il problema

Sigmoid e tanh comprimono gli input, quindi le loro derivate rimangono ben al di sotto di uno. Impilarle multiplied numeri piccoli e ha reso comuni i gradienti evanescenti.

ReLU in soccorso

ReLU ha una derivata esattamente pari a uno per gli input positivi, quindi non riduce il gradiente. Il passaggio a ReLU è stato una delle prime soluzioni fondamentali.

relu_grad = 1.0 if x > 0 else 0.0

Inizializzazione attenta dei pesi

Schemi intelligenti come l'inizializzazione Xavier e He ridimensionano i pesi iniziali, così il prodotto dei gradienti rimane vicino a uno anche attraverso molti layer.

Limiti i gradienti esplosivi

Per contenere le esplosioni, il gradient clipping limita la dimensione del gradiente prima dell'aggiornamento, impedendo che un singolo passaggio enorme rovini il modello.

torch.nn.utils.clip_grad_norm_(model.parameters(), 1.0)

Le skip connection aiutano

ResNet aggiunge skip connections che permettono ai gradienti di tornare indietro direttamente, evitando la lunga catena di moltiplicazioni che causa il vanishing gradient.

Perché tutto questo conta

Mantenere il product dei gradienti vicino a uno è ciò che permette alle reti molto profonde di essere addestrate. Ogni soluzione presentata serve a proteggere questo equilibrio.

Controllo rapido

Verifichiamo i problemi che possono verificarsi.

Riepilogo

I prodotti lunghi di derivate possono vanish oppure esplodere. ReLU, un'inizializzazione attenta, il clipping e le skip connection mantengono sani i gradienti nelle reti profonde. 💥

Gratis per iniziare

Impara Python con un tutor IA — gratis

Scrivi ed esegui vero codice nel tuo browser, ricevi aiuto istantaneo da un tutor IA disponibile 24/7, e riprendi da dove hai lasciato sul web o nell'app.

Corsi
30
Lezioni
120

Domande Frequenti

La lezione «Gradienti evanescenti ed esplosivi» è gratuita?

Sì — il testo completo di «Gradienti evanescenti ed esplosivi» è gratuito qui sul web. Per esercitarvi in modo interattivo (un editor di codice integrato e un tutor IA 24/7) e sbloccare il resto del corso Deep Learning Academy, passa a CoddyKit PRO. Il corso Deep Learning Academy include 4 lezioni in totale.

Cosa imparerò in «Gradienti evanescenti ed esplosivi»?

Scopra cosa danneggia le reti profonde e quali sono le prime soluzioni Eserciti Deep Learning Academy con codice pratico che esegui direttamente nel browser, e un tutor IA 24/7 risponde alle tue domande mentre lavori sulla lezione.

Ho bisogno di esperienza per iniziare Deep Learning Academy?

Non è richiesta alcuna esperienza precedente. Deep Learning Academy su CoddyKit è strutturato per principianti e studenti avanzati, quindi puoi iniziare da qui o dall'inizio e procedere al tuo ritmo. Questa è la lezione 4 di 4.

Quanto tempo richiede la lezione «Gradienti evanescenti ed esplosivi»?

La maggior parte delle lezioni CoddyKit richiede circa 5–10 minuti. Ogni lezione è breve e interattiva, quindi fai progressi costanti e riprendi esattamente da dove hai lasciato su web e app.

Posso scrivere ed eseguire codice in questa lezione Deep Learning Academy?

Sì. Ogni lezione Deep Learning Academy include un editor di codice integrato, quindi scrivi ed esegui codice reale direttamente nel tuo browser e ricevi feedback istantaneo dall'IA — nessuna configurazione locale necessaria.

Tutte le lezioni di questo corso

  1. La regola della catena, layer dopo layer
  2. Il forward salva, il backward riutilizza
  3. Faccia il backprop di una piccola rete a mano
  4. Gradienti evanescenti ed esplosivi
← Torna a Deep Learning Academy