线搜索和信任区域算法的尺度不变性


11

在Nocedal&Wright的有关数值优化的书中,第2.2节(第27页)中有一条语句:“一般而言,对于线搜索算法而言,保留比例不变性要比对信任区域算法要容易得多”。在同一部分中,他们讨论使用新变量,这些变量是原始变量的缩放版本,可以同时帮助行搜索和信任区域。另一种方法是预处理。对于信任区域方法,预处理等效于具有椭圆形信任区域,因此可提供尺度不变性。但是,对于行搜索的预处理,类似的直觉尚不清楚。线搜索以哪种方式更适合尺度不变性?有一些实际考虑吗?

另外,我对信任区域方法的预处理有疑问。对于病情严重的问题,好的预处理器会减少外部Newton迭代和内部CG迭代的次数,还是仅减少后者?由于信任区域在原始空间中为椭圆形,因此良好的预处理器应会导致椭圆形更好地匹配景观。我认为这可能会迫使算法朝更好的方向发展,从而减少外部牛顿迭代的次数。这是正确的吗?

Answers:


2

我想线性搜索和信任区域方法在处理缩放方式上可能会有一些差异,但是只要我们知道缩放比例,我实际上就不会看到它的实际效果。而且,需要明确的是,Nocedal和Wright的书是在谈论仿射缩放。非线性缩放很难量化。

f:XRAL(X)J:XR

J(x)=f(Ax)J(x)=Af(Ax)2J(x)=A2f(Ax)A
A
2J(x)δx=J(x)
A2f(Ax)Aδx=Af(Ax)
Aδx=2f(Ax)1f(Ax)

Hδx=J(x)
H
Hδx=Af(Ax)
AH

ϕ

δx=ϕ(Af(Ax))
ϕϕϕA

2J(x)δx=J(x)
不精确地使用CG。这恰好是在信任区域设置中使用Steihaug-Toint(Nocedal和Wright中的第171页)或Newton-CG进行线搜索(Nocedal和Wright中的第169页)。它们的工作原理几乎相同,并且不在乎仿射缩放。它们也不需要存储Hessian,仅需要Hessian向量乘积。确实,这些算法应该是大多数问题的主力军,它们并不关心仿射缩放。

至于信任区域问题的前提条件,我认为没有任何简单的方法可以告诉apriori您是否要提高整体优化迭代的次数。归根结底,最优化方法有两种运行方式。在模式一下,我们离牛顿方法的收敛半径太远,因此我们进行全球化并只是强制迭代以确保目标下降。信任区域是一种方法。线搜索是另一个。在第二种模式下,我们处于牛顿方法的收敛半径内,因此我们尽量不要弄乱它,而让牛顿方法起作用。实际上,我们可以在诸如信任区域方法之类的收敛证明中看到这一点。例如,查看定理4.9(Nocedal和Wright中的第93页)。非常明确地,它们说明了信任区域如何变为非活动状态。在这种情况下,预处理器的用途是什么?当然,当我们处于牛顿方法的收敛半径时,我们要做的工作要少得多,并且CG迭代次数会减少。当我们超出此半径时会发生什么?这要看情况。如果我们计算完整的牛顿步长,则好处是我们所做的工作更少。如果我们由于被截断的CG截断而提前中断了步伐,那么我们的方向将是Krylov子空间

{PJ(x),(PH)(PJ(x)),,(PH)k(PJ(x))}
PH
{J(x),(H)(J(x)),,(H)k(J(x))}?

这并不意味着定义好的预处理器没有任何价值。但是,我不确定有人如何定义前置条件来帮助优化远离牛顿方法收敛半径的点。通常,我们设计一个预处理器以对Hessian近似的特征值进行聚类,这是一个切实可行的目标。

tldr; 实际上,与信任区域方法相比,线搜索方法生成迭代的方法种类繁多,因此可能存在一种惊人的方式来处理仿射缩放。但是,只需使用不精确的牛顿方法就可以了。预处理器的确会影响算法的性能,而不会影响牛顿方法的收敛半径,但是很难量化其方式,因此只需设计一个预处理器以聚类Hessiasn近似的特征值即可。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.