導航:首頁 > 源碼編譯 > 記憶網路演算法

記憶網路演算法

發布時間:2024-09-06 13:38:57

㈠ 循環神經網路(RNN)簡介

循環神經網路英文名稱為 ( Recurrent Neural Network, RNN ),其通過使用帶自反饋的神經元,能夠處理任意長度的 時序 數據。

給定輸入時序序列

式中, 表示一段時序數據, 為時間長度

以一段英文段落為例,其時序數據可以表示為:

若是一段視頻,將其每一幀通過CNN網路處理得到相應的編碼向量

循環神經網路通過以下公式更新隱藏層的活性值

循環神經網路圖示

RNN的基本模型如下圖所示,為便於理解,圖中將RNN的模型展開,按照時序方向對其前向傳播流程進行介紹

RNN的基本模型

利用數學表達式整個過程可以變得更加清晰,RNN的前向傳播公式如下:

將上述過程整合到一個RNN cell中,可以表示為如下圖所示的過程:

RNN的前向傳播示意圖

缺陷:

沒有利用到模型後續的信息,可以通過雙向RNN網路進行優化

RNN主要有兩種計算梯度的方式:隨時間反向傳播(BPTT)和實時循環學習法(RTRL)演算法

本文中主要介紹隨時間反向傳播的方法 ( BackPropagation Through Time

RNN的損失函數與任務有關,對於同步的序列對序列任務,其loss可以用交叉熵公式表示

然後通過BPTT演算法便可以進行梯度的反向傳播計算

梯度爆炸的解決方法:梯度修剪

梯度消失的解決方法:增加長程依賴 LSTM,GRU

GRU的基本思路:增加相關門(Relate Gate)和更新門(Update Gate),進而使得RNN單元具有記憶能力

首先從數學角度對GRU的前向傳播過程進行介紹,具體公式如下:

公式中各變數的含義:

將上述數學公式轉化為圖像,可得

GRU Cell的前向傳播流程

LSTM意為長短時記憶網路 (Long Short-Term Memory Network,LSTM) ,可以有效地解決簡單神經網路的梯度消失和爆炸問題

在LSTM中,與GRU主要有兩點不同

同樣,先從數學公式入手,對LSTM的前向傳播過程進行了解

基於數學公式的過程,可將LSTM CELL的前向傳播過程總結為(圖片借用於nndl):

LSTM Cell的前向傳播示意圖

從上圖中可以看出,LSTM在前向傳播的過程中傳輸了兩個狀態:內部狀態 以及外部狀態 ,在整個傳播過程中 外部狀態(隱狀態) 每個時刻都會被重寫,因此可以看作一種 短時記憶 ,而 內部狀態 可以在某個時刻捕捉一些關鍵信息,並將此信息保存一段時間間隔,可以看作一種 長時記憶 (長的短時記憶)

此外,在LSTM網路初始化訓練的時候,需要手動將遺忘門的數值設置的大一些,否則在參數初始化的時候,遺忘門的數據會被初始化為一個很小的值,前一時刻的內部狀態 大部分都會丟失,這樣網路很難獲取到長距離的依賴信息,並且相鄰時間間隔的梯度會非常小,導致 梯度彌散 問題,因此遺忘門的 偏置變數 的初始值 一般很大,取 1或2

將 設置為1即可,但是長度非常的大的時候會造成記憶單元的飽和,降低性能

三個門不僅依賴於 和 ,也依賴於

將兩者合並為一個門,即:

首先,我們要理解什麼是深層的RNN,對於單個的RNN cell,若將其在時間維度上展開,其深度與時間維度的長度成正比,但若將一個RNN cell看作為單個從 的映射函數,則單個cell實際上是很淺顯的一層,因此深層循環神經網路要做的就是把多個RNN cell組合起來,換句話說,就是增加從輸入 到輸出 的路徑,使得網路的深度更深。

如何增加從輸入 到輸出 的路徑呢?兩種途徑:

堆疊循環神經網路示意圖

將網路帶入到實際應用場景中:假如我們要翻譯一段句子

在這里,is和are實際上是由後面的Lucy和they所決定的,而這種單向的按照時序進行傳播的方式沒有利用到後面的信息。因此誕生了雙向循環網路

雙向循環神經網路示意圖

雙向循環神經網路實際上就是簡單的雙層循環神經網路,只不過第二層網路的傳播方式為按時序的逆向傳播,其傳播公式為:

閱讀全文

與記憶網路演算法相關的資料

熱點內容
路由器加密模式只有wpa2 瀏覽:530
ug刪除加密 瀏覽:433
安卓手機如何下載最低版本的抖音 瀏覽:778
sprint演算法 瀏覽:444
數控編程學習資料 瀏覽:177
pdf語文 瀏覽:943
單片機小學比賽 瀏覽:95
條件預編譯多條件 瀏覽:394
物理學好可以當程序員嗎 瀏覽:435
jsp圖片網站源碼 瀏覽:845
美股開盤加密貨幣大跌 瀏覽:18
ubuntuphp伺服器 瀏覽:189
伺服器編輯器如何寫 瀏覽:384
我有一套源碼自帶採集 瀏覽:112
對稱加密演算法的特點 瀏覽:47
河池看房用什麼app 瀏覽:283
linuxnameserver 瀏覽:91
與數學相關的文件夾名稱 瀏覽:292
證據推理演算法實例 瀏覽:165
易經二進制計演算法則 瀏覽:754