在遞迴式神經網路(RNN)中,Elman 神經網路是其中的一個經典變種,由 Jeffrey Elman 於 1990 年提出。該模型通過引入上下文層(context layer)來改善 RNN 在序列學習中的性能,並且在語音識別、自然語言處理等任務中得到了廣泛應用。

1. Elman 神經網路的結構

Elman 神經網路是一個部分連接的遞迴式神經網路。它的關鍵特徵是引入了上下文單元來存儲之前時間步的隱藏層輸出,從而使模型能夠記住過去的信息,並在當前時間步中使用這些信息。

Elman 神經網路包括三個主要層次

$$ h_t = \sigma(W_x x_t + W_h h_{t-1} + b_h) $$

$W_x$ 是輸入權重矩陣,$W_h$ 是上下文(或隱藏狀態)權重矩陣,$b_h$ 是偏置項,$\sigma$ 是激活函數(如 tanh 或 ReLU)。

最後,隱藏層的輸出 $h_t$ 通過輸出層進行轉換,得到模型的預測結果 $y_t$:

$$ y_t = \phi(W_y h_t + b_y) $$

$W_y$ 是隱藏層到輸出層的權重矩陣,$b_y$ 是輸出層的偏置,$\phi$ 是輸出層的激活函數(例如 softmax 或 sigmoid)。

2. Elman 網路的序列學習能力

Elman 神經網路的最大優勢在於其能夠有效處理序列資料,因為它的上下文層儲存了上一個時間步的信息,這使得模型能夠學習時間上的依賴關係。與標準的 RNN 不同,Elman 網路強調的是通過引入上下文層來更好地學習長期依賴性,並且能夠在每一個時間步中考慮當前和過去的信息。

從數學角度看,Elman 網路的優點在於其簡化的架構使得序列信息更容易反向傳播並更新權重,尤其是當序列依賴的時間跨度較短時,它能夠快速收斂。

3. Elman 網路的數學表示與訓練

在訓練過程中,Elman 神經網路仍然使用反向傳播算法,具體為通過時間的反向傳播(Backpropagation Through Time, BPTT)。與標準 RNN 一樣,BPTT 將誤差根據時間步展開,並反向傳播到每一個時間步進行參數更新。

$$ \frac{\partial L}{\partial W_x} = \sum_{t=1}^{T} \frac{\partial L_t}{\partial h_t} \frac{\partial h_t}{\partial W_x} $$

$L_t$ 是在第 $t$ 時間步的損失,$h_t$ 是該時間步的隱藏層狀態。

4. Elman 網路的應用與局限性