詳細展示RNN的網路結構
下面簡單介紹一下RNN的結構,如果簡略地去看,RNN結構很簡單,根本沒有CNN那麼複雜,但是要具體實現,還是需要仔細思考一下,希望本篇部落格能把RNN結構說的明白。
迴圈神經網路(Recurrent Neural Network,RNN)DNN以及CNN在對樣本提取特徵的時候,樣本與樣本之間是獨立的,而有些情況是無法把每個輸入的樣本都看作是獨立的,比如NLP中的此行標註問題,ASR中每個音素都和前一個音素是相關的,這類問題可以看做一種帶有時序序列的問題,無法將樣本看做是相互獨立的,因此單純的DNN和CNN解決這類問題就比較棘手。此時RNN就是一種解決這類問題很好的模型。
由上圖可以看出,RNN的結構是一個重複的過程,且權重是共享的,這也是借鑑了CNN的思想,可以減少引數量,從而減少計算的複雜度。第時刻隱藏層的輸出需要時刻的隱藏層的輸出,RNN以此來實現資訊的傳遞。如果上圖計算不清晰,就請看下面的兩幅圖片。
看到這兩幅圖已經很清晰地展示了RNN的整體結構,但是在具體實現的時候,或者你需要了解每一個細節,我們知道在影象處理的時候,我們的每一個影象被拉成一個向量,每一個畫素其實就是輸入層的一個神經元。並且對於隱藏層每個神經元同樣相當於一個特徵圖所構成向量的一個畫素值。所以,上述的隱藏層並不是一個單一的神經元,它是一個包含多個神經元的隱藏層,如下圖所示。這才是RNN的真正的結構。
好了,上面只是RNN的圖形描述,現在用公式的形式來對RNN的前向傳播進行描述,以下圖的符號進行描述,很容易就可以寫出前向傳播的公式。
符號 | 含義 |
輸入向量的大小(one-hot長度,也是詞典大小) | |
輸入的每一個序列的長度 | |
隱藏層神經元的個數 | |
樣本集合 | |
第時刻的輸入 | |
第時刻經過Softmax層的輸出。 | |
第時刻輸入樣本的真實標籤 | |
第時刻的損失函式,使用交叉熵函式, | |
序列對應的損失函式: RNN的反向傳播是每處理完一個樣本就需要對引數進行更新,因此當執行完一個序列之後,總的損失函式就是各個時刻所得的損失之和。 |
|
第個時刻RNN隱藏層的輸入。 | |
第t個時刻RNN隱藏層的輸出。 | |
輸出層的輸入,即Softmax函式的輸入 | |
輸入層與隱藏層之間的權重。 | |
上一個時刻的隱藏層 與 當前時刻隱藏層之間的權值。 | |
隱藏層與輸出層之間的權重。 |
RNN的前向傳播過程:
但是RNN,與CNN或者DNN相比,其引數更新是如何實現的呢?這是訓練RNN的一個核心問題。請看下篇BPTT。
參考:
李宏毅老師課件
相關文章
- RNN 結構詳解RNN
- CNN、RNN、DNN的內部網路結構有什麼區別?CNNRNNDNN
- 從網路架構方面簡析迴圈神經網路RNN架構神經網路RNN
- 【神經網路篇】--RNN遞迴神經網路初始與詳解神經網路RNN遞迴
- OSI七層網路結構詳解
- Swin-Transformer網路結構詳解ORM
- LetNet5網路結構詳解
- 1.2網際網路的網路結構
- WGCNA構建基因共表達網路詳細教程GC
- TensorFlow系列專題(九):常用RNN網路結構及依賴優化問題RNN優化
- 迴圈神經網路(RNN)神經網路RNN
- 迴圈神經網路 RNN神經網路RNN
- RNN與LSTM網路簡述RNN
- 轉載:ResNet50網路結構圖及結構詳解
- Oracle記憶體結構:ProcessMemory的詳細資訊Oracle記憶體SSM
- MySQL體系結構詳細介紹MySql
- 網路安全Bypass網路卡詳細講解
- RNN神經網路模型綜述RNN神經網路模型
- TensorFlow卷積網路常用函式引數詳細總結卷積函式
- 網路爬蟲詳細設計方案爬蟲
- 資料結構知識框架【超詳細】資料結構框架
- Linux 目錄結構及詳細操作Linux
- RNN是怎麼從單層網路一步一步構造的?RNN
- 網路拓撲結構
- Android技能樹 — 網路小結(7)之 Retrofit原始碼詳細解析Android原始碼
- 網路交換機功能和原理的詳細說明
- Oracle記憶體結構(三)----Process Memory的詳細資訊Oracle記憶體
- vue-cli 目錄結構詳細講解Vue
- Andrew BP 神經網路詳細推導神經網路
- [總結] 容器技術架構、網路和生態詳解架構
- (一)線性迴圈神經網路(RNN)神經網路RNN
- Oracle記憶體結構(三)----Process Memory的詳細資訊(轉)Oracle記憶體
- Oracle記憶體結構(二)----Shared Pool的詳細資訊Oracle記憶體
- 網路管理體系結構
- 《風控要略:網際網路業務反欺詐之路》一萬字讀後詳細總結
- 計算機網路的七層結構、五層結構和四層結構計算機網路
- 詳細瞭解 InnoDB 記憶體結構及其原理記憶體
- 深度殘差收縮網路:(三)網路結構