ラインサーチおよび信頼領域アルゴリズムのスケール不変性


11

Nocedal&Wrightの数値最適化に関する本では、セクション2.2(27ページ)に「一般的に、信頼領域アルゴリズムよりもライン探索アルゴリズムのスケール不変性を保持する方が簡単です」という記述があります。同じセクションで、元の変数のスケーリングされたバージョンである新しい変数を使用することについて説明します。これは、ライン検索と信頼領域の両方に役立ちます。別のアプローチは事前調整です。信頼領域メソッドの場合、事前条件付けは楕円形の信頼領域を持つことと同等であるため、スケール不変性を提供します。ただし、行検索の前提条件については、同様の直観が明確ではありません。線の探索はどのような点でスケール不変性に適していますか?実用的な考慮事項はありますか?

また、信頼領域メソッドの前提条件に関する質問があります。非常に条件の悪い問題の場合、優れた前提条件は外側のニュートン反復と内側のCG反復の両方を減らすか、後者のみを減らすか?信頼領域は元の空間では楕円体であるため、適切な前提条件子を使用すると、地形によりよく一致する楕円体が得られます。これにより、アルゴリズムがより良い方向に進むように強制することにより、外側のニュートン反復の数を減らすことができると思います。これは正しいですか?

回答:


2

line-searchメソッドとtrust-regionメソッドがスケーリングを処理する方法には多少の違いがあると思われますが、スケーリングを認識している限り、実際にはそれが実際に発揮されるとは思いません。そして、明確にするために、Nocedal and 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)
基本的に、スケーリングはキャンセルされて消えるため、方向に影響しません。それが、ニュートンの方法がアフィンスケール不変であると言う理由です。

さて、では、ヘッセ人がいないとしましょう。実際、1日の終わりに、信頼領域法 は、ある種のヘッセ近似についてシステムを解くことに依存してい ます。ほとんどの場合、うまく機能するため、Steihaug-Toint切り捨てCGを使用します。スケーリングを元に戻すと、 このシステムでCGをスローする場合、基本的にスケーリングを処理するための1つのツールがあり、それがヘッセ行列またはその近似

Hδx=J(x)
H
Hδx=Af(Ax)
AH。理論的には、信頼領域の形状を変更することはできますが、実際に意味するのは、ステップを早めるか遅らせることです。これはステップに影響を与えますが、私は常にコントロールするのが苦痛だと感じました。

線探索法では、反復に何らかのマジック関数を勾配に適用するものとして反復を見ることができます。したがって、スケーリングされた方向の場合: 多分はニュートンステップを計算します。たぶんはBFGSステップを計算します。なんでも。確かに、降下方向を生成するためにが必要になる可能性があるなど、いくつかの制限がありますが、ここには大きな柔軟性があることが強調されています。これは、スケーリング処理するためのより多くのツールがあることを意味します。ϕ

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

さて、これらのツールは何であり、それらを使用する必要がありますか?個人的には、答えはノーだと思います。アプリケーションを本当に知っていて、解決策を見つけるための特殊なアルゴリズムを持っているのでなければ、不正確なニュートン法は本当にうまく機能します。不正確なニュートンとは、 CGを使用してシステム不正確に解くことを意味し ます。これは、信頼領域の設定でSteihaug-Toint(NocedalおよびWrightの171ページ)またはライン検索(Newce-CGでNocedalおよびWrightの169ページ)を正確に使用しています。それらはほぼ同じように機能し、アフィンスケーリングについては気にしません。また、ヘッセ行列を保存する必要はなく、ヘッセ行列ベクトル積のみが必要です。実際、これらのアルゴリズムはほとんどの問題の主力であり、アフィンスケーリングを気にしません。

2J(x)δx=J(x)

信頼領域の問題の前提条件に関しては、全体的な最適化の反復回数を改善するかどうかをアプリオリに伝える簡単な方法はないと思います。実際、1日の終わりには、最適化方法は2つのモードで動作します。モード1では、ニュートン法の収束半径から離れすぎているため、グローバル化を行い、反復を強制して、目的が確実に低下するようにします。信頼領域は1つの方法です。行検索も別の方法です。モード2では、Newtonの方法の収束半径にあるため、それを混乱させず、Newtonの方法に任せます。実際、信頼領域法などの収束証明でこれを見ることができます。たとえば、定理4.9(Nocedal and Wrightのp.93)を見てください。非常に明示的に、信頼領域が非アクティブになる方法を示します。この文脈では、前提条件の効用は何ですか?確かに、ニュートン法の収束半径にいるときは、作業がはるかに少なくなり、CGの反復回数が減少します。この半径の外側にいるとどうなりますか?それはちょっと依存します。フルニュートンステップを計算すると、作業が少なくなるという利点があります。切り捨てられたCGから切り捨てられたために早期にステップを切断した場合、方向はクリロフ部分空間になります

{PJ(x),(PH)(PJ(x)),,(PH)k(PJ(x))}
前処理でありますそして私たちのヘッセ行列近似です。これは、よりも方向を見つけるのに適した部分空間ですか? わかりにくいです。多分。そうでないかもしれない。理論は、有限のステップ数で収束することを示しています。PH
{J(x),(H)(J(x)),,(H)k(J(x))}?

これは、良い前提条件を定義することに価値がないという意味ではありません。ただし、ニュートン法の収束半径から離れたポイントの最適化を支援するために、誰かがどのように前提条件を定義するのかわかりません。通常、ヘッセ近似の固有値をクラスター化する前提条件を設計します。これは、具体的で測定可能な目標です。

tldr; 実際には、行検索メソッドが信頼領域メソッドよりも多くの方法で反復を生成するため、アフィンスケーリングを処理する驚くべき方法がある可能性があります。ただし、不正確なニュートン法を使用するだけでかまいません。前提条件は、ニュートン法の収束半径から離れたアルゴリズムのパフォーマンスに影響しますが、どのように定量化するのは難しいので、ヘッシアン近似の固有値をクラスター化する前提条件を設計するだけです。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.