LSTM(Long Short-Term Memory)網路是一種特殊的循環神經網路(RNN),旨在解決傳統RNN在處理長序列數據時遇到的梯度消失和梯度爆炸問題,這使得RNN難以學習序列中的長期依賴關係。LSTM通過引入「門」結構和「細胞狀態」來克服這些問題,其中的門結構控制信息的流入和流出,而細胞狀態則用於長期存儲狀態。LSTM的隱藏層中,每個時間步都會接收一個輸入和前一時間步的細胞狀態,然後通過一系列的門控機制(包括遺忘門、輸入門和輸出門)和細胞狀態更新來計算並輸出當前時間步的細胞狀態和隱藏狀態。這些門控機制決定哪些信息被遺忘、哪些新的信息被添加,以及哪些信息被輸出。
遺忘門:決定我們將遺忘多少之前的細胞狀態信息。它通過當前的輸入和上一個時間步的隱藏狀態計算得到,其值在0到1之間,表示完全遺忘或完全保留。
輸入門:決定哪些新的信息需要存儲到記憶細胞中。它包括一個決定更新記憶細胞哪些部分的輸入門,以及一個創建新的候選值向量的tanh層。
細胞狀態:通過逐點乘以遺忘向量後,與輸入門獲得的輸出逐點相加,更新為新的細胞狀態。
輸出門:決定下一個隱藏狀態應該是什麼,並可用於預測。它將先前的隱藏狀態和當前的輸入傳給sigmoid函式,然後將新修改的細胞狀態傳遞給tanh函式,最後將結果相乘。
LSTM的核心概念是細胞狀態和門控機制,它們共同作用以記住重要的信息並忘記不相關的數據,從而實現對序列數據的有效建模。