深度學(xué)習(xí)優(yōu)化算法(1)—— 優(yōu)化算法的基礎(chǔ)


偏導(dǎo)、方向?qū)?shù)和梯度

(1)偏導(dǎo):函數(shù)在坐標(biāo)軸方向上的變化率(一維方向)
設(shè)函數(shù)z = f(x,y)在點(diǎn)(x_0,y_0)的鄰域內(nèi)有定義,當(dāng)y = y_0時(shí),z可以看作是關(guān)于x的一元函數(shù)f(x,y_0),若該一元函數(shù)在x = x_0處可導(dǎo),即有
\lim_{\Delta x \rightarrow 0} \frac{f(x_0 + \Delta x , y_0) - f(x_0 , y_0)}{\Delta x} = A
函數(shù)的極限A存在,那么稱(chēng)A為函數(shù)z = f(x , y)在點(diǎn)(x_0 , y_0)處關(guān)于自變量x的偏導(dǎo)數(shù)
(2)方向?qū)?shù): 函數(shù)在某點(diǎn)沿某個(gè)特定方向的變化率
\frac{\partial f}{\partial l} = \lim_{\rho \rightarrow 0} \frac{f( x + \Delta x , y + \Delta y) - f( x , y )}{\rho}

圖片.png

(3)梯度:函數(shù)在該點(diǎn)沿所有方向變化率最大的那個(gè)方向(最大的方向?qū)?shù))


幾種梯度下降方法

(1)梯度下降(BGD):梯度下降使用整個(gè)訓(xùn)練數(shù)據(jù)集來(lái)計(jì)算梯度,因此有時(shí)被稱(chēng)為批量梯度下降(batch gradient descent)
(2)隨機(jī)梯度下降(SBGD):在每次迭代中只隨機(jī)采樣一個(gè)樣本來(lái)計(jì)算梯度(Stochastic Gradient Descent)
(3)小批量隨機(jī)梯度下降(MSGD):在每次迭代中隨機(jī)均勻采樣多個(gè)樣本來(lái)組成一個(gè)小批量,使用當(dāng)前小批量來(lái)計(jì)算梯度

梯度下降和隨機(jī)梯度下降


指數(shù)加權(quán)平均(幾個(gè)優(yōu)化算法的基礎(chǔ))

  • 指數(shù)加權(quán)平均的關(guān)鍵等式

v_t = \beta v_{t-1} + (1 - \beta)\theta_t
\text{number of average data}= \frac {1}{1 - \beta}

image.png

image.png

\beta = 0.9對(duì)應(yīng)圖中紅色的線(xiàn)(近十天的平均氣溫),\beta = 0.98對(duì)應(yīng)圖中綠色的線(xiàn)(近50天的平均氣溫),\beta的值越大,得到的曲線(xiàn)會(huì)更平滑(因?yàn)閷?duì)更多天數(shù)的溫度做了平均處理)

  • 指數(shù)滑動(dòng)平均的具體使用

v_0 = 0
v_1 = \beta v_0 + (1 - \beta)\theta_1
v_2 = \beta v_1 + (1 - \beta)\theta_2
……

image.png
  • 偏差修正(更精確的計(jì)算平均值)

針對(duì)上一部分中的公式,滑動(dòng)平均曲線(xiàn)的初始起點(diǎn)很低(v_1 = \beta v_0 + (1 - \beta)\theta_1;v_0 = 0使得等式右邊第一項(xiàng)為0),因此在估計(jì)運(yùn)算初期我們需要一種更好的方法去進(jìn)行估計(jì):
                 \frac{v_t}{1 - \beta t}代替 v_t

image.png


最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀(guān)點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容