RNN

最近真是心態(tài)炸了,標(biāo)題都寫錯了.

前言

在之前已經(jīng)復(fù)習(xí)過了CNN的主要內(nèi)容, CNN在處理圖像與文本的任務(wù)上有非常好的表現(xiàn), 可以認(rèn)為CNN側(cè)重于構(gòu)造單個結(jié)構(gòu)性樣本的相鄰區(qū)域之間的組合特征, 這里有一個很重要的詞就是單個樣本,那么對于某些樣本之間存在關(guān)聯(lián)的數(shù)據(jù),如何去挖掘前后樣本的關(guān)聯(lián)?
比較常見的有時間序列分析以及隱馬爾科夫模型等方法.

  • 時間序列分析
    其中時間序列分析常見于計量經(jīng)濟(jì)學(xué)領(lǐng)域,該技術(shù)有以下三個基本特點:
    (1)假設(shè)事物發(fā)展趨勢會延伸到未來;
    (2)預(yù)測所依據(jù)的數(shù)據(jù)具有不規(guī)則性;
    (3)不考慮事物發(fā)展之間的因果關(guān)系。
    基本的思想是,某一時刻的輸出等于前面若干時刻輸出的線性組合, 常用的算法包括:ARMA, ARIMA等.
  • 隱馬爾科夫模型(HMM)
    一種用于標(biāo)注問題的統(tǒng)計學(xué)模型, 模型假設(shè)序列滿足馬爾科夫性,也就是每個狀態(tài)的轉(zhuǎn)移只依賴于之前的n個狀態(tài). 這里夾帶一點個人的理解.
    HMM與時間序列分析都假設(shè)當(dāng)前時刻的輸出依賴于前面若干時刻輸出, 而不同有以下幾點:
    a.時間序列分析不考慮事物發(fā)展的因果關(guān)系,而HMM反之
    b.時間序列分析針對連續(xù)與離散的輸出結(jié)果, 而HMM針對的是離散的輸出,也就是輸出的狀態(tài)有固定的集合.
    HMM常用于ASR, NLP, 基因序列分析等領(lǐng)域, 一個最常見的應(yīng)用就是分詞算法.
  • Why RNN
    那么為什么要搞出一個RNN? 其實也就是為了讓神經(jīng)網(wǎng)絡(luò)能處理序列輸入數(shù)據(jù), 能夠在模型中學(xué)習(xí)上下文信息. 假設(shè)我們構(gòu)建一個簡單的對話機(jī)器人(Chat Bot), 在下面的對話場景中, 如果不帶上下文信息的話, 機(jī)器人無法知道對方是想詢問天津明天的天氣; 但是如果機(jī)器人的分類器算法有能力學(xué)習(xí)上下文信息, 這種意圖就可以很輕松地識別出來.


    上下文對話

基本原理

在已知神經(jīng)網(wǎng)絡(luò)ANN的基本結(jié)構(gòu)以及BP算法的前提條件下.
最基本的RNN原理就是一句話, 某一時刻的隱藏層輸出作為下一時刻輸入的一部分, 這樣就做到了上下文信息的傳遞, 從圖上可以非常清楚地看到RNN的基本結(jié)構(gòu).

RNN結(jié)構(gòu)

如圖可以得到任意時刻的輸出為:

其中F為輸出層函數(shù), 暫時忽略隱藏層的激活函數(shù),到這里為止,也就是樸素的RNN的前向傳導(dǎo)算法.
這里關(guān)于BP算法的推導(dǎo)過程就忽略了把.

若干變種

從架構(gòu)設(shè)計到應(yīng)用開發(fā),關(guān)于 RNN 的文獻(xiàn)已經(jīng)有大量的論文發(fā)表, 比較重要的研究成果如下圖.


RNN研究歷史

這里我挑選幾種最常見的變種進(jìn)行回顧.

LSTM

LSTM全稱是Long Short Term Memory, 長短期記憶網(wǎng)絡(luò).對于普通的RNN, 由于在傳播過程中的信息丟失, 對于較長序列,在序列尾部就將頭部信息基本上拋棄了, 基于這個問題, LSTM 在1997年由“Hochreiter & Schmidhuber”提出蕊温,目前已經(jīng)成為 RNN 中的標(biāo)準(zhǔn)形式,用來解決上面提到的 RNN 模型存在“長期依賴”的問題蝌麸。廢話少說先上圖


