机器学习笔记之优化算法——线搜索方法[方向角度]
引言
上一节对优化问题进行了简单描述,并从逻辑认知的角度介绍了线搜索方法与信赖域方法。本节将关注线搜索方法,并重点关注它的方向部分。
回顾:线搜索方法
线搜索方法是一种通过求解数值解来计算最优解的方法。其特点是:在数值解的迭代求解过程中,分为方向与步长分别执行,并且先定方向,后定步长。对应的数学符号表达如下:
x k + 1 = x k + α k ⋅ P k x_{k+1} = x_k + \alpha_k \cdot \mathcal P_k xk+1=xk+αk⋅Pk
其中 α k \alpha_k αk表示步长, P k \mathcal P_k Pk表示方向。并且步长的重要程度高于方向。
从方向角度观察线搜索方法
我们首先对优化问题(场景)进行一系列的假设以达到简化作用。
场景构建
假设1:目标函数结果的单调性
关于变量 X \mathcal X X的目标函数 f ( X ) f(\mathcal X) f(X),我们最终目标是选择一个合适的 X = x \mathcal X = x X=x,使得目标函数达到最值。这里以最小值为例,对应数学符号表示如下:
min X ∈ R n f ( X ) \mathop{\min}\limits_{\mathcal X \in \mathbb R^n} f(\mathcal X) X∈Rnminf(X)
迭代之前,我们给定关于 X \mathcal X X的初始化信息: x 0 x_0 x0,并在迭代过程中通过策略得到一系列数值解: { x k } k = 1 ∞ \{x_k\}_{k=1}^{\infty} {
xk}k=1∞,它们对应的目标函数结果表示如下:
{ f ( x k ) } k = 0 ∞ \{f(x_k)\}_{k=0}^{\infty} {
f(xk)}k=0∞
上一节介绍过,目标函数结果所描述的数列存在单调性,但这个单调性可能是不严格的:
- 如果数列满足严格的单调性,有:
f ( x k + 1 ) < f ( x k ) f ( x k ) , f ( x k + 1 ) ∈ { f ( x k ) } k = 0 ∞ f(x_{k+1}) < f(x_k) \quad f(x_k),f(x_{k+1}) \in \{f(x_k)\}_{k=0}^{\infty} f(xk+1)<f(xk)f(xk),f(xk+1)∈{ f(xk)}k=0∞ - 相反,如果数列的单调性不严格,有:
f ( x k + 1 ) < f ( x k − m ) f ( x k + 1 ) , f ( x k − m ) ∈ { f ( x k ) } k = 0 ∞ ; m ∈ [ 0 , k ] f(x_{k+1}) < f(x_{k-m}) \quad f(x_{k+1}),f(x_{k-m}) \in \{f(x_k)\}_{k=0}^{\infty};m \in [0,k] f(xk+1)<f(xk−m)f(xk+1),f(xk−m)∈{ f(xk)}k=0∞;m∈[0,k]
也就是说,严格的单调性需要数列中的元素按照顺序严格递减;而不严格的单调性仅需要趋势递减即可,局部元素之间的大小关系并不是关注的重点。
在真实情况下,单调性的严格/不严格并不是绝对的。在迭代之前,初始化信息
x 0 x_0 x0一般是随机初始化,从而导致
x 0 x_0 x0到最优解
x ∗ x^* x∗的距离是随机的。因此在迭代初期,我们通常会采用不严格的递减方式,随着数值解
x k x_k xk逐步逼近最优解
x ∗ x^* x∗,我们会调整参数
m m m,使其逐步地向严格的递减方式转化。
在方向角度观察线搜索方法之前,为简化运算,设定 { f ( x k ) } k = 0 ∞ \{f(x_k)\}_{k=0}^{\infty} {
f(xk)}k=0∞服从严格的单调性:
其中
N N N表示非负整数,描述数值解的编号。
∀ k ∈ N ⇒ f ( x k + 1 ) < f ( x k ) \forall k \in N \Rightarrow f(x_{k+1}) < f(x_k) ∀k∈N⇒f(xk+1)<f(xk)
假设2:屏蔽步长 α k \alpha_k αk对线搜索方法过程的影响
上一节同样介绍了:线搜索方法对于步长的要求比较严格,较大或者较小的步长都会对线搜索方法产生负面影响。
不否认的是:较大的步长可能会影响方向,从而使线搜索方法失效;但较小的步长仅会使计算(迭代)代价提升,从而在真实情况中不太可用,但并不会使算法失效,也不会对其收敛性产生太大影响。
较小的步长仅仅使收敛速度慢了,而不是不收敛了。
‘较大步长可能影响方向’示例见文章末尾。
由于这里仅讨论方向角度的线搜索方法,因此这里关于步长的假设是:在线搜索方法的迭代过程中,其步长 α k \alpha_k αk足够小,小到可以忽略不计。
由于‘步长’
α k \alpha_k