第三次打卡-2020-02-16

學(xué)習(xí)筆記

一、循環(huán)神經(jīng)網(wǎng)絡(luò)

LSTM

長短期記憶(Long short-term memory, LSTM)是一種特殊的RNN,主要是為了解決長序列訓(xùn)練過程中的梯度消失和梯度爆炸問題。簡單來說,就是相比普通的RNN,LSTM能夠在更長的序列中有更好的表現(xiàn)。通過門控狀態(tài)來控制傳輸狀態(tài),記住需要長時(shí)間記憶的,忘記不重要的信息,對很多需要“長期記憶”的任務(wù)來說,尤其好用。

image.png

其中:
遺忘門:控制上一時(shí)間步的記憶細(xì)胞 輸入門:控制當(dāng)前時(shí)間步的輸入
輸出門:控制從記憶細(xì)胞到隱藏狀態(tài)
記憶細(xì)胞:?種特殊的隱藏狀態(tài)的信息的流動

GNU

GRU(Gate Recurrent Unit)是循環(huán)神經(jīng)網(wǎng)絡(luò)(Recurrent Neural Network, RNN)的一種。和LSTM(Long-Short Term Memory)一樣,也是為了解決長期記憶和反向傳播中的梯度等問題而提出來的。相比LSTM,使用GRU能夠達(dá)到相當(dāng)?shù)男Ч?,并且相比之下更容易進(jìn)行訓(xùn)練,能夠很大程度上提高訓(xùn)練效率,因此很多時(shí)候會更傾向于使用GRU。


image.png

其中:
重置門有助于捕捉時(shí)間序列里短期的依賴關(guān)系;
更新門有助于捕捉時(shí)間序列里長期的依賴關(guān)系。

深度循環(huán)神經(jīng)網(wǎng)絡(luò)和雙向循環(huán)神經(jīng)網(wǎng)絡(luò)

1.深度循環(huán)神經(jīng)網(wǎng)絡(luò)不是越深越好,越深對于數(shù)據(jù)集要求更高;
2.雙向循環(huán)神經(jīng)網(wǎng)絡(luò)中兩者隱藏狀態(tài)H的連接是1維連接,也就是concat中參數(shù)dim=1,最后1維的維度變?yōu)閮烧?維維度之和。

二、梯度消失和梯度爆炸

梯度消失和梯度爆炸

tanh、sigmoid等存在飽和的激活函數(shù)會出現(xiàn)梯度消失
深度模型有關(guān)數(shù)值穩(wěn)定性的典型問題是梯度消失和梯度爆炸。當(dāng)神經(jīng)網(wǎng)絡(luò)的層數(shù)較多時(shí),模型的數(shù)值穩(wěn)定性更容易變差。
    層數(shù)較多時(shí),梯度的計(jì)算也容易出現(xiàn)消失或爆炸。
  隨機(jī)初始化模型參數(shù):
    在神經(jīng)網(wǎng)絡(luò)中,需要隨機(jī)初始化參數(shù)。因?yàn)椋窠?jīng)網(wǎng)絡(luò)模型在層之間各個(gè)單元具有對稱性。否則會出錯(cuò)。
    若將每個(gè)隱藏單元參數(shù)都初始化為相等的值,則在正向傳播時(shí)每個(gè)隱藏單元將根據(jù)相同的輸入計(jì)算出相同的值,并傳遞至輸出層。在反向傳播中,每個(gè)隱藏單元的參數(shù)梯度相等。因此,這些參數(shù)在使用基于梯度的優(yōu)化算法迭代后值依然相等。之后的迭代亦是如此。 據(jù)此,無論隱藏單元有幾個(gè),隱藏層本質(zhì)上只有一個(gè)隱藏單元在發(fā)揮作用。所以,通常將神經(jīng)網(wǎng)絡(luò)的模型參數(shù),進(jìn)行隨機(jī)初始化以避免上述問題。
例如:PyTorch的默認(rèn)隨機(jī)初始化、Xavier隨機(jī)初始化。

環(huán)境因素

  • 協(xié)變量偏移:

    輸入分布 P(x)改變,條件分布 P(y∣x)不改變

    如貓和狗中,訓(xùn)練數(shù)據(jù)使用的是貓和狗的真實(shí)的照片,但是在測試時(shí),我們被要求對貓和狗的卡通圖片進(jìn)行分類。這就是輸入特征發(fā)生了變化
  • 標(biāo)簽偏移:

    標(biāo)簽P(y)上的邊緣分布的變化,但類條件分布P(x∣y)是不變的

    如訓(xùn)練數(shù)據(jù)集,數(shù)據(jù)很少只包含流感p(y)的樣本。 而測試數(shù)據(jù)集有流感p(y)和流感q(y),其中不變的是流感癥狀p(x|y)。
  • 概念偏移:

    條件分布 P(y∣x)發(fā)生了變化

    如在建立一個(gè)機(jī)器翻譯系統(tǒng)中,分布P(y∣x)可能因我們的位置的不同而發(fā)生變化。

三、過擬合和欠擬合

一類是模型無法得到較低的訓(xùn)練誤差,我們將這一現(xiàn)象稱作欠擬合(underfitting);
另一類是模型的訓(xùn)練誤差遠(yuǎn)小于它在測試數(shù)據(jù)集上的誤差,我們稱該現(xiàn)象為過擬合(overfitting)。 在實(shí)踐中,我們要盡可能同時(shí)應(yīng)對欠擬合和過擬合。雖然有很多因素可能導(dǎo)致這兩種擬合問題,在這里我們重點(diǎn)討論兩個(gè)因素:模型復(fù)雜度和訓(xùn)練數(shù)據(jù)集大小。
解決方法:
1.盡量大一點(diǎn)的訓(xùn)練集;
2.正則化懲罰項(xiàng)(權(quán)重衰減)減少過擬合:L_2 范數(shù)正則化等
3.丟棄法減少系數(shù),但在測試模型時(shí),我們?yōu)榱四玫礁哟_定性的結(jié)果,一般不使用丟棄法。
4.留出法和交叉驗(yàn)證法處理數(shù)據(jù)集(oob)。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容