中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

大數據中梯度消失與梯度膨脹以及6種解決措施分別是什么

發布時間:2021-12-06 11:34:27 來源:億速云 閱讀:142 作者:柒染 欄目:大數據

大數據中梯度消失與梯度膨脹以及6種解決措施分別是什么,相信很多沒有經驗的人對此束手無策,為此本文總結了問題出現的原因和解決方法,通過這篇文章希望你能解決這個問題。

1.梯度消失

根據鏈式法則,如果每一層神經元對上一層的輸出的偏導乘上權重結果都小于1的話,那么即使這個結果是0.99,在經過足夠多層傳播之后,誤差對輸入層的偏導會趨于0。

這種情況會導致靠近輸入層的隱含層神經元調整極小。

 
2.梯度膨脹

根據鏈式法則,如果每一層神經元對上一層的輸出的偏導乘上權重結果都大于1的話,在經過足夠多層傳播之后,誤差對輸入層的偏導會趨于無窮大。

這種情況又會導致靠近輸入層的隱含層神經元調整變動極大。

 
3. 梯度消失和梯度膨脹的解決方案

本文提供6種常見的解決梯度消失和膨脹的方法,歡迎閱讀學習。

 
3.1 預訓練加微調

此方法來自Hinton在2006年發表的一篇論文,Hinton為了解決梯度的問題,提出采取無監督逐層訓練方法,其基本思想是每次訓練一層隱節點,訓練時將上一層隱節點的輸出作為輸入,而本層隱節點的輸出作為下一層隱節點的輸入,此過程就是逐層“預訓練”(pre-training);在預訓練完成后,再對整個網絡進行“微調”(fine-tunning)。

Hinton在訓練深度信念網絡(Deep Belief Networks)中,使用了這個方法,在各層預訓練完成后,再利用BP算法對整個網絡進行訓練。此思想相當于是先尋找局部最優,然后整合起來尋找全局最優,此方法有一定的好處,但是目前應用的不是很多了。

 
3.2 梯度剪切、正則

梯度剪切這個方案主要是針對梯度爆炸提出的,其思想是設置一個梯度剪切閾值,然后更新梯度的時候,如果梯度超過這個閾值,那么就將其強制限制在這個范圍之內,通過這種直接的方法就可以防止梯度爆炸。

注:在WGAN中也有梯度剪切限制操作,但是和這個是不一樣的,WGAN限制梯度更新信息是為了保證lipchitz條件。

關于WGAN(Wasserstein GAN) 的介紹

We introduce a new algorithm named WGAN, an alternative to traditional GAN training. In this new model, we show that we can improve the stability of learning, get rid of problems like mode collapse, and provide meaningful learning curves useful for debugging and hyperparameter searches. Furthermore, we show that the corresponding optimization problem is sound, and provide extensive theoretical work highlighting the deep connections to other distances between distributions.

另外一種解決梯度爆炸的手段是采用權重正則化(weithts regularization)比較常見的是l1正則,和l2正則,在各個深度框架中都有相應的API可以使用正則化,比如在tensorflow中,搭建網絡的時候已經設置了正則化參數,則調用以下代碼可以直接計算出正則損失:

regularization_loss = tf.add_n(tf.losses.get_regularization_losses(scope='my_resnet_50'))
 

如果沒有設置初始化參數,也可以使用以下代碼計算l2 正則損失:

l2_loss = tf.add_n([tf.nn.l2_loss(var) for var in tf.trainable_variables() if 'weights' in var.name])
 

正則化是通過對網絡權重做正則限制過擬合,仔細看正則項在損失函數的形式:

大數據中梯度消失與梯度膨脹以及6種解決措施分別是什么

其中,α 是指正則項系數,因此,如果發生梯度爆炸,權值的范數就會變的非常大,通過正則化項,可以部分限制梯度爆炸的發生。

注:事實上,在深度神經網絡中,往往是梯度消失出現的更多一些。

 
3.3 relu、leakrelu、elu等激活函數

Relu:思想也很簡單,如果激活函數的導數為1,那么就不存在梯度消失爆炸的問題了,每層的網絡都可以得到相同的更新速度,relu就這樣應運而生。

Relu的主要貢獻在于:

  1. 解決了梯度消失、爆炸的問題

  2. 計算方便,計算速度快

  3. 加速了網絡的訓練

同時也存在一些缺點:

  1. 由于負數部分恒為0,會導致一些神經元無法激活(可通過設置小學習率部分解決)

  2. 輸出不是以0為中心的



leakrelu就是為了解決relu的0區間帶來的影響,其數學表達為:leakrelu=max(k?x,x) 


其中k是leak系數,一般選擇0.01或者0.02,或者通過學習而來。leakrelu解決了0區間帶來的影響,而且包含了relu的所有優點

3.4 batchnorm

Batchnorm是深度學習發展以來提出的最重要的成果之一了,目前已經被廣泛的應用到了各大網絡中,具有加速網絡收斂速度,提升訓練穩定性的效果,Batchnorm本質上是解決反向傳播過程中的梯度問題。

batchnorm全名是batch normalization,簡稱BN,

通過規范化操作將輸出x規范化以此來保證網絡的穩定性。

batchnorm就是通過對每一層的輸出規范為均值和方差一致的方法,消除了w帶來的放大縮小的影響,進而解決梯度消失和爆炸的問題。


詳情可參考文章:


http://blog.csdn.net/qq_25737169/article/details/79048516


3.5 殘差結構

事實上,就是殘差網絡的出現導致了image net比賽的終結,自從殘差提出后,幾乎所有的深度網絡都離不開殘差的身影,相比較之前的幾層,幾十層的深度網絡,在殘差網絡面前都不值一提,殘差可以很輕松的構建幾百層,一千多層的網絡而不用擔心梯度消失過快的問題,原因就在于殘差的捷徑(shortcut)部分。

殘差結構說起殘差的話,不得不提這篇論文了:

Deep Residual Learning for Image Recognition

3.6 LSTM

LSTM全稱是長短期記憶網絡(long-short term memory networks),是不那么容易發生梯度消失的,主要原因在于LSTM內部復雜的“門”(gates),LSTM通過它內部的“門”可以接下來更新的時候“記住”前幾次訓練的”殘留記憶“,因此,經常用于生成文本中。

看完上述內容,你們掌握大數據中梯度消失與梯度膨脹以及6種解決措施分別是什么的方法了嗎?如果還想學到更多技能或想了解更多相關內容,歡迎關注億速云行業資訊頻道,感謝各位的閱讀!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

雅江县| 江安县| 富顺县| 衢州市| 赤壁市| 开江县| 马公市| 阿拉尔市| 景东| 文化| 台山市| 灌阳县| 正安县| 濉溪县| 顺义区| 会泽县| 安溪县| 新绛县| 恩施市| 西宁市| 武川县| 中山市| 舟曲县| 固镇县| 恩施市| 夏津县| 广饶县| 渝北区| 常德市| 平邑县| 临沭县| 漠河县| 定州市| 若羌县| 文昌市| 合阳县| 高要市| 延吉市| 菏泽市| 志丹县| 宁化县|