gif動圖是什麼(GIF是什麼意思)
摘要: 本文主要研究了維尼拉迴圈神經(RNN)、長短期記憶(LSTM)和門控迴圈單元(GRU)這三個網路,介紹的比較簡短,適用於已經瞭解過這幾個網路的讀者閱讀。
迴圈神經網路是一類常用在序列資料上的人工神經網路。三種最常見的迴圈神經網路分別是:
1.維尼拉迴圈神經網路(vanilla RNN)
2.長短期記憶網路(LSTM),由Hochreiter和Schmidhuber於1997年提出
3.門控迴圈單元網路(GRU),由Cho等人於2014年提出
現在可以查到許多解釋迴圈神經網路這一概念的圖示。不過我個人比較推薦的是Michael Nguyen在《邁向資料科學》上發表的這篇文章,因為這篇文章撰寫了關於這些模型的很多知識,而且提供了清楚易懂的插圖,易於讀者理解。這篇文章目的是啟發大家思考如何更好地視覺化這些單元中發生的情況,節點是如何共享的,以及它們怎麼轉換為輸出節點這些問題。Michael 的精彩動畫也給了我很大的啟發,從中受益匪淺。
本文主要研究了維尼拉迴圈神經(RNN)、長短期記憶(LSTM)和門控迴圈單元(GRU)這三個網路,介紹的比較簡短,適用於已經瞭解過這幾個網路的讀者(並且建議在閱讀本文之前閱讀Michael的文章)。請讀者注意,下面的動畫是按順序排列的,讀者請依序檢視。
如下圖所示,是我用來做插圖的圖例。
Fig. 0: Legend for animations
在所演示的動畫中,我使用了3(綠色)和2個隱藏單元(紅色)的輸入大小,批處理大小為1。
演示如下:
Vanilla RNN
Fig. 1: Animated RNN cell
* t — time step 時間步長
* X — input 輸入
* h — hidden state 隱藏狀態
* length of X — size/dimension of input X的長度表示輸入的大小,尺寸
* length of h — no. of hidden units. h的長度表示不屬於隱蔽的單位
注意,不同的庫可以用不同的方式呼叫它們,但它們的含義都是相同的。
- Keras — state_size ,units
- PyTorch — hidden_size
- TensorFlow — num_units
LSTM
Fig. 2: Animated LSTM cell
* C — cell state
注意,單元格狀態的維度與隱藏狀態的維度相同。
GRU
Fig. 3: Animated GRU cell
希望這些動畫片對你有所幫助!以下是靜態影象中的單元格的概述:
Fig. 4: RNN cell
Fig. 5: LSTM cell
Fig. 6: GRU cell
非常感謝德里克和任傑對本文的想法、建議和糾正。
如果您想繼續瞭解人工智慧和深度學習,可以在Twitter@remykarem上閱讀我寫的關於這些的摘要文章和演示。
作者資訊
Raimi Karim
本文由阿里云云棲社羣組織翻譯。
文章原標題《Animated RNN, LSTM and GRU Recueernt neural network cells in GIFs]》,譯者:麼凹,審校:Viola。