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

評論