m i n i m i z e f ( x ) minimize \ \ f(x) minimize f(x)
其中 f : R n → R f: R^n \rightarrow R f:Rn→R 是凸的,并且是连续的、二次可微。
上述问题的充分必要条件是: ▽ f ( x ⋆ ) = 0 \bigtriangledown f(x^\star)=0 ▽f(x⋆)=0,如果能直接通过这个求解就找到答案了。
但很多时候上述方法不能直接求出来。这时就会用到迭代法。可以计算一个序列 x ( 0 ) , x ( 1 ) , ⋯ ∈ d o m f x^{(0)}, x^{(1)}, \dots \in dom f x(0),x(1),⋯∈domf,当 k → ∞ k \rightarrow \infty k→∞时 f ( x ( k ) ) → p ⋆ f(x^{(k)}) \rightarrow p^{\star} f(x(k))→p⋆.
要产生一个下降序列 x ( k ) , k = 1 , . . . , x^{(k)},k=1,..., x(k),k=1,...,
x ( k + 1 ) = x ( k ) + t ( k ) Δ x ( k ) x^{(k+1)}=x^{(k)}+t^{(k)}\Delta x^{(k)} x(k+1)=x(k)+t(k)Δx(k)
并且 t ( k ) > 0 t^{(k)} \gt 0 t(k)>0
f ( x ) f(x) f(x)用泰勒公式展开近似
f ( x + Δ x ) ≈ f ( x ) + ▽ f ( x ) T Δ x f ( x + Δ x ) − f ( x ) ≈ ▽ f ( x ) T Δ x f(x+\Delta x) \approx f(x)+\bigtriangledown f(x)^T \Delta x \\ f(x+\Delta x) - f(x) \approx \bigtriangledown f(x)^T \Delta x f(x+Δx)≈f(x)+▽f(x)TΔxf(x+Δx)−f(x)≈▽f(x)TΔx
要产生一个下降的序列,可以让 ▽ f ( x ) T Δ x < 0 \bigtriangledown f(x)^T \Delta x \lt 0 ▽f(x)TΔx<0,明显 Δ x = − ▽ f ( x ) T \Delta x=-\bigtriangledown f(x)^T Δx=−▽f(x)T时,是下降的,这就是梯度下降法的方向。
最速下降法
下降法中其实要求的是使 ▽ f ( x ) T Δ x < 0 \bigtriangledown f(x)^T \Delta x \lt 0 ▽f(x)TΔx<0的 Δ x \Delta x Δx,梯度下降法直观上(随便 )就给了个结果 Δ x = − ▽ f ( x ) T \Delta x=-\bigtriangledown f(x)^T Δx=−▽f(x)T。最速下降法会把问题一般化。
最速下降法,最速,下降最快,最小,故名思议就是求使 ▽ f ( x ) T Δ x \bigtriangledown f(x)^T \Delta x ▽f(x)TΔx最小的 Δ x \Delta x Δx。假如方向确定了,再减小它的长度,那就会再小,这就没有意义了,所以要对 x x x的大小进行限制。大小用norm表示,最常见的就是欧几里得范数了。
▽ x n s d = a r g m i n { Δ f ( x ) T v ∣ ∥ v ∥ = 1 } . \bigtriangledown x_{nsd}=argmin\{\Delta f(x)^T v |\ \|v\|=1\}. ▽xnsd=argmin{Δf(x)Tv∣ ∥v∥=1}.
这里 ∥ ∥ \| \| ∥∥代表任意范数。
定义另外一个方向相同,系数不同的值
Δ x s d = ∥ ▽ f ( x ) ∥ ⋆ Δ x n s d \Delta x_{sd}=\|\bigtriangledown f(x)\|_\star \Delta x_{nsd} Δxsd=∥▽f(x)∥⋆Δxnsd
其中 ∥ ∥ ⋆ \|\|_\star ∥∥⋆是dual norm, ∥ ▽ f ( x ) ∥ ⋆ = s u p { ▽ f ( x ) T v ∣ ∥ v ∥ ≤ 1 } . \|\bigtriangledown f(x)\|_\star=sup\{\bigtriangledown f(x)^T v| \ \| v\| \le 1\}. ∥▽f(x)∥⋆=sup{▽f(x)Tv∣ ∥v∥≤1}.
欧几里得范数
如果是欧几里得范数,那最速下降法就是梯度下降法。 Δ x s d = − ▽ f ( x ) \Delta x_{sd}=-\bigtriangledown f(x) Δxsd=−▽f(x)
quadratic norm
quadratic norm的定义是 ∥ z ∥ P = ( z T P z ) 1 / 2 = ∥ P 1 / 2 z ∥ 2 , \|z\|_P=(z^TPz)^{1/2}=\|P^{1/2}z\|_2, ∥z∥P=(zTPz)1/2=∥P1/2z∥2,其中 P P P是对称正定矩阵。 |
---|
为什么 { z ∣ z T P z = 1 } \{z|z^TPz=1\} {z∣zTPz=1}代表椭圆,看这里,
也可以看这里
∥ v ∥ 1 = 1 \|v\|_1=1 ∥v∥1=1的几何意义是下面的图形。( ∥ v ∥ 2 = 1 \|v\|_2=1 ∥v∥2=1是圆形)
牛顿法就是最速下降法中使 P = ▽ 2 f ( x ) P={\bigtriangledown}^2 f(x) P=▽2f(x)
Δ x n t = − P − 1 ▽ f ( x ) = − ▽ 2 f ( x ) − 1 ▽ f ( x ) \Delta x_{nt} =-P^{-1}\bigtriangledown f(x) =-{{\bigtriangledown}^2 f(x)}^{-1}\bigtriangledown f(x) Δxnt=−P−1▽f(x)=−▽2f(x)−1▽f(x)
牛顿法还可以这样理解:
f f f在 x x x点的二阶泰勒展开式 f ^ \hat{f} f^
Convex Optimization, Boyd, Chapter 9 Unconstrained minimization