在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

LSTM的工作原理究竟是什么?深入了解LSTM

zhKF_jqr_AI ? 來源:未知 ? 作者:李倩 ? 2018-05-04 11:36 ? 次閱讀

長短期記憶(Long Short-Term Memory,LSTM)是一種時間遞歸神經(jīng)網(wǎng)絡(luò)(RNN),適合被用于處理和預(yù)測時間序列中間隔和延遲非常長的重要事件,經(jīng)多年實驗證實,它通常比RNN和HMM效果更好。那么LSTM的工作原理究竟是什么?為了講述這個概念,搬運(yùn)了chrisolah的一篇經(jīng)典文章,希望能給各位讀者帶來幫助。

遞歸神經(jīng)網(wǎng)絡(luò)

當(dāng)人類接觸新事物時,他們不會從頭開始思考。就像你在閱讀這篇文章時,你會根據(jù)以前的知識理解每個單詞,而不是舍棄一切,從字母開始重新學(xué)習(xí)。換句話說,你的思維有延續(xù)性。

神經(jīng)網(wǎng)絡(luò)的出現(xiàn)旨在賦予計算機(jī)人腦的機(jī)能,但在很長一段時間內(nèi),傳統(tǒng)的神經(jīng)網(wǎng)絡(luò)并不能模仿到這一點(diǎn)。而這似乎是個很嚴(yán)峻的缺點(diǎn),因為它意味著神經(jīng)網(wǎng)絡(luò)無法從當(dāng)前發(fā)生的事推斷之后將要發(fā)生的事,也就是無法分類電影中流暢發(fā)生的各個事件。

后來,遞歸神經(jīng)網(wǎng)絡(luò)(RNN)的出現(xiàn)解決了這個問題,通過在網(wǎng)絡(luò)中添加循環(huán),它能讓信息被“記憶”地更長久。

RNN有循環(huán)

上圖是一個大型神經(jīng)網(wǎng)絡(luò)A,輸入一些數(shù)據(jù)xt后,它會輸出最終值ht。循環(huán)允許信息從當(dāng)前步驟傳遞到下一個步驟。

這些循環(huán)使它看起來有些神秘。但如果仔細(xì)一想,你會發(fā)現(xiàn)其實它和普通的神經(jīng)網(wǎng)絡(luò)并沒有太大區(qū)別:一個RNN就相當(dāng)于是一個神經(jīng)網(wǎng)絡(luò)的多個副本,每個副本都會把自己收集到的信息傳遞給后繼者。如果我們把它展開,它是這樣的:

展開的RNN

這種鏈?zhǔn)叫再|(zhì)揭示了RNN和序列、列表之間的密切關(guān)系。從某種程度上來說,它就是專為這類數(shù)據(jù)設(shè)計的神經(jīng)網(wǎng)絡(luò)自然架構(gòu)。

實踐也證實,RNN確實有用!過去幾年里,它在各類任務(wù)中取得了令人難以置信的成功:語音識別、語言建模、機(jī)器翻譯、圖像字幕……應(yīng)用場景十分廣闊。幾年前,現(xiàn)任特斯拉AI總監(jiān)Andrej Karpathy寫了一篇名為The Unreasonable Effectiveness of Recurrent Neural Networks的博客,專門介紹了RNN“不合理”的適用性,有興趣的讀者可以前去一讀。

在文章中我們可以發(fā)現(xiàn),這種適用性的關(guān)鍵是“LSTM”的使用。這是一種非常特殊的RNN,所有能用RNN實現(xiàn)的東西,LSTM都能做,而且相較于普通版,它在許多任務(wù)中還會有更優(yōu)秀的表現(xiàn)。所以下文我們就來看看什么是LSTM。

長期依賴問題

RNN最具吸引力的一點(diǎn)是它能把之前的信息連接到當(dāng)前的任務(wù)上,比如我們可以用之前的視頻圖像理解這一幀的圖像。如果能建立起這種聯(lián)系,它的前途將不可限量。所以它真的能做到嗎?答案是:不一定。

有時候,我們只需要查看最近的信息就能執(zhí)行當(dāng)前任務(wù),如構(gòu)建一個能根據(jù)前一個詞預(yù)測下一個詞的語言模型。如果我們要預(yù)測“天空中漂浮著云朵,”這個句子的最后一個詞語,模型不需要任何進(jìn)一步的語義背景——很明顯,最后一個詞是“云朵”。在這種情況下,如果相關(guān)信息和目標(biāo)位置差距不大,RNN完全能學(xué)著去用以前的知識。

