机器学习笔记之优化算法——线搜索方法[步长角度,非精确搜索,Armijo Condition]
引言
上一节介绍了线搜索方法使用非精确搜索近似求解最优步长的过程中,讨论了 f ( x k + 1 ) < f ( x k ) f(x_{k+1}) < f(x_k) f(xk+1)<f(xk)与 { f ( x k ) } k = 0 ∞ ⇒ f ∗ \{f(x_k)\}_{k=0}^{\infty} \Rightarrow f^* { f(xk)}k=0∞⇒f∗之间的条件关系。本节以该条件关系为引,介绍 Armijo Condition \text{Armijo Condition} Armijo Condition。
回顾:
关于 f ( x k + 1 ) = ϕ ( α ) f(x_{k+1}) = \phi(\alpha) f(xk+1)=ϕ(α)的一些特性
在线搜索方法——步长角度(精确搜索)中介绍过,由于目标函数 f ( ⋅ ) f(\cdot) f(⋅)未知,导致我们没有办法得到 ϕ ( α ) = f ( x k + 1 ) \phi(\alpha) = f(x_{k+1}) ϕ(α)=f(xk+1)的精确函数,但并不妨碍我们了解一些关于 ϕ ( α ) \phi(\alpha) ϕ(α)的特性:
- 由于步长变量 α \alpha α具有物理意义,因而 α \alpha α存在下界 0 0 0,从而 ϕ ( 0 ) = f ( x k + 0 ⋅ P k ) = f ( x k ) \phi(0) = f(x_k + 0 \cdot \mathcal P_k) = f(x_k) ϕ(0)=f(xk+0⋅Pk)=f(xk);
- ϕ ( α ) \phi(\alpha) ϕ(α)在 α = 0 \alpha=0 α=0处的斜率 ∂ ϕ ( α ) ∂ α ∣ α = 0 \begin{aligned}\frac{\partial \phi(\alpha)}{\partial \alpha}|_{\alpha=0}\end{aligned} ∂α∂ϕ(α)∣α=0可表示成如下形式:
∂ ϕ ( α ) ∂ α ∣ α = 0 = ϕ ′ ( 0 ) = [ ∇ f ( x k + 0 ⋅ P k ) ] T ⋅ P k = [ ∇ f ( x k ) ] T ⋅ P k \begin{aligned} \frac{\partial \phi(\alpha)}{\partial \alpha}|_{\alpha=0} & = \phi'(0) \\ & = \left[\nabla f(x_k + 0 \cdot \mathcal P_k)\right]^T \cdot \mathcal P_k \\ & = \left[\nabla f(x_k)\right]^T \cdot \mathcal P_k \end{aligned} ∂α∂ϕ(α)∣α=0=ϕ′(0)=[∇f(xk+0⋅Pk)]T⋅Pk=[∇f(xk)]T⋅Pk
其中 P k \mathcal P_k