1. 程式人生 > >2.2.6 學習率衰減

2.2.6 學習率衰減

學習率衰減

加快神經網路的另一個辦法就是隨著時間推移慢慢減少學習率。我們將這個稱之為學習率衰減

這裡寫圖片描述

如圖中藍色線所示,當mini-batch不大的時候,噪聲會比較明顯。最後不會精確地收斂,而是在最小值附近不斷地波動。但是如果我們不斷減少學習率,最後情況就如同圖中綠線所示,最後會在最小值附近很小的一塊區域不斷波動,而不會在比較大的區域裡。

減小學習率的方法如下:

這裡寫圖片描述

我們需要在第一代的時候遍歷一遍資料,第一次遍歷整個資料集稱為第一代,第二次遍歷整個資料集稱為第二代。我們一般的計算公式是

α=11+decayrateepoc
hnumα0

其中decay-rate稱為衰減率,這個也是我們需要調整的超引數。從圖中我們可以看到,如果decay-rate的值是1,隨著epoch-num的數值不斷增加,學習率在不斷下降。

除了這個學習率衰減公式,還有別的衰減公式。
這裡寫圖片描述