梯度下降收敛性分析与证明
一:Lipschitz連續
定義:對于在實數集的子集的函數,若存在常數,使得,則稱函數符合利普希茨條件。
性質1:若函數在定義域內滿足Lipschitz連續,則有
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ??(1-1)? ? ? ? ? ? ? ? ??
二:梯度下降算法收斂性分析
在求解優化問題時,我們常用梯度下降算法對目標函數進行尋優,求得優化問題的最優解或近似最優解。而在面對不同性質的目標函數時,如凸函數、強凸函數和非凸函數,梯度下降算法的收斂性會發生何種變化,都是值得去思考的一個問題。
在此,我們首先討論第一種情況,在優化問題的目標函數為強凸函數,且滿足Lipschitz連續,采用梯度下降算法進行求解的算法收斂性分析如下:
若目標函數為強凸函數,且在定義域內Lipschitz連續。則有:
? Lipschitz連續性質:? ? ? ? ? ? ? ? ? ?? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? (2-1)
強凸函數性質? ? ? ? ? ? ? ? ? ? ? ? ? ? ?? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? (2-2)
顯然,結合公式(2-1)與公式(2-2),我們可得:
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ??? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? (2-3)
此外,采用梯度下降的更新公式為,我們令代入公式(2-1)可得:
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? (2-4)
且當時,不等式右側取極值,步長取為的上屆值的倒數,即精確搜索法(采用回溯搜索法,步長)代入公式(2-4)可得:
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?(2-5)
對于公式(2-2),我們考慮公式右側關于的二次函數,當時取極值,并進一步的變形可得:
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?(2-6)
令,代入可得:
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?(2-7)
結合公式(2-5)與公式(2-7)可得:
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?(2-8)
對于不等式(2-8)右側,我們同時減去最優值,同等變形可得:
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? (2-9)
對不等式(2-8)左側變形可得:
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? (2-10)
講公式(2-10)代入公式(2-9)可得:
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ??
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? (2-11)
我們可以發現第k+1次與第k次更新與最優值的差值成等比關系,假設經過次迭代,則有:
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? (2-12)
顯然,當時,,因此算法能夠收斂。此外,當時,有:
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ??
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ??? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?(2-13)
即此時的迭代次數.
此外,梯度下降的收斂性質是由目標函數決定的。當目標函數為強凸函數時,收斂速度為線性的。若是為凸函數和非凸函數,梯度下降的收斂性將變差。此外可以通過對步長的設置來加快算法的收斂。
總結
以上是生活随笔為你收集整理的梯度下降收敛性分析与证明的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Pymoo学习 (5):收敛性分析
- 下一篇: 浅谈对算法收敛性以及收敛速度的理解