多元函式
1. 設多元函式 f:
rn→r
二次連續可微,則
f 在
x 處的梯度和hessian矩陣為:∇f
(x)=
(∂f(
x)∂x
1,∂f
(x)∂
x2,⋯
,∂f(
x)∂x
n)t∇
2f(x
)=⎛⎝
⎜⎜⎜⎜
⎜⎜⎜∂
f(x)
∂x21
⋮∂f(
x)∂x
n∂x1
⋯⋯∂f
(x)∂
x1∂x
n⋮∂f
(x)∂
x2n⎞
⎠⎟⎟⎟
⎟⎟⎟⎟
2. 多元函式的taylor展開式:一階
:f(x
)=f(
y)+∇
f(y)
t(x−
y)+o
(||x
−y||
)二階:
f(x)
=f(y
)+∇f
(y)t
(x−y
)+12
(x−y
)t∇2
f(y)
(x−y
)+o(
||x−
y||2
) 一元函式與多元函式
對給定的x,
y∈rn
,定義一元函式ϕ:
r→r 如下: ϕ(
t)=f
[y+t
(x−y
)],經計算可得: ϕ′
(t)=
∇f[y
+t(x
−y)]
t(x−
y)ϕ′′
(t)=
(x−y
)t∇2
f[y+
t(x−
y)](
x−y)
數值最優化的一般方法是,初始選取乙個點x1
,通過導數等資訊得到當前的乙個下降方向dk
(k=1
,2,⋯
) ,在這個方向的基礎上,計算步長αk
,得到新的點xk
+1=x
k+αk
dk,這樣的迭代始終能保證f(
xk+1
)xk) ,從而得到極小值點(非最小值)。
因此,數值最優化無非就是圍繞方向d和步長
α 的選取。再進一步地,對於步長
α 的搜尋,基本方法主要有精確線性搜尋和非精確線性搜尋。其中精確線性搜尋有公式法和**分割法,非精確線性搜尋主要有armijo型線性搜尋和wolfe-powell型線性搜尋,都是比較簡單的一元函式知識,因為步長
α 是一元的。
由此,數值最優化的各種演算法的主要不同之處就在於下降方向d的選取了,d的構造方式確定了各種不同的演算法。關於構造的d如何保證是下降方向呢,只要保證向量d滿足∇f
(x)t
d<
0 ,證明如下:
證明:利用taylor展開式,不難得到:當
α>
0 充分小時f(
x+αd
)=f(
x)+α
∇f(x
)d+o
(α)x)
即d是f在x處的乙個下降方向。
夾帶私貨:∇f
(x)t
d<
0 的幾何理解:∇f
(x) 表示在x的各個分量xi
上每增加乙個單位,相應的函式值分量yi
增加∂f
∂xi 個單位,∇f
(x)t
d<
0 是∇f
(x) 和d對應元素相乘之和,也就是說,在各分量xi
上增加了di
個單位(在各個方向上前進了這麼多步),那麼,∇f
(x)t
d<
0 的意義就是在各個方向上增加的函式值之和,也就是近似的函式值增加量了。只要乙個單位量足夠逼近0,近似值也就逼近真實值,直至收斂。
牛頓法的基本思想是,在離點xk
足夠近的距離,f(
x)可以近似看作乙個二次函式。即,在xk
附近使用f(
x)的二次近似來尋找比xk
處函式值更小的點。
由泰勒公式,將f(
x)在固定點比xk
處展開,則有:f(
xn+δ
x)≈f
(xn)
+δxt
∇f(x
n)+1
2δxt
(∇2f
(xn)
)δx
當||δx||→0時,上面的近似展開式是成立的。
對δx求導取0,得:δx
∗=−h
−1ng
n 基本思想
先看一下擬牛頓法的基本框架 qu
asin
ewto
n(f,
x0,h
−10,
quasiupdate):
for n=
0,1,
…(until converged)
:// compute search direction and step-size d=
h−1n
gnα←
minα≥0
f(xn
−αd)
xn+1
←xn−
αd// store the input and gradient deltas gn
+1←∇
f(xn
+1)s
n+1←
xn+1
−xny
n+1←
gn+1
−gn// update inverse hessian h−
1n+1
←quasiupdate(h
−1n,
sn+1
,yn+
1)初始時,給了乙個引數h−
10,之後每一次迭代通過quasiupdatequasiupdate方法加上輸入變數與梯度的差值(sn
和yn )作為引數,產生出下乙個h−
1 的估計。
可以發現,若quasiupdatequasiupdate每次都返回單位矩陣,則擬牛頓法退化為梯度下降方法(每一次都沿著梯度方向搜尋)。
若quasiupdatequasiupdate能夠返回∇2
f(xn
+1) ,則擬牛頓法與牛頓法就等價了。
從上述偽**中可以看出,擬牛頓法僅僅需要函式值和梯度資訊,並不需要二階導資訊。
最優化 數值優化演算法
核心思路 對梯度方向做一些修正,使得每次迭代尋找最優點都在可行域的內部進行。我們從可行域內部的某個點開始搜尋,一開始沿著梯度方向進行迭代搜尋,一旦碰到邊界 說明下一步可能會離開可行域 就要扭轉方向,使得搜尋過程始終在可行域的內部進行。當點落在可行域外部時,該怎樣選擇搜尋方向,衍生出了下列的演算法。1...
機器學習筆記 數值最優化 1 最優化條件
方向導數 設x k是經k 步迭代後 得到的迭 代點,d k是xk 在xk使 f x 下降的方 向,k 0是 沿k的步 長,則第 k 1個 迭代待是 xk 1 x k k dk滿足 f xk 1 f xk 終止準則 f xk 1 f x k 足夠小 設 當前點為xk 搜尋方向是dk 視為 的 函式 h...
最優化理論與方法 《數值與最優化方法》(目錄)
對於每乙個方法,都大致按照 問題形式 演算法步驟 和 收斂分析 來進行展開的。而對於科研中常用方法,則講透本質思想。數值與最優化方法 一 包括 一.無約束最優化計算方法1.1 數學基礎 1.1.1 等值線 1.1.2 可微與梯度 1.1.3 方向導數 1.1.4 hesse矩陣 1.1.5 多元函式...