最优化学习笔记(三)——梯度下降法
???? 本來這周計(jì)劃寫下邏輯回歸的學(xué)習(xí)筆記,但是其中用到了最優(yōu)化對數(shù)似然函數(shù),因此決定先復(fù)習(xí)下梯度方法和擬牛頓法。本節(jié)先從純數(shù)學(xué)的角度總結(jié)下梯度下降法。
一、柯西-施瓦茨不等式
對于 Rn中的任意兩個(gè)向量 x 和y, 有:
成立。當(dāng)且僅當(dāng)對于某個(gè) α∈Rn,有x=αy時(shí),該不等式的等號(hào)成立。
二、梯度下降法
???? 函數(shù) f:Rn→R水平集的概念。水平集是指能夠滿足f(x)=c的所有x組成的集合,其中c為常數(shù)。如下圖所示:
???? 如果函數(shù)f在x0處的梯度▽f(x0)不是零向量,那么它與水平集f(x)=c中任意一條經(jīng)過x0處的光滑曲線的切向量正交。在梯度方向上,自變量的細(xì)微變動(dòng),導(dǎo)致的目標(biāo)函數(shù)值的增加幅度要超過其他任意方向。證明如下:函數(shù) f在點(diǎn)x處,在方向d上的增長率為: <▽f(x),d>,||d||=1<script type="math/tex" id="MathJax-Element-50"><\triangledown f( \boldsymbol{x}), \boldsymbolze8trgl8bvbq>, ||\boldsymbolze8trgl8bvbq|| = \boldsymbol{1}</script>。由柯西-施瓦茨不等式得:
若令 d=▽f(x)||▽f(x)||,則有:
?▽f(x),▽f(x)||▽f(x)||?=||▽f(x)||
???? 因此,可以看出梯度方向 ▽f(x)就是函數(shù) f在x處增加最快的方向。反之,梯度負(fù)方向 ?▽f(x)就是函數(shù) f在x處減少最快的方向。
???? 令x(0)作為初始搜索點(diǎn),并沿著梯度負(fù)方向構(gòu)造一個(gè)新點(diǎn)x(0)?α▽f(x(0)),由泰勒定理可得:
因此,如果 ▽f(x(0))≠0, 那么當(dāng) α>0足夠小時(shí),有
f(x(0)?α▽f(x(0)))<f(x(0))
給定一個(gè)搜索點(diǎn) x(k),由此點(diǎn)出發(fā),根據(jù)向量 ?αk▽f(x(k)))指定的方向和幅度運(yùn)動(dòng),構(gòu)造一個(gè)新點(diǎn) x(k+1),αk>0,稱為步長,那么迭代公式如下:
x(k+1)=x(k)?αk▽f(x(k))
這稱為梯度下降方法。在搜索過程中,梯度不斷變化,當(dāng)接近極小點(diǎn)的時(shí)候梯度應(yīng)該趨于0.可以設(shè)置很小的步長,這時(shí)計(jì)算量比較大,每次梯度都要重新計(jì)算;也可以設(shè)置很大的步長,這樣,計(jì)算量會(huì)小一些,但是會(huì)在極小點(diǎn)附近產(chǎn)生鋸齒狀的收斂路徑。下面會(huì)繼續(xù)總結(jié)梯度下降法中的最速下降法。
總結(jié)
以上是生活随笔為你收集整理的最优化学习笔记(三)——梯度下降法的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: springcloud Hystrix
- 下一篇: STM32开发 -- 4G模块开发详解(