十大學習率衰減策略!
簡 介
目前越來越多非結構化問題的出現(xiàn),神經(jīng)網(wǎng)絡也扮演著愈加重要的作用。一個好的神經(jīng)網(wǎng)絡對于最終任務的預測至關重要,但要得到一個好的神經(jīng)網(wǎng)絡則需要考慮眾多的因素,本文我們重點介紹神經(jīng)網(wǎng)絡中調參重學習率衰減的調節(jié)策略。本文介紹目前tensorflow中的9大學習率衰減策略。
exponential_decay = learning_rate_decay.exponential_decay
piecewise_constant = learning_rate_decay.piecewise_constant
polynomial_decay = learning_rate_decay.polynomial_decay
natural_exp_decay = learning_rate_decay.natural_exp_decay
inverse_time_decay = learning_rate_decay.inverse_time_decay
cosine_decay = learning_rate_decay.cosine_decay
cosine_decay_restarts = learning_rate_decay.cosine_decay_restarts
linear_cosine_decay = learning_rate_decay.linear_cosine_decay
noisy_linear_cosine_decay = learning_rate_decay.noisy_linear_cosine_decay
學習率衰減
01
分段常數(shù)衰減
在對應區(qū)間置中不同的學習率的常數(shù)值,一般初始學習率會大一些,后面越來越小,要根據(jù)樣本量的大小設置區(qū)間的間隔大小,樣本量越大,區(qū)間間隔要小一點。在真正的網(wǎng)絡訓練中,需要操作人員根據(jù)具體任務對學習率具體設置
該方法有助于針對不同任務進行精細地調參,在任意步長后下降任意數(shù)值的learning rate。
02
指數(shù)衰減
指數(shù)衰減的方式,學習率的大小和訓練次數(shù)指數(shù)相關,指數(shù)衰減簡單直接,收斂速度快,是最常用的學習率衰減方式,其數(shù)學公式為:
如下圖所示,紅色的為學習率隨訓練次數(shù)的指數(shù)衰減方式,藍色的即為分段常數(shù)衰減 。
03
自然指數(shù)衰減
自然指數(shù)衰減和指數(shù)衰減方式相似,不同的在于它的衰減底數(shù)是,所以它的收斂的速度更快,一般用于相對比較容易訓練的網(wǎng)絡,便于較快的收斂,其更新公式為:
和分段常數(shù)以及指數(shù)衰減相比,其中綠色的是自然指數(shù)衰減。
04
多項式衰減
多項式衰減的方式進行更新學習率,需要給定初始學習率和最低學習率,然后按照給定的衰減方式將學習率從初始值衰減到最低值,其更新規(guī)則即為:
此處需要注意有兩個機制:
降到最低學習率后,到訓練結束可以一直使用最低學習率進行更新;
另一個是再次將學習率調高,使用decay_steps的倍數(shù),取第一個大于global_steps的結果,即:
可以用它來防止神經(jīng)網(wǎng)絡在訓練的后期由于學習率過小而導致的網(wǎng)絡一直在某個局部最小值附近震蕩,在后期增大學習率跳出局部極小值。
05
倒數(shù)衰減
倒數(shù)衰減的數(shù)學公式為:
06
余弦衰減
顧名思義,就是采用余弦方式進行學習率的衰減。其更新機制如下:
其中alpha可以看作是baseline,保證學習率不會低于某個值。不同alpha的影響如下:
07
循環(huán)學習率衰減
學習率以循環(huán)周期進行衰減。是循環(huán)學習率的cycle版本。
余弦函數(shù)式的下降模擬了大lr找潛力區(qū)域然后小lr快速收斂的過程,加之restart帶來的cycle效果,有漲1-2個點的可能。
08
線性余弦衰減
線性余弦衰減方式是基于余弦方式的衰減策略,其數(shù)學公式為:
線性余弦衰減一般應用領域是增強學習領域,
09
噪聲線性余弦衰減
在線性余弦衰減的基礎上,加入了噪聲。就得到了噪聲線性余弦衰減。噪聲線性余弦衰減提升了學習率尋找最優(yōu)值的隨機性和可能性。
0110
自定義學習率
大家還可以依據(jù)自己的想法自定義學習率衰減策略,例如可以依據(jù)驗證集合的表現(xiàn),來更新學習率,如果驗證集合上評估指標在不斷變好,則保持lr,否則降低學習率。
參考文獻
tensorflow learning schedule之分段常數(shù)衰減用法
An Overview of Deep Learning Optimization Methods and Learning Rate Attenuation Methods
Tensorflow中l(wèi)earning rate decay的奇技淫巧
TensorFlow使用記錄 (三):Learning Rate Scheduling
深度學習中的固定學習率衰減策略總結
https://github.com/tensorflow/tensorflow/blob/master/tensorflow/python/training/learning_rate_decay.py
編輯:jq
-
噪聲
+關注
關注
13文章
1140瀏覽量
48133 -
神經(jīng)網(wǎng)絡
+關注
關注
42文章
4814瀏覽量
103581 -
函數(shù)
+關注
關注
3文章
4380瀏覽量
64850
原文標題:神經(jīng)網(wǎng)絡十大學習率衰減提效策略!
文章出處:【微信號:zenRRan,微信公眾號:深度學習自然語言處理】歡迎添加關注!文章轉載請注明出處。
發(fā)布評論請先 登錄
BP神經(jīng)網(wǎng)絡的調參技巧與建議
BP神經(jīng)網(wǎng)絡與卷積神經(jīng)網(wǎng)絡的比較
如何優(yōu)化BP神經(jīng)網(wǎng)絡的學習率
BP神經(jīng)網(wǎng)絡的實現(xiàn)步驟詳解
BP神經(jīng)網(wǎng)絡的優(yōu)缺點分析
什么是BP神經(jīng)網(wǎng)絡的反向傳播算法
BP神經(jīng)網(wǎng)絡與深度學習的關系
深度學習入門:簡單神經(jīng)網(wǎng)絡的構建與實現(xiàn)
人工神經(jīng)網(wǎng)絡的原理和多種神經(jīng)網(wǎng)絡架構方法

卷積神經(jīng)網(wǎng)絡與傳統(tǒng)神經(jīng)網(wǎng)絡的比較
深度學習中的卷積神經(jīng)網(wǎng)絡模型
RNN模型與傳統(tǒng)神經(jīng)網(wǎng)絡的區(qū)別
LSTM神經(jīng)網(wǎng)絡的基本原理 如何實現(xiàn)LSTM神經(jīng)網(wǎng)絡
Moku人工神經(jīng)網(wǎng)絡101

評論