lstm原理 長短期記憶網路LSTM

2021-10-11 14:51:22 字數 2184 閱讀 2291

上兩小節我們主要講述了迴圈神經網路rnn,但是儘管 rnn 被設計成可以利用歷史的資訊來**當前的決策,例如使用之前出現的單詞來加強對當前單詞的理解,但是**rnn決策的主要還是最後輸入的一些訊號,更早之前的訊號會隨著時間的推遲而變得強度越來越低,它對後續的影響越來越弱。這樣就會給rnn帶來了新的技術挑戰一一長期依賴(long-term dependencies) 問題。

當遇到一些上下文資訊場景更加複雜的情況時,比如當模型試著去**「here for several days of rain, so the air is very fresh」中最後乙個單詞「fresh」時,我們可以憑直觀感覺填寫出「fresh"或「good」等,但 rnn 模型僅僅根據短期依賴就無法很好地解決這種問題。因為根據「very」,模型判斷出最後乙個單詞是形容詞,根據「air」,模型判斷出這個形容詞要去形容「air」,但如果模型需要**清楚具體用什麼形容詞去形容 「air」,就需要考慮先前提到的但離當前位置較遠的上下文資訊,在這句話中就是上半句中的「rain」以及修飾「rain」的相關單詞。

隨著長短期記憶網路( longsort term memory, lstm)的發明,長期依賴的問題得到解決,也是迴圈神經網路中的一種。lstm的簡介

lstm 的主要思想是:門控單元以及線性連線的引入

1)門控單元:有選擇性的儲存和輸出歷史資訊

2)線性連線:如下圖中的水平線可以看作是 lstm 的「主幹道」,通過加法,ct−1可以無障礙的在這條主幹道上傳遞,因此 lstm可以更好地捕捉時序資料中間隔較大的依賴關係。

下圖為乙個lstm,共有三個神經元。

下面我們介紹下lstm的神經元內部結構以及工作原理。

lstm的關鍵是細胞狀態,細胞狀態可以無障礙的在這條主幹道上傳遞。

細胞的狀態類似於輸送帶,細胞的狀態在整個鏈上執行,它只會進行少量的線性百年換,資訊很容易保持不變的流過整個鏈。

lstm具有遺忘或記憶資訊到細胞狀態的能力,這個能力是由被稱為門(gate)的結構所賦予的,這個門的作用是讓資訊有多少量需要被記住。

在我們 lstm 中的第一步是決定我們會從細胞狀態中丟棄什麼資訊。這個決定通過乙個稱為忘記門層完成。該門會讀取h_和x_t,輸出乙個在 0 到 1 之間的數值。1 表示上個神經元的狀態資訊「完全保留」,0 表示「完全捨棄」。

下一步是確定該神經元的新狀態資訊被存放在細胞狀態中。這裡包含兩個部分。第一,sigmoid 層稱 「輸入門層」 決定什麼值我們將要把新狀態的資訊保留下來。然後,乙個 tanh 層建立乙個新的該神經元的新狀態。

現在是更新舊細胞狀態的時間了,c_更新為c_t。前面的步驟已經決定了將會做什麼,我們現在就是實際去完成。

我們把舊狀態與f_t相乘,丟棄掉我們確定需要丟棄的資訊。接著與新狀態進行相加。綜合得出該神經元的輸出的狀態,也即更新細胞的狀態。

最終,我們需要確定輸出什麼值。這個輸出將會基於我們的細胞狀態,也是要經過選擇的。首先,我們經過乙個 sigmoid 層來確定細胞狀態的哪個部分將輸出出去。接著,我們把細胞狀態通過tanh 進行處理並將它和 sigmoid 門的輸出相乘,最終我們會輸出我們確定輸出的那部分。

總結:該節我們講述了rnn所不能解決的長期依賴問題以及引出了長短期記憶網路lstm,然後我們剖析了lstm的內部神經元結構以及其工作的原理。關注小鯨融創,一起深度學習金融科技!

長短期記憶網路 長短期記憶網路 LSTM 簡介

考慮這樣乙個場景,當我們在看乙個精彩的電影時,我們會被電影中的各個精彩情節所吸引,但是我們不能夠記住所有的電影情節。當觀影結束時,我們會立馬忘記電影裡面一些無關緊要的情節,留在我們腦海中的可能更多的是一些對劇情發展起關鍵作用的場景,這些場景可能在之後的很長一段時間後依然停留在我們的腦海中,以至於當我...

(十二)長短期記憶(LSTM)

1 介紹 長短期記憶修改了迴圈神經網路隱藏狀態的計算方式,並引入了與隱藏狀態形狀相同的記憶細胞 某些文獻把記憶細胞當成一種特殊的隱藏狀態 2 具體的設計 1 輸入門 遺忘門和輸出門it ftot x twxi ht 1whi bi xtwx f ht 1wh f bf xtw xo h t 1w h...

LSTM長短期記憶人工神經網路簡述

by yang liu 1.什麼是lstm 長短期記憶網路 lstm,long short term memory 是一種時間迴圈神經網路,是為了解決一般的rnn 迴圈神經網路 存在的長期依賴問題而專門設計出來的,屬於時間遞迴神經網路 rnn 中的一種。lstm適合於處理和 時間序列中間隔和延遲非常...