Glossario

Memoria a breve termine (LSTM)

Scopri come le reti LSTM (Long Short-Term Memory) eccellono nella gestione di dati sequenziali, superano le limitazioni delle RNN e alimentano compiti di intelligenza artificiale come l'NLP e le previsioni.

Addestra i modelli YOLO semplicemente
con Ultralytics HUB

Per saperne di più

La memoria a breve termine (Long Short-Term Memory, LSTM) è un tipo di architettura specializzata di rete neurale ricorrente (RNN) progettata per superare i limiti delle RNN tradizionali nell'apprendimento delle dipendenze a lungo raggio. Introdotte da Sepp Hochreiter e Jürgen Schmidhuber nel 1997, le LSTM sono particolarmente efficaci nell'elaborazione di sequenze di dati, come testi, discorsi e serie temporali, in cui il contesto delle parti precedenti della sequenza è fondamentale per la comprensione delle parti successive. Questa capacità le rende una tecnologia fondamentale in diverse applicazioni di Deep Learning (DL).

Come funzionano le LSTM

Le RNN tradizionali si scontrano con il problema del gradiente che svanisce: le informazioni dei primi passi di una sequenza svaniscono man mano che si propagano nella rete, rendendo difficile l'apprendimento delle dipendenze su intervalli lunghi. Le LSTM risolvono questo problema utilizzando una struttura unica che comprende celle di memoria e porte.

Il componente principale è la cella di memoria, che agisce come un nastro trasportatore, consentendo alle informazioni di fluire attraverso la rete in modo relativamente invariato. Le LSTM utilizzano tre "porte" principali per regolare le informazioni immagazzinate nella cella di memoria:

  1. Cancello di dimenticanza: Decide quali informazioni buttare via dallo stato della cella.
  2. Gate di ingresso: Decide quali nuove informazioni memorizzare nello stato della cella.
  3. Gate di uscita: Decide quale parte dello stato della cella deve essere emessa.

Queste porte, implementate utilizzando funzioni di attivazione come la sigmoide e la tanh, imparano quali informazioni sono importanti da mantenere o da scartare a ogni passo temporale, consentendo alla rete di mantenere un contesto rilevante su sequenze estese.

Applicazioni del mondo reale

Le LSTM sono state applicate con successo in numerosi domini che richiedono la modellazione di sequenze:

  • Elaborazione del linguaggio naturale (NLP): Le LSTM eccellono in compiti come la traduzione automatica (ad esempio, tradurre frasi lunghe preservando il significato), l'analisi del sentimento (comprendere le opinioni espresse nel testo) e la modellazione del linguaggio. Ad esempio, una LSTM può elaborare un paragrafo di testo per capire il sentiment generale, ricordando le frasi chiave dell'inizio che influenzano il significato alla fine.
  • Riconoscimento vocale: Vengono utilizzate per convertire il linguaggio parlato in testo modellando le dipendenze temporali dei segnali audio. Un sistema basato su LSTM può riconoscere parole e frasi considerando la sequenza dei suoni nel tempo, migliorando l'accuratezza rispetto ai modelli che non catturano il contesto a lungo raggio. I sistemi di riconoscimento vocale diGoogle hanno storicamente utilizzato le LSTM.
  • Analisi delle serie temporali: Le LSTM vengono applicate per prevedere i valori futuri sulla base di dati storici, come i prezzi delle azioni, i modelli meteorologici o il consumo di energia. La loro capacità di ricordare le tendenze a lungo termine le rende adatte a modelli predittivi complessi.
  • Analisi video: Le LSTM possono elaborare sequenze di fotogrammi video per comprendere azioni o eventi che si verificano nel tempo, contribuendo ad applicazioni come il riconoscimento di attività.

Le LSTM rispetto ad architetture simili

Pur essendo potenti, le LSTM fanno parte di una famiglia più ampia di modelli di sequenza:

  • RNN: Le LSTM sono un tipo di RNN progettato appositamente per evitare i problemi di memoria a breve termine delle RNN semplici.
  • Unità Ricorrenti Gated (GRU): Le GRU sono una variante delle LSTM con un'architettura più semplice (meno porte). Spesso hanno prestazioni paragonabili a quelle degli LSTM in determinati compiti, pur essendo meno intensivi dal punto di vista computazionale.
  • Transformers: Introdotti successivamente, i trasformatori si basano su meccanismi di attenzione piuttosto che di ricorrenza. Hanno ampiamente superato gli LSTM per quanto riguarda le prestazioni allo stato dell'arte per molti compiti di NLP, in particolare nei Large Language Models (LLM) come il GPT-4. Architetture come Longformer estendono ulteriormente le capacità dei trasformatori per sequenze molto lunghe.

Implementazione e strumenti

Le LSTM possono essere facilmente implementate utilizzando i più diffusi framework di deep learning, come ad esempio PyTorch (vedi la documentazione suPyTorch LSTM) e TensorFlow (vedi la documentazione diTensorFlow LSTM). Mentre Ultralytics si concentra principalmente su modelli di Computer Vision (CV) come Ultralytics YOLO per compiti come il rilevamento di oggetti e la segmentazione di istanze, la comprensione dei modelli di sequenza è preziosa, soprattutto perché la ricerca sta esplorando la possibilità di unire NLP e CV per compiti come la comprensione di video o la sottotitolazione di immagini. Puoi approfondire i vari modelli e concetti di ML nella documentazione di Ultralytics . La gestione dell'addestramento e della distribuzione dei vari modelli può essere semplificata utilizzando piattaforme come Ultralytics HUB. L'articolo fondamentale su LSTM di Hochreiter e Schmidhuber fornisce i dettagli tecnici originali. Risorse come DeepLearning.AI offrono corsi sui modelli di sequenza, compresi gli LSTM.

Leggi tutto