LSTM是RNN(Recurrent Neural Network)的其中一種模型。RNN是遞歸神經網絡,會將前一時間點的運算結果當成現在時間點運算的輸入因子。RNN模型的訓練必須透過反向傳遞來更新權重以達到誤差最小的預測結果,但在更新權重的過程中,如果不斷乘上大於1的權重(W > 1)會導致誤差梯度發散(exploding gradient),這種現象稱為梯度爆炸;如果不斷乘上小於1的參數(W < 1)使誤差梯度小到有如消失,則稱為梯度消失(vanishing gradient)。而LSTM能夠改善上述RNN模型的缺點。
LSTM神經元組成
LSTM與一般神經模型最大的不同在於神經元的運算,其每個神經元主要由4個成分組成,分別是Input Gate、Output Gate、Memory Cell以及Forget Gate(圖1-1)。LSTM的運算概念如下,由Input Gate控制是否要讓資料進入神經元,當資料進去後,再由Forget Gate決定是否要記住此次的運算結果,如果要,就存入Memory Cell,最後由Output Gate控制是否要讓運算結果輸出。