在處理文字、語音等序列資料時,模型需要具備「記憶」能力,這就是序列模型的核心。從最基礎的 RNN,到為了解決其問題而誕生的 LSTM 和 GRU,再到徹底改變格局的 Transformer,這條演進之路清晰地反映了技術如何一步步解決瓶頸。
RNN是所有序列模型之父。它透過「隱藏狀態 (hidden state)」將前一時刻的資訊傳遞給下一時刻,賦予了模型記憶能力。
RNN有兩個主要缺點:
1.長程依賴問題:這是RNN最大的瓶頸。在訓練過程中,由於權重不斷相乘,會導致梯度消失(數值趨近於零)或梯度爆炸(數值異常大),使得模型很難學習到序列中相隔較遠的關係。
2.序列運算速度慢:因為每一時刻的計算都依賴於前一時刻的結果,模型只能逐步處理,無法進行並行運算。
而為了解決RNN的梯度消失和長程依賴問題,LSTM 應運而生。它在RNN的基礎上引入了精密的記憶單元 (Cell State) 與三個「閘門 (Gate)」,來控制資訊的流動。
而作為核心原理的三個門分別為:
透過這種機制,LSTM 能夠有效地保留重要的長期資訊,並過濾掉無關的細節,就像一個有選擇性記憶的大腦。他有效的解決了梯度消失問題,能夠捕捉並保留長距離的依賴關係,並且訓練過程相對穩定。
然而它也並非沒有缺點。結由於其包含了多個門和記憶單元的複雜結構,模型的參數數量龐大,訓練成本高昂。此外,雖然解決了梯度問題,但仍然是一種序列處理方式,他依舊無法進行並行運算。
GRU 是 LSTM 的輕量化版本。它在2014年被提出,旨在用更少的參數達到與LSTM相似的性能。其核心原理在於,
GRU將LSTM的遺忘門和輸入門合併成一個更新門(Update Gate)。並且捨棄了獨立的記憶單元,直接在隱藏狀態中進行更新。這種簡化讓GRU的結構更加緊湊,但仍保留了對資訊流的控制能力。
優點:
儘管LSTM和GRU成功解決了長程依賴問題,但它們無法並行運算的根本性限制,使得處理大規模語料時效率極低。
因此,研究者們發展了Transformer模型。它徹底跳脫了序列處理的框架,並透過自注意力機制(Self-Attention),讓模型能夠一次性處理整個序列中的所有詞,並判斷它們之間的關係。
這種並行處理的能力,讓Transformer成為了BERT、GPT等大型語言模型的基礎,從而開啟了NLP領域的新時代。