LSTM結(jié)構(gòu)圖

LSTM通過三種"門"結(jié)構(gòu)來控制不同時刻的狀態(tài)以及輸出,當(dāng)我第一次看到上面這個圖以及門結(jié)構(gòu)的時候,我覺得他跟我本科學(xué)的電氣里的某類原件有點像, 比如說下面這個IGBT管子.


IGBT

這個管子的原理我已經(jīng)忘的一干二凈了,不知道LSTM跟這些個玩意是不是有一定聯(lián)系.不過簡單地來說, 這種管子里都有類似于二極管的導(dǎo)電特性,就是下面這個圖.這個圖形的大致內(nèi)容是,當(dāng)電壓低于VBR時完全不導(dǎo)電,在VR到VF之間時緩慢上升,電壓超過VF時電流迅速增大,就像沒有電阻一樣.
sigmoid函數(shù)

這個圖形的性質(zhì)其實是有點像sigmoid函數(shù)的, 而LSTM中的門其實都是通過sigmoid去實現(xiàn)的,所以門的特性也表現(xiàn)為高通低阻, 也就是超過某一數(shù)值時保留上文信息,而低于某一數(shù)值時就丟棄.這塊只是個人的一些理解,有點扯遠(yuǎn)了,希望有誰懂的話指出一下.

發(fā)光二極管特性
  1. 遺忘門
    shit,簡書點了保存又沒保存,重來了.
    遺忘門的作用是決定上一時刻的信息C在當(dāng)前時刻是否保留,而LSTM之所以叫長短期記憶網(wǎng)絡(luò),是因為,在下面的圖里,C代表了長期記憶,而上一時刻的隱藏層信息h代表短期記憶.
    從圖中可以看出來,相對于樸素的RNN, LSTM多了一個狀態(tài)C. 這個隱藏狀態(tài)通常成為細(xì)胞狀態(tài)(Cell State).


    遺忘門

    此處當(dāng)前時刻的輸入x_t的作用是根據(jù)輸入的新信息決定忘記哪些歷史信息.

  2. 輸入門
    作用是處理當(dāng)前時刻的輸入信息,確定哪些信息會被保存到細(xì)胞狀態(tài)中.輸入門通常包含兩部分,其中sigmoid決定更新哪些信息, tanh輸出更新信息的值,二者結(jié)合更新到細(xì)胞狀態(tài)里.結(jié)構(gòu)圖如下:


    輸入門
  3. 輸出門
    輸出門的作用是在計算完細(xì)胞狀態(tài)后,進(jìn)行結(jié)果的輸出,子結(jié)構(gòu)如下


    輸出門

    從圖中可以看出拔第,隱藏狀態(tài) ht 的更新由兩部分組成咕村,輸出門依然是由歷史信息 ht-1 和新的信息 xt 來決定的.

GRU

GRU即Gated Recurrent Unit,是針對LSTM的一種變種,主要在于簡化了模型,原本的三個門變成了兩個門,即更新門與重置門.其中更新門用于控制上一時刻狀態(tài)信息帶入當(dāng)前時刻的比例,重置門用于控制忽略上一時刻的狀態(tài)信息的程度.


GRU結(jié)構(gòu)

從圖中容易看到,GRU將LSTM中的細(xì)胞狀態(tài)與隱藏層信息合成了一個單一的隱藏層輸出.

Bi-LSTM

全稱是Bi-directional LSTM,也就是雙向LSTM網(wǎng)絡(luò), 其特點就是將前向與后向的LSTM相結(jié)合,那么既能考慮上文信息,又能考慮下文信息, 這就是它相對于LSTM的優(yōu)勢所在.
雙向卷積神經(jīng)網(wǎng)絡(luò)的隱藏層要保存兩個值, A 參與正向計算蚊俺, A' 參與反向計算懈涛。如圖


Bi-LSTM

干脆再偷一下計算過程把.


Bi-LSTM計算

