在傳統的 LSTM 結構中,記憶單元狀態是一個核心概念,它通過不同的門控機制控制信息的流動。然而,LSTM 的標準設計中,這些門控機制並不能直接查看記憶單元的當前狀態,這使得模型可能在某些情況下無法有效利用單元中的信息。為了解決這個問題,peephole 長短期記憶模型(Peephole LSTM)應運而生,通過在門控中引入記憶單元狀態的「偷窺孔」(peepholes),使得門控機制可以參考當前記憶單元的狀態。

1. Peephole LSTM 的結構

Peephole LSTM 是在傳統 LSTM 的基礎上改進而來

它讓三個門控機制(遺忘門、輸入門和輸出門)可以「窺視」當前的記憶單元狀態 $C_t$。

具體來說,每個門控在進行信息更新時,除了參考當前輸入和前一時間步的隱藏狀態,還會使用當前的記憶單元狀態作為額外的參考。

$$ f_t = \sigma(W_f \cdot [h_{t-1}, x_t] + V_f \cdot C_{t-1} + b_f) $$

$$ i_t = \sigma(W_i \cdot [h_{t-1}, x_t] + V_i \cdot C_{t-1} + b_i) $$

$$ \tilde{C}t = \tanh(W_C \cdot [h{t-1}, x_t] + b_C) $$

2. Peephole LSTM 的改進

在傳統 LSTM 中,門控機制無法直接獲取記憶單元的當前狀態,這可能導致模型在某些情境下無法靈活調整信息的存取。而 Peephole LSTM 的創新點就在於,通過窺視記憶單元的狀態,門控機制可以更準確地決定信息的保留、輸入和輸出。

例如:

這種設計讓模型能更靈活地處理長期依賴,尤其是對於那些需要更多細緻控制的序列學習任務,Peephole LSTM 顯示出更強的適應能力。

3. Peephole LSTM 的數學推導

Peephole LSTM 的數學推導仍然基於通過時間的反向傳播算法 (Backpropagation Through Time, BPTT),其推導過程與傳統 LSTM 相似,只是在計算遺忘門、輸入門和輸出門時,會額外引入當前的記憶單元狀態 $C_t$。這使得梯度的傳播能夠更加準確,特別是在長期依賴的序列學習中,可以有效防止梯度消失和梯度爆炸問題。