但有時我們也會希望模型能聯(lián)系下上文進(jìn)行理解,比如預(yù)測“我在法國長大......我會說流利的法語。”這句話的最后一個詞。最近的信息提示是這個詞很可能是一種語言的名稱,如果要精確到是哪種語言,我們就需要結(jié)合句子開頭的“法國”來理解。這時兩個相關(guān)信息之間間隔的距離就非常遠(yuǎn)。

不幸的是,隨著距離不斷拉大,RNN會逐漸難以學(xué)習(xí)其中的連接信息。

從理論上看,RNN絕對有能力去處理這種長期依賴性,我們可以不斷調(diào)參來解決各種玩具問題,但在實踐中,RNN卻徹頭徹尾地失敗了。關(guān)于這個問題,之前Hochreiter(1991)和Bengio等人(1994)已經(jīng)做了深入探討,此處不再贅述。

謝天謝地,LSTM沒有這些問題。

LSTM網(wǎng)絡(luò)

長期短期記憶網(wǎng)絡(luò)——通常被稱為“LSTM”——是一種特殊的RNN,能學(xué)習(xí)長期依賴性。它最早由Hochreiter&Schmidhuber于1997年提出,后經(jīng)眾多專家學(xué)者提煉和推廣,現(xiàn)在因性能出色已經(jīng)被廣泛使用。

LSTM的設(shè)計目的非常明確:避免長期依賴性問題。對LSTM來說,長時間“記住”信息是一種默認(rèn)的行為,而不是難以學(xué)習(xí)的東西。

之前我們提到了,RNN是一個包含大量重復(fù)神經(jīng)網(wǎng)絡(luò)模塊的鏈?zhǔn)叫问剑跇?biāo)準(zhǔn)RNN里,這些重復(fù)的神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)往往也非常簡單,比如只包含單個tanh層:

標(biāo)準(zhǔn)RNN中只包含單個tanh層的重復(fù)模塊

LSTM也有與之相似的鏈?zhǔn)浇Y(jié)構(gòu),但不同的是它的重復(fù)模塊結(jié)構(gòu)不同,是4個以特殊方式進(jìn)行交互的神經(jīng)網(wǎng)絡(luò)。

LSTM示意圖

這里我們先來看看圖中的這些符號:

在示意圖中,從某個節(jié)點(diǎn)的輸出到其他節(jié)點(diǎn)的輸入,每條線都傳遞一個完整的向量。粉色圓圈表示pointwise操作,如節(jié)點(diǎn)求和,而黃色框則表示用于學(xué)習(xí)的神經(jīng)網(wǎng)絡(luò)層。合并的兩條線表示連接,分開的兩條線表示信息被復(fù)制成兩個副本,并將傳遞到不同的位置。

LSTMs背后的核心理念

LSTMs的關(guān)鍵是cell的狀態(tài),即貫穿示意圖頂部的水平線。

cell狀態(tài)有點(diǎn)像傳送帶,它只用一些次要的線性交互就能貫穿整個鏈?zhǔn)浇Y(jié)構(gòu),這其實也就是信息記憶的地方,因此信息能很容易地以不變的形式從中流過。

為了增加/刪除cell中的信息,LSTM中有一些控制門(gate)。它們決定了信息通過的方式,包含一個sigmoid神經(jīng)網(wǎng)絡(luò)層和一個pointwise點(diǎn)乘操作。

sigmoid層輸出0到1之間的數(shù)字,點(diǎn)乘操作決定多少信息可以傳送過去,當(dāng)為0時,不傳送;當(dāng)為1時,全部傳送。

像這樣的控制門,LSTM共有3個,以此保護(hù)和控制cell狀態(tài)。

深入了解LSTM

我們先來看看cell該刪除哪些信息,做這個決定的是包含sigmoid層的遺忘門。對于輸入xt和ht-1,遺忘門會輸出一個值域為[0, 1]的數(shù)字,放進(jìn)細(xì)胞狀態(tài)Ct?1中。當(dāng)為0時,全部刪除;當(dāng)為1時,全部保留。

以之前預(yù)測下一個詞的語言模型為例,對于“天空中漂浮著云朵,”這個句子,LSTM的cell狀態(tài)會記住句子主語“云朵”的詞性,這之后才能判斷正確的代詞。等下次再遇到新主語時,cell會“忘記”“云朵”的詞性。

