循環神經網路 是什麼?

Recurrent Neural Network:循環神經網路 的完整解釋

循環神經網路是一種具備「記憶」功能的神經網路,其能處理序列資料,並將前一步的輸出回饋至下一步

容易混淆

RNN vs 前饋神經網路 前饋神經網路每次只看當下輸入。 RNN 會把前一步的狀態帶到下一步。 最關鍵的區別:一個看單點,一個看順序。

RNN vs LSTM RNN 結構比較簡單。 LSTM 加了閘門,能更好保存長期資訊。 最關鍵的區別:一個簡單,一個更會記。

RNN vs 注意力機制 RNN 主要靠序列逐步傳遞資訊。 注意力機制會直接看哪些位置比較重要。 最關鍵的區別:一個一路傳,一個直接挑重點。

記住這句就好

看到前面,才能更懂後面。

實際案例

語句理解 你讀到「今天下雨,所以我帶了傘」,後半句會受前半句影響。 RNN 的設計就是為了讓模型保留這種上下文。

時間序列 股票價格、感測器數據和用電量都有前後關係。 RNN 可以把前一個時間點的資訊帶進下一個時間點。

算法與應用

RNN 會把前一時刻的隱藏狀態傳到下一時刻,形成循環結構。 這種設計讓它能處理序列,但也容易遇到梯度消失或梯度爆炸。 為了改善這些問題,後來常用 LSTM、GRU 或注意力機制來取代。

中英對照與常見說法

說法 出現場合
循環神經網路、遞迴神經網路 台灣兩種譯法都有人用
循环神经网络 簡體寫法
Recurrent Neural Network 英文原名
RNN 標準縮寫

要跟 遞迴神經網路(Recursive Neural Network) 分清楚,那是另一種按樹狀結構展開的模型,中文譯名容易撞在一起。日常講的 RNN 幾乎都是指循環的那一種。

它跟一般網路差在哪

一般前饋網路每個輸入獨立處理,RNN 多了一條隱藏狀態沿著時間往後傳:處理第 t 個字的時候,同時看得到「第 t 個字」與「前面所有字濃縮成的狀態」。

這條迴路讓它能處理長度不固定的序列,也讓它天生具有記憶。代價是必須依序計算,第 t 步要等第 t−1 步算完,無法平行化。這是它後來被 Transformer 取代的主要原因之一。

梯度消失與三種變體

架構 特點
原始 RNN 結構最簡單,但只記得住很短的距離
LSTM(長短期記憶) 用輸入閘、遺忘閘、輸出閘控制資訊流,能記較長距離
GRU(閘控循環單元) 簡化成更新閘與重設閘,參數較少、訓練較快,表現常常跟 LSTM 差不多
雙向 RNN 正向與反向各跑一次再合併,適合能拿到整句的任務

梯度消失是原始 RNN 的核心問題。 反向傳播要沿著時間一路乘回去,權重小於 1 時連乘會指數衰減,導致模型學不到相隔很遠的關聯。LSTM 用一條幾乎不做乘法的細胞狀態通道繞過這個問題,這是它能記較久的關鍵。

反過來梯度也可能爆炸,標準對策是梯度裁剪(gradient clipping),設一個上限超過就等比例縮回去。

現在還用得到嗎

序列建模的主流已經是 Transformer,因為它可平行訓練、長距離依賴處理得更好。但 RNN 系列在幾個地方仍有位置:

串流與即時推論。 RNN 的狀態是固定大小,每來一個新輸入更新一次即可,記憶體不隨序列長度成長。Transformer 的注意力要看全部歷史,長時間串流成本會持續上升。

超長序列與資源受限裝置。 感測器訊號、邊緣裝置上的關鍵字偵測,RNN 的固定成本反而是優勢。

理解後續架構的基礎。 狀態空間模型(如 Mamba)本質上是在重新設計一條「可平行訓練但推論時像 RNN」的路徑,不先理解 RNN 就看不懂它在解什麼問題。

情境判斷

Q1(直覺題): 你要讓模型讀一整句話,知道前文會影響後文,該考慮什麼?

→ RNN,因為它天生就是為了處理順序資料。

Q2(判斷題): 如果序列很長,RNN 一定是最好的選擇嗎?

→ 不一定,長序列常會讓梯度傳遞變難,這時 LSTM、GRU 或注意力機制可能更合適。

循環神經網路 在 iPAS 考試中的重點

根據歷年統計,循環神經網路 相關題目 平均佔 AI 技術類考題 3%, 屬於未分類考範圍。

常見出題方向:循環神經網路的演算法原理與架構(40%)、序列資料處理的數學模型(35%)、RNN 的應用與限制分析(25%)。

相關術語

常見問題

RNN 只適合文字嗎?

不只,任何有順序的資料都可能用到,例如語音、感測器和時間序列。

RNN 一定比前饋網路好嗎?

不一定,要看資料有沒有順序關係,沒有順序就不需要循環結構。

為什麼現在比較少直接用純 RNN?

因為長序列訓練不穩,實務上常改用 LSTM、GRU 或注意力機制。

資料來源

← 回到 循環神經網路 快查頁

測驗你對 循環神經網路 的理解

透過模擬考系統檢驗學習成果

開始測驗