Una rete a lunga memoria a breve termine (Long Short-Term Memory o LSTM) è un tipo di rete neurale ricorrente (RNN). Le LSTM sono prevalentemente usate per apprendere, elaborare e classificare dati sequenziali in quanto sono in grado di apprendere le dipendenze a lungo termine tra fasi temporali di dati.
Una LSTM è un tipo specializzato di rete neurale ricorrente (RNN) progettato per apprendere, elaborare e classificare dati sequenziali, imparando le dipendenze a lungo termine tra i passi temporali.
Le LSTM utilizzano gate aggiuntivi (gate di input, di output e di forget) insieme a una cella di memoria per superare i problemi di vanishing ed exploding gradient che limitano le RNN tradizionali. Questo consente loro di apprendere relazioni a lungo termine in modo più efficace.
Le LSTM contengono tre gate principali: il gate di input controlla il flusso di nuove informazioni verso l’unità, il gate di forget determina quali informazioni devono essere mantenute e il gate di output controlla quanto il valore dell’unità viene utilizzato per generare l’output.
Le reti LSTM sono utilizzate per sentiment analysis, modellazione del linguaggio, riconoscimento vocale, analisi video, elaborazione del segnale, previsione di serie temporali e attività di elaborazione del linguaggio naturale in cui i dati sequenziali e le dipendenze a lungo termine sono particolarmente importanti.
Un BiLSTM apprende dipendenze bidirezionali facendo passare i dati di input attraverso due componenti LSTM, una che elabora la sequenza in avanti e una all’indietro, per poi concatenarne gli output. Questo approccio può migliorare le prestazioni della rete nelle applicazioni che richiedono la conoscenza dell’intero contesto temporale.
Sì, MATLAB, insieme a Deep Learning Toolbox, consente di progettare, addestrare e distribuire reti LSTM sia in modo programmatico sia attraverso l’app Time Series Modeler. È inoltre disponibile il supporto per layer LSTM, layer LSTM bidirezionali e layer LSTM projected.
Sì, MATLAB può importare modelli PyTorch, TensorFlow e ONNX ed esportare reti LSTM nei formati TensorFlow e ONNX, consentendo l’interoperabilità con framework di Deep Learning basati su Python.
Le reti LSTM possono essere distribuite su sistemi embedded, sistemi aziendali o nel cloud tramite la generazione automatica di codice C/C++ e CUDA ottimizzato per CPU e GPU, oppure di codice Verilog e VHDL sintetizzabile per FPGA e SoC.a
Risorse
Développez vos connaissances grâce à la documentation, aux exemples, aux vidéos et plus encore.