我們再來看看cell該如何增加新信息。這可以分為兩步,首先,LSTM會用一個包含sigmoid層的輸入門決定哪些信息該保留,其次,它會用一個tanh層為這些信息生成一個向量C~t,用來更新細(xì)胞狀態(tài)。

在語言模型例子中,如果句子變成了“天空中漂浮著云朵,草地上奔跑著駿馬”。那LSTM就會用“駿馬”的詞性代替正在被遺忘的“云朵”的詞性。

有了遺忘門和輸入門,現(xiàn)在我們就能把細(xì)胞狀態(tài)Ct?1更新為Ct了。如下圖所示,其中ft×Ct?1表示希望刪除的信息,it×Ct表示新增的信息。

最后就是決定LSTM輸出內(nèi)容的輸出門。它的信息基于cell狀態(tài),但還要經(jīng)過一定過濾。我們先用sigmoid層決定將要輸出的cell內(nèi)容,再用tanh層把cell狀態(tài)值推到-1和1之間,并將其乘以sigmoid層的輸出,以此做到只輸出想要輸出的部分。

LSTM的變體

以上介紹的是一個非常常規(guī)的LSTM,但在實踐中我們也會遇到很多很不一樣的神經(jīng)網(wǎng)絡(luò),因為一旦涉及使用,人們就會不可避免地要用到一些DIY版本。雖然它們差異不大,但其中有一部分值得一提。

2000年的時候,Gers&Schmidhuber提出了一種添加了“peephole connections”的LSTM變體。它意味著我們能在相應(yīng)控制門內(nèi)觀察cell狀態(tài)。下圖為每個門都添加了窺視孔,我們也可以只加一處或兩處。

第二種變體是耦合遺忘門和輸入門,讓一個模塊同時決定該增加/刪除什么信息。

第三種稍具戲劇化的變體是Cho等人于2014年提出的帶有GRU的LSTM。它把遺忘門和輸入門組合成一個“更新門”,合并了cell狀態(tài)和隱藏狀態(tài),并做了一些其他的修改。這個模型的優(yōu)點(diǎn)是更簡單,也更受歡迎。

以上只是幾個最知名的LSTM變體,還有很多其他的,比如Yao等人的Depth Gated RNN。此外一些人也一直在嘗試用完全不同的方法來解決長期依賴問題,比如Koutnik等人的Clockwork RNN。

小結(jié)

如果只是列一大堆數(shù)學(xué)公式,LSTM看起來會非常嚇人。因此為了讓讀者更容易理解掌握,本文制作了大量可視化圖片,它們也一直深受業(yè)內(nèi)人士認(rèn)可,在各類文章中被廣泛引用。

LSTM是完善RNN的重要內(nèi)容,雖然它到現(xiàn)在已經(jīng)成果累累,但我們以此為起點(diǎn),探索RNN身上的其他研究方向,如近兩年非常紅火的注意力機(jī)制(Attention Mechanism)、在GAN中使用RNN等。過去幾年對神經(jīng)網(wǎng)絡(luò)來說是激動人心的一段時光,相信未來會更加如此!

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 神經(jīng)網(wǎng)絡(luò)

    關(guān)注

    42

    文章

    4779

    瀏覽量

    101080
  • rnn
    rnn
    +關(guān)注

    關(guān)注

    0

    文章

    89

    瀏覽量

    6902

原文標(biāo)題:一文詳解LSTM網(wǎng)絡(luò)

