遞迴神經網路
遞迴神經網路就是把以前的資訊傳播下去的.(有記憶功能的神經網路)
遞迴神經網路的結果與傳統神經網路有一些不同,它帶有乙個指向自身的環,用來表示傳遞當前時刻處理的資訊給下一時刻使用.
其中ht為隱藏變數,w是權重,yt為輸出.
其中x表示輸入,w為各類權重,y表示輸出,h表示隱藏層狀態.上圖可以認為它是對相同神經網路的多重複製,每一時刻的神經網路會傳遞資訊給下一時刻.
長時依賴問題
lstm神經網路
rnns具體的結構,所有的遞迴神經網路是由重複神經網路模組構成一條鏈,它的處理層非常簡單,通常是乙個單tanh層。通過當前輸入及上一時刻的輸出狀態得到當前輸出.與神經網路相比,它可以利用上一時刻學習到的資訊進行當前時刻的學習.
lstm的結構與上面相似,不同的是它的重複模組比較複雜,它有四層結構:
lstm的核心思想
lstm的整個層是記憶塊,主要包含了三個門與乙個記憶單元.上圖的線稱為單元狀態c0,它就像乙個傳送帶,可以控制資訊傳遞給下一時刻.
逐步解析lstm
遺忘門
lstm第一步決定什麼資訊可以通過細胞狀態.這個決定由遺忘門通過sigmoid函式來控制,它會讓上一時刻的隱藏變數通過.
該層的輸出是乙個介於(0,1).
遺忘門輸出公式:
ft=sigmoid(wf*[h(t-1),xt]+bf),ft∈[0,1]
輸入門
第二步是產生我們想要更新的資訊.這一步包含兩部分.
第乙個是輸入門通過sigmoid決定哪些值用來更新(注意物件是h(t-1),xt).it∈[0,1].
第二個是用tanh函式生成新的候選值c`t,作為當前輸入門產生的候選值會新增到細胞狀態ct(時間序列).
把這兩部分產生的值結合起來更新.
更新好的ct有兩部分,我們將老的細胞狀態乘以ft忘掉不需要的資訊,使用候選細胞乘以it更新需要更新的新,再把兩者加起來,得到新的細胞狀態.如下圖所示.
輸出門
第三步是決定模型的輸出.
首先h(t-1),xt通過sigmoid函式得到乙個初始輸出ot.(h(t-1)是上一時刻的輸出,xt是本次的輸入.h(t-1)與xt理想化是一樣的.實際上存在誤差.).
輸出:使用tanh將ct值縮放到(-1,1)狀態.再與s初始輸出ot相乘得到模型輸出ht.
這可以理解,首先sigmoid函式的輸出是不考慮先前時刻學習到的資訊,tanh函式是對先前學到的資訊ct壓縮處理,起到穩定數值的作用.
兩者的結合學習就是rnn的學習思考.至於模型是如何學習的,這就是後向傳播誤差學習權重的過程.
上面是對lstm的典型結構的理解,一般下,它會有一些結構上的變形,但是基本思想不變.
[1]
深度學習基礎理論知識
深度學習入門,裡面包含各種基本知識 啟用函式 l正則化項和dropout 優化器 交叉驗證的時候,每一折都需要重新定義模型和優化器 正常的資料劃分為訓練集 驗證集 測試集三部分 調參的前提是模型需要收斂 batchsize的理解 神經網路的反向傳播 反向傳播看上去是乙個很簡單的過程,但實際上有很多技...
機器學習 理論知識
一 混淆矩陣 confusion matrix 混淆矩陣也稱誤差矩陣,是表示精度評價的一種標準格式,用n行n列的矩陣形式來表示。具體評價指標有總體精度 製圖精度 使用者精度等,這些精度指標從不同的側面反映了影象分類的精度。在人工智慧中,混淆矩陣 confusion matrix 是視覺化工具,特別用...
機器學習高階理論知識列表
個人學習收藏,侵刪 知識列表選自貪心科技的 機器學習高階訓練營 第5期的宣傳廣告,課程內容相比往期有大幅更新,一方面新增了對前沿主題的講解如圖神經網路 gcn,gat等 另外一方面對核心部分 如凸優化 強化學習 加大了對理論層面上的深度。除此之外,也會包含科研方 元學習 解釋性 fair learn...