在某些需要考慮上下文信息的任務(wù)中, Bi-LSTM 的表現(xiàn)要比LSTM好,比如情感分析與實體抽取,但是代價就是其計算復(fù)雜度明顯要比LSTM還高.

此外還有一些其他的變種,例如GRU的變種SRU, BRNN等, 平時用不上就忽略了.
之前寫的沒保存上,任性點不寫了.

參考文獻(xiàn)

[1]黃成甲.數(shù)據(jù)分析之時間序列分析[EB/OL].http://www.reibang.com/p/ff6abad2514f,2018-09-03.
[2]機(jī)器之心.從90年代的SRNN開始,縱覽循環(huán)神經(jīng)網(wǎng)絡(luò)27年的研究進(jìn)展[EB/OL].https://zhuanlan.zhihu.com/p/32668465,2018-01-05.
[3]不會停的蝸牛.雙向 LSTM[EB/OL].http://www.reibang.com/p/471bdbd0170d,2017-08-11.
[4]lreaderl.GRU與LSTM總結(jié)[EB/OL].https://blog.csdn.net/lreaderl/article/details/78022724,2017-09-18.
[5]李航.統(tǒng)計學(xué)習(xí)方法[M].清華大學(xué)出版社,2012.

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末泳猬,一起剝皮案震驚了整個濱河市批钠,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌暂殖,老刑警劉巖价匠,帶你破解...
    沈念sama閱讀 218,941評論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異呛每,居然都是意外死亡踩窖,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,397評論 3 395
  • 文/潘曉璐 我一進(jìn)店門晨横,熙熙樓的掌柜王于貴愁眉苦臉地迎上來洋腮,“玉大人,你說我怎么就攤上這事手形∩豆” “怎么了?”我有些...
    開封第一講書人閱讀 165,345評論 0 356
  • 文/不壞的土叔 我叫張陵库糠,是天一觀的道長伙狐。 經(jīng)常有香客問我,道長瞬欧,這世上最難降的妖魔是什么贷屎? 我笑而不...
    開封第一講書人閱讀 58,851評論 1 295
  • 正文 為了忘掉前任,我火速辦了婚禮艘虎,結(jié)果婚禮上唉侄,老公的妹妹穿的比我還像新娘。我一直安慰自己野建,他們只是感情好属划,可當(dāng)我...
    茶點故事閱讀 67,868評論 6 392
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著候生,像睡著了一般同眯。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上唯鸭,一...
    開封第一講書人閱讀 51,688評論 1 305
  • 那天嗽测,我揣著相機(jī)與錄音,去河邊找鬼。 笑死唠粥,一個胖子當(dāng)著我的面吹牛疏魏,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播晤愧,決...
    沈念sama閱讀 40,414評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼大莫,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了官份?” 一聲冷哼從身側(cè)響起只厘,我...
    開封第一講書人閱讀 39,319評論 0 276
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎舅巷,沒想到半個月后羔味,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,775評論 1 315
  • 正文 獨居荒郊野嶺守林人離奇死亡钠右,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,945評論 3 336
  • 正文 我和宋清朗相戀三年赋元,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片飒房。...
    茶點故事閱讀 40,096評論 1 350
  • 序言:一個原本活蹦亂跳的男人離奇死亡搁凸,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出狠毯,到底是詐尸還是另有隱情护糖,我是刑警寧澤,帶...
    沈念sama閱讀 35,789評論 5 346
  • 正文 年R本政府宣布嚼松,位于F島的核電站嫡良,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏献酗。R本人自食惡果不足惜寝受,卻給世界環(huán)境...
    茶點故事閱讀 41,437評論 3 331
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望凌摄。 院中可真熱鬧羡蛾,春花似錦漓帅、人聲如沸锨亏。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,993評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽器予。三九已至,卻和暖如春捐迫,著一層夾襖步出監(jiān)牢的瞬間乾翔,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,107評論 1 271
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點兒被人妖公主榨干…… 1. 我叫王不留反浓,地道東北人萌丈。 一個月前我還...
    沈念sama閱讀 48,308評論 3 372
  • 正文 我出身青樓,卻偏偏與公主長得像雷则,于是被迫代替她去往敵國和親辆雾。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 45,037評論 2 355

推薦閱讀更多精彩內(nèi)容