-->

Intelligenza Artificiale

A un certo punto non fu più la biologia a dominare il destino dell'uomo, ma il prodotto del suo cervello: la cultura.
Cosicché: "Le uniche leggi della materia sono quelle che la nostra mente deve architettare e le uniche leggi della mente sono architettate per essa dalla materia".
JAMES CLERK MAXWELL

Scomparsa del gradiente nelle RNN


La scomparsa del gradiente nelle RNN con word embedding, quandoi gradienti delle derivate parziali rispetto ai pesi diventano trascurabili.

scomparsa del gradiente

Il problema della scomparsa del gradiente si verifica quando durante il processo di addestramento delle reti neurali ricorrenti (RNN) con word embedding, i gradienti delle derivate parziali rispetto ai pesi della rete diventano talmente piccoli da essere trascurabili.
Ciò si verifica soprattutto nelle RNN a lungo termine (LSTM) o nelle reti ricorrenti a memoria a corto termine (GRU), che sono progettate per memorizzare informazioni su sequenze di dati a lungo termine.

Cosa vuol dire?


Quando i gradienti diventano molto piccoli, i pesi della rete vengono aggiornati in modo molto lento o addirittura non vengono aggiornati affatto durante il processo di addestramento.
Questo rallenta significativamente il processo di apprendimento della rete e può portare a una performance insoddisfacente.

Conseguenze

  • Difficoltà di Apprendimento a Lungo Termine: La rete trova difficoltà nel memorizzare informazioni a lungo termine, poiché i gradienti diventano sempre più piccoli man mano che si propagano all'indietro attraverso il tempo.
    Di conseguenza, la rete può dimenticare informazioni importanti relative a eventi lontani nel tempo.
  • Lungo Tempo di Addestramento:** A causa della lentezza nell'aggiornamento dei pesi della rete, il tempo necessario per l'addestramento della rete può essere molto lungo e inefficiente.

Casi in cui si verifica

Il problema della scomparsa del gradiente è più probabile che si verifichi nelle RNN quando si utilizzano funzioni di attivazione come la tangente iperbolica o la funzione sigmoidea, che hanno gradienti compresi tra 0 e 1.
Questo problema diventa particolarmente evidente nelle RNN con molti passaggi temporali o strati ricorrenti, dove i gradienti devono essere propagati attraverso molte iterazioni.

La scomparsa del gradiente nelle reti neurali ricorrenti (RNN), si verifica quando l'informazione relativa ai gradiente calcolati nelle fasi precedenti dell'addestramento diminuisce rapidamente man mano che si va all'indietro nella rete durante il processo di backpropagation.
Questo fenomeno può essere particolarmente problematico in presenza di lunghe sequenze di parole.
Durante il processo di backpropagation, il gradiente viene moltiplicato ripetutamente per i pesi delle connessioni lungo la sequenza temporale.
Se questi pesi sono piccoli (cioè se le derivate parziali delle funzioni di attivazione sono inferiori a 1), il gradiente tenderà a diminuire esponenzialmente man mano che ci si allontana dall'output della rete.
Ciò significa che durante l'aggiornamento dei pesi delle connessioni nelle fasi precedenti della rete, il gradiente diventa sempre più piccolo fino a scomparire, rendendo difficile per la rete apprendere relazioni a lungo termine all'interno dei dati sequenziali.

In pratica, ciò può portare a una perdita di informazioni cruciali durante l'addestramento della rete, compromettendo le prestazioni del modello, specialmente in compiti che richiedono la comprensione di contesti lunghi, come la traduzione automatica o la generazione di testi.

Soluzioni

  • Utilizzo di Algoritmi di Ottimizzazione Adeguati: Alcuni algoritmi di ottimizzazione come l'Adagrad o l'RMSprop sono progettati per mitigare il problema della scomparsa del gradiente nelle reti neurali ricorrenti.
  • Utilizzo di Architetture Alternative: Architetture come le reti neurali ricorrenti a memoria a lungo termine (LSTM) e le reti neurali ricorrenti a unità gate (GRU) sono state sviluppate per affrontare specificamente il problema della scomparsa del gradiente, consentendo alle reti di mantenere informazioni a lungo termine.