學(xué)習(xí)率
學(xué)習(xí)率的作用
? 在機(jī)器學(xué)習(xí)中,監(jiān)督式學(xué)習(xí)通過定義一個(gè)模型,并根據(jù)訓(xùn)練集上的數(shù)據(jù)估計(jì)最優(yōu)參數(shù)。梯度下降法是一個(gè)廣泛被用來最小化模型誤差的參數(shù)優(yōu)化算法。梯度下降法通過多次迭代,并在每一步中最小化成本函數(shù)(cost 來估計(jì)模型的參數(shù)。學(xué)習(xí)率 (learning rate),在迭代過程中會(huì)控制模型的學(xué)習(xí)進(jìn)度。
? 在梯度下降法中,都是給定的統(tǒng)一的學(xué)習(xí)率,整個(gè)優(yōu)化過程中都以確定的步長(zhǎng)進(jìn)行更新, 在迭代優(yōu)化的前期中,學(xué)習(xí)率較大,則前進(jìn)的步長(zhǎng)就會(huì)較長(zhǎng),這時(shí)便能以較快的速度進(jìn)行梯度下降,而在迭代優(yōu)化的后期,逐步減小學(xué)習(xí)率的值,減小步長(zhǎng),這樣將有助于算法的收斂,更容易接近最優(yōu)解。故而如何對(duì)學(xué)習(xí)率的更新成為了研究者的關(guān)注點(diǎn)。
? 在模型優(yōu)化中,常用到的幾種學(xué)習(xí)率衰減方法有:分段常數(shù)衰減、多項(xiàng)式衰減、指數(shù)衰減、自然指數(shù)衰減、余弦衰減、線性余弦衰減、噪聲線性余弦衰減
學(xué)習(xí)率衰減常用參數(shù)有哪些
| 參數(shù)名稱 | 參數(shù)說明 |
|---|---|
| learning_rate | 初始學(xué)習(xí)率 |
| global_step | 用于衰減計(jì)算的全局步數(shù),非負(fù),用于逐步計(jì)算衰減指數(shù) |
| decay_steps | 衰減步數(shù),必須是正值,決定衰減周期 |
| decay_rate | 衰減率 |
| end_learning_rate | 最低的最終學(xué)習(xí)率 |
| cycle | 學(xué)習(xí)率下降后是否重新上升 |
| alpha | 最小學(xué)習(xí)率 |
| num_periods | 衰減余弦部分的周期數(shù) |
| initial_variance | 噪聲的初始方差 |
| variance_decay | 衰減噪聲的方差 |
分段常數(shù)衰減
? 分段常數(shù)衰減需要事先定義好的訓(xùn)練次數(shù)區(qū)間,在對(duì)應(yīng)區(qū)間置不同的學(xué)習(xí)率的常數(shù)值,一般情況剛開始的學(xué)習(xí)率要大一些,之后要越來越小,要根據(jù)樣本量的大小設(shè)置區(qū)間的間隔大小,樣本量越大,區(qū)間間隔要小一點(diǎn)。下圖即為分段常數(shù)衰減的學(xué)習(xí)率變化圖,橫坐標(biāo)代表訓(xùn)練次數(shù),縱坐標(biāo)代表學(xué)習(xí)率。
指數(shù)衰減
? 以指數(shù)衰減方式進(jìn)行學(xué)習(xí)率的更新,學(xué)習(xí)率的大小和訓(xùn)練次數(shù)指數(shù)相關(guān),其更新規(guī)則為:
? 這種衰減方式簡(jiǎn)單直接,收斂速度快,是最常用的學(xué)習(xí)率衰減方式,如下圖所示,綠色的為學(xué)習(xí)率隨
訓(xùn)練次數(shù)的指數(shù)衰減方式,紅色的即為分段常數(shù)衰減,它在一定的訓(xùn)練區(qū)間內(nèi)保持學(xué)習(xí)率不變。
自然指數(shù)衰減
? 它與指數(shù)衰減方式相似,不同的在于它的衰減底數(shù)是,故而其收斂的速度更快,一般用于相對(duì)比較
容易訓(xùn)練的網(wǎng)絡(luò),便于較快的收斂,其更新規(guī)則如下
? 下圖為為分段常數(shù)衰減、指數(shù)衰減、自然指數(shù)衰減三種方式的對(duì)比圖,紅色的即為分段常數(shù)衰減圖,階梯型曲線。藍(lán)色線為指數(shù)衰減圖,綠色即為自然指數(shù)衰減圖,很明可以看到自然指數(shù)衰減方式下的學(xué)習(xí)率衰減程度要大于一般指數(shù)衰減方式,有助于更快的收斂。
多項(xiàng)式衰減
? 應(yīng)用多項(xiàng)式衰減的方式進(jìn)行更新學(xué)習(xí)率,這里會(huì)給定初始學(xué)習(xí)率和最低學(xué)習(xí)率取值,然后將會(huì)按照
給定的衰減方式將學(xué)習(xí)率從初始值衰減到最低值,其更新規(guī)則如下式所示。
? 需要注意的是,有兩個(gè)機(jī)制,降到最低學(xué)習(xí)率后,到訓(xùn)練結(jié)束可以一直使用最低學(xué)習(xí)率進(jìn)行更新,另一個(gè)是再次將學(xué)習(xí)率調(diào)高,使用 decay_steps 的倍數(shù),取第一個(gè)大于 global_steps 的結(jié)果,如下式所示.它是用來防止神經(jīng)網(wǎng)絡(luò)在訓(xùn)練的后期由于學(xué)習(xí)率過小而導(dǎo)致的網(wǎng)絡(luò)一直在某個(gè)局部最小值附近震蕩,這樣可以通過在后期增大學(xué)習(xí)率跳出局部極小值。
? 如下圖所示,紅色線代表學(xué)習(xí)率降低至最低后,一直保持學(xué)習(xí)率不變進(jìn)行更新,綠色線代表學(xué)習(xí)率衰減到最低后,又會(huì)再次循環(huán)往復(fù)的升高降低。
余弦衰減
? 余弦衰減就是采用余弦的相關(guān)方式進(jìn)行學(xué)習(xí)率的衰減,衰減圖和余弦函數(shù)相似。其更新機(jī)制如下式所示:
? 如下圖所示,紅色即為標(biāo)準(zhǔn)的余弦衰減曲線,學(xué)習(xí)率從初始值下降到最低學(xué)習(xí)率后保持不變。藍(lán)色的線是線性余弦衰減方式曲線,它是學(xué)習(xí)率從初始學(xué)習(xí)率以線性的方式下降到最低學(xué)習(xí)率值。綠色噪聲線性余弦衰減方式。