iT邦幫忙

2023 iThome 鐵人賽

DAY 26
0

遞歸神經網絡( Recurrent Neural Network,簡稱 RNN )

主要用於處理時間序列、自然語言文本等,RNN 的特點在於它具有記憶能力,可以處理可變長度的輸入序列,並在處理序列資料時保留先前的資訊

  • 循環層( Recurrent Layer )
    存在一個或多個循環層,每個循環層都具有權重和偏差還有一個隱藏狀態( hidden state ),記錄有關之前的資訊,而隱藏狀態在每個時間步都會被更新
  • 時間步( Time Step )
    序列資料時被分成多個時間步,每個時間步接受一個輸入,並生成一個隱藏狀態和一個輸出
  • 遞歸的反向傳播( Backpropagation Through Time,BPTT )
    使用反向傳播算法進行訓練,不同於傳統神經網絡,RNN 需要在時間步之間傳播梯度

關鍵特點

  1. 循環性: 使用回饋迴路,讓資訊可以在網絡中循環,也使 RNN 能記住之前的輸入,並把之前的輸入納入當前的計算中
  2. 序列處理: RNN 接受單一輸入向量,並且處理整個序列,而每個時間步的輸入都與先前時間步的輸出相關聯
  3. LSTM 和 GRU: 長短時記憶網絡( LSTM )和門控循環單元( GRU ),這些變體解決傳統 RNN 中的梯度消失和梯度爆炸問題,也提高了性能

長短期記憶模型( LSTM )

LSTM 是一種特殊的 RNN 變體,改善 RNN 在處理長序列資料時的能力
有特定的閘門機制,以控制資訊的流動,並保留長期記憶

結構運作

包含三個重要的閘門

  1. 遺忘閘門( Forget Gate ) 選擇哪些長期記憶應保留或丟棄
  2. 輸入閘門( Input Gate ) 決定新的資訊應該被添加到長期記憶中
  3. 輸出閘門( Output Gate ) 根據當前的輸入和長期記憶來生成模型的輸出
    每個閘門都是由一個 sigmoid 函數來控制,決定哪些資訊要被保留或遺忘

門控循環單元(GRU)

GRU 是另一種 RNN 變體,簡化 LSTM 的結構,減少參數數量,仍能有效處理長期依賴性

結構運作

GRU 包含兩個主要的閘門

  1. 更新閘門( Update Gate ) 控制哪些資訊應該被保留,並確保過去的資訊不會過度影響當前輸出
  2. 重置閘門(Reset Gate) 決定哪些資訊應該被忘記或重置
    減少了 LSTM 的複雜性

上一篇
卷積神經網絡
下一篇
遷移學習
系列文
機器學習新手行,相信你也行!30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言