文章出處:【微信號:jqr_AI,微信公眾號:論智】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關(guān)推薦

    圖解:IGBT究竟是什么?

    圖解:IGBT究竟是什么? IGBT究竟是什么?
    發(fā)表于 08-10 08:01

    什么是LSTM神經(jīng)網(wǎng)絡(luò)

    簡單理解LSTM神經(jīng)網(wǎng)絡(luò)
    發(fā)表于 01-28 07:16

    S參數(shù)究竟是什么?

    S參數(shù)究竟是什么?起決定性作用的S參數(shù)將S參數(shù)擴(kuò)展到多端口器件和差分器件
    發(fā)表于 03-01 11:46

    我們仿真DDR究竟是仿真什么

    我們仿真DDR究竟是仿真什么?
    發(fā)表于 03-04 07:32

    電感飽和究竟是什么

    電感飽和究竟是什么
    發(fā)表于 03-11 08:13

    真正軟件定義無線電究竟是怎樣的?

    真正軟件定義無線電究竟是怎樣的?
    發(fā)表于 05-14 06:47

    分貝究竟是什么?如何去理解它?

    分貝究竟是什么?如何去理解它?
    發(fā)表于 05-31 07:05

    一文讀懂eMMC究竟是啥?

    eMMC究竟是啥?eMMC長什么樣?eMMC用在哪?主要是干嘛用的?eMMC究竟是如何工作的呢?
    發(fā)表于 06-18 06:04

    spec究竟是什么?有誰可以分享一下嗎

    spec究竟是什么?哪位同行可以幫忙分享下DFI 5.0的spec?
    發(fā)表于 06-21 07:16

    無片外電容LDO究竟是什么?

    無片外電容LDO究竟是什么?有誰清楚嗎
    發(fā)表于 06-22 08:07

    retain,copy與assign究竟是有什么區(qū)別呢

    retain,copy與assign究竟是有什么區(qū)別呢?
    發(fā)表于 09-30 09:25

    S參數(shù)究竟是什么?

    S參數(shù)究竟是什么?
    發(fā)表于 11-01 08:24 ?2次下載
    S參數(shù)<b class='flag-5'>究竟是</b>什么?

    計算機(jī)究竟是如何理解并執(zhí)行我們所寫的代碼的呢?

    在編寫了大量代碼之后,不禁讓人思考,計算機(jī)究竟是如何理解并執(zhí)行我們所寫的代碼的呢?這個問題將引導(dǎo)我們深入了解計算機(jī)的內(nèi)部工作原理,從二進(jìn)制到邏輯電路,再到運(yùn)算器和控制器的協(xié)同工作,探究
    發(fā)表于 09-05 09:54 ?461次閱讀
    計算機(jī)<b class='flag-5'>究竟是</b>如何理解并執(zhí)行我們所寫的代碼的呢?

    LSTM神經(jīng)網(wǎng)絡(luò)在時間序列預(yù)測中的應(yīng)用

    LSTM是一種特殊的循環(huán)神經(jīng)網(wǎng)絡(luò)(RNN),它能夠?qū)W習(xí)長期依賴關(guān)系。與傳統(tǒng)的RNN相比,LSTM通過引入門控機(jī)制(輸入門、遺忘門、輸出門)來解決梯度消失和梯度爆炸的問題,使其能夠處理更長的序列數(shù)據(jù)。 LSTM
    的頭像 發(fā)表于 11-13 09:54 ?805次閱讀

    LSTM神經(jīng)網(wǎng)絡(luò)的結(jié)構(gòu)與工作機(jī)制

    的結(jié)構(gòu)與工作機(jī)制的介紹: 一、LSTM神經(jīng)網(wǎng)絡(luò)的結(jié)構(gòu) LSTM神經(jīng)網(wǎng)絡(luò)的結(jié)構(gòu)主要包括以下幾個部分: 記憶單元(Memory Cell) : 記憶單元是LSTM網(wǎng)絡(luò)的核心,負(fù)責(zé)在整個序列
    的頭像 發(fā)表于 11-13 10:05 ?563次閱讀
    主站蜘蛛池模板: 视频网站免费看 | 性色在线播放 | 亚洲www在线 | 狠狠丁香激情久久综合 | 深夜视频免费在线观看 | 色综合久久一区二区三区 | 婷婷丁香九月 | 天堂中文资源在线地址 | 爱爱免费| 亚洲视频 欧美视频 | 免费看成年视频网页 | 免费视频不卡 | 丁香六月综合激情 | 免费一级特黄a | 色综合亚洲天天综合网站 | 免费看h网站| 日本黄色三级视频 | 乱码精品一区二区三区 | 日日摸人人拍人人澡 | 国模人体一区二区三区 | 毛片在线播放网站 | 成人窝窝午夜看片 | 天天做天天爽爽快快 | 黄色三级视频在线观看 | 免费a级午夜绝情美女视频 免费jlzzjlzz在线播放视频 | 男女交性特一级 | www永久免费视频 | 999伊人| 亚洲视频一区二区三区 | 久久精品国产99国产精品免费看 | 夜夜爱夜夜操 | 国外免费精品视频在线观看 | 三浦理惠子中文在 | 亚洲国产欧美精品一区二区三区 | 污污的网站免费阅读 | www亚洲成人 | 在线免费视频一区二区 | 精品精品国产理论在线观看 | 久久在线播放 | 国产午夜a理论毛片在线影院 | 亚洲福利视频网站 |