最速下降法

文章目录

  • 无约束最小化问题
    • 解析解
    • 迭代法
      • 梯度下降法
      • `最速下降法`
        • `欧几里得范数`
        • `quadratic norm`
        • l 1 l_1 l1norm
        • 牛顿法
    • 参考

无约束最小化问题

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:RnR 是凸的,并且是连续的、二次可微。

解析解

上述问题的充分必要条件是: ▽ 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 v1}.

欧几里得范数

如果是欧几里得范数,那最速下降法就是梯度下降法。 Δ 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, zP=(zTPz)1/2=P1/2z2,其中 P P P是对称正定矩阵。

为什么 { z ∣ z T P z = 1 } \{z|z^TPz=1\} {zzTPz=1}代表椭圆,看这里,
也可以看这里

最速下降法_第1张图片

l 1 l_1 l1norm

∥ v ∥ 1 = 1 \|v\|_1=1 v1=1的几何意义是下面的图形。( ∥ v ∥ 2 = 1 \|v\|_2=1 v2=1是圆形)
最速下降法_第2张图片

牛顿法

牛顿法就是最速下降法中使 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=P1f(x)=2f(x)1f(x)


牛顿法还可以这样理解:
f f f x x x点的二阶泰勒展开式 f ^ \hat{f} f^
最速下降法_第3张图片

参考

Convex Optimization, Boyd, Chapter 9 Unconstrained minimization

你可能感兴趣的:(凸优化,最速下降法,牛顿法,梯度下降法)