このページの翻訳は最新ではありません。ここをクリックして,英語の最新版を参照してください。
一般的に最小二乗は二乗和の関数を極小にするベクトルxを見つける問題です。場合によってはいくつかの制約をもちます。
A·x≤b, Aeq·x = beq, lb≤x≤ub いくつかの优化工具箱™のソルバーは,さまざまなタイプのF (x)と制約に利用できます。
ソルバー F (x) 制約
mldivide
C·x - d
なし
lsqnonneg
C·x - d
x≥0
lsqlin
C·x - d
範囲、線形
lsqnonlin
一般F (x) 範囲
lsqcurvefit
F(x, xdata) - ydata 範囲 mldivide
で使用されるアルゴリズムに加えて,优化工具箱のソルバーには5つの最小二乗法アルゴリズムがあります。lsqlin
ここで線形制約と範囲制約が条件になります。関数
これは行列Hを2 c<年代up>T メモlsqlin
“内点”
“激活集”
quadprog
“interior-point-convex”
稀疏的
完整的
优化工具箱のソルバーで使用される多くのメソッドは,<年代pan class="emphasis">“信頼領域法”を基にしています。信頼領域法はシンプルなものですが最適化では重要な概念です。 最適化の信頼領域法のアプローチを理解するために制約なし最小化問題を考え,f (x)を最小化します。ここで関数はベクトル引数を取り,スカラーを出力します。n空間の点 x を想定し、より小さい関数値へ移動して最小化を行う場合を考えてみましょう。基本的な概念は、シンプルな関数 q で f を近似することです。この関数は、点 x の近傍 N で関数 f の挙動をよく表すものです。この近傍が信頼領域です。テスト ステップ s が N における最小化 (または近似最小化) によって計算されます。信頼領域の部分問題を次に示します。 F (x + s) < F (x) f (x)を最小化するための信頼領域を決める上で重要な問題は,近似问(現在の点xで定義)の選択および計算方法,信頼領域Nの選択および変更方法,信頼領域の部分問題を解く精度です。この節では制約なしの問題に焦点をあてます。変数上に制約があるために複雑度が増す問題については,後節で取り扱います。 標準的な信頼領域法( ここでgは現在の点xにおけるfの勾配です。Hはヘッセ行列(2次導関数の対称行列)です。Dは対角スケーリング行列であり、Δ は正のスカラーです。∥ . ∥ は 2 ノルムです。式 2
このようなアルゴリズムにより 2次元の部分空間は,以下に示す または このように年代を選択する背景の考え方は,最急降下方向または負の曲率方向にグローバルな収束を進めることと,ニュートンステップが存在する場合は,これを介して迅速にローカルな収束を達成することです。 信頼領域法の概念を使用した制約なしの最小化の概要は以下になります。 2次元の信頼領域の部分問題の定式化 テストステップ年代を決めるため, F (x + s) < F (x) Δを調節します。 これら4つのステップは,収束するまで繰り返されます。信頼領域の大きさΔは標準的な規則に基づいて調整されます。特に,使用するステップが適用されない場合,すなわち<年代pan class="inlineequation">F (x + s)≥F (x) 优化工具箱のソルバーは特定の関数fの重要かつ特別なケースをいくつか扱います。非線形最小二乗法,二次関数,線形最小二乗法を考えてみましょう。しかし,根底に存在するアルゴリズムは,一般的な場合と同じです。これらの特別な場合は後続の節で説明します。
(1)
(2)
(3)
(4)
f (x)の重要で特別なケースは,非線形最小二乗問題です。 ここでF (x)はF<年代乌兰巴托>我 2次元部分空間年代を定義するのに使います(ここで,JはF (x)のヤコビアンです)。要素関数f<年代乌兰巴托>我 各反復で前処理付き共役勾配法は次の正規方程式を近似的に解くために使われます。
ここで,正規方程式は,明示的な形をしていません。
(5)
(6)
この場合,解く関数f (x)は以下になります。
場合によっては線形制約に従います。アルゴリズムは、ある範囲内で局所的な解に収束する厳密に実行可能な反復を行います。各反復は大規模線形システム (n次元: n は x の長さ) の近似解を含みます。反復行列は行列 C の構造をもっています。特に前処理付き共役勾配法は、正規方程式 を、近似的に解くために使われます。
ここで,正規方程式は,明示的な形をしていません。 部分空間の信頼領域法が探索方向を決定するのに使われます。ただし,ステップを非線形最小化の場合と同じく(場合によっては)1つの反射ステップに制限する代わりに,区分的な反光ライン探索が二次型の場合と同じく各反復で行われます。ライン探索の詳細は ヤコビ乗算関数- を使用します。この関数は行列Yに対して以下の乗算を計算しなければなりません。 これはCが大規模な場合は有用ですが,Cを陽的に作成せずにlsqlin
は,行列Cを陽的に使用せずに線形制約付き最小二乗問題を解くことができますが,代わりにユーザーが与えたヤコビ乗算関数W = jmfun(动力系统,Y,标志)
标志= = 0
国旗> 0
国旗< 0
最小二乗問題は,二乗和である関数f (x)を最小化します。 この種の問題は,特に,非線形パラメーター推定のようにモデル関数をデータに当てはめる実用的応用でよく見られます。このような問題は,目的が出力y (x, t)をベクトルxとスカラーtの連続モデル軌跡φ(t)に乗せる制御システムでも見られます。この問題は,次のように表現されます。 ここでy (x, t)とφ(t)はスカラー関数です。 近似値を求めるために積分を離散化します。 ここで,t<年代乌兰巴托>我
この種の問題では,残差<年代pan class="inlineequation">∥∥F (x) F (x)のm行n列のヤコビ行列をJ (x)とし,F (x)の勾配ベクトルをG (x)とし,F (x)のヘッシアン行列をH (x)とし,各F<年代乌兰巴托>我 ここで,
行列Q (x)には次のような特性があります。x<年代乌兰巴托>k ガウス・ニュートン法では,線形最小二乗問題の解である探索方向d<年代乌兰巴托>k この方法で導かれる方向は,項<年代pan class="inlineequation">问(x) = 0 ガウス・ニュートン法は,2次の項Q (x)が無視できない場合に,問題が発生することがあります。レーベンバーグ・マルカート法がこの問題を解決します。 レーベンバーグ・マルカート法( またはオプションとして以下の方程式を使います。 ここで,スカラーλ<年代乌兰巴托>k パラメーターλ<年代乌兰巴托>0 λ<年代乌兰巴托>k 内部的に,レーベンバーグ・マルカート法アルゴリズムは,関数の許容誤差の そのため,レーベンバーグ・マルカート法はガウス・ニュートンの方向と最急降下方向の間で交差する探索方向を使用します。 レーベンバーグ・マルカート法のもう1つのメリットは,ヤコビアンJが階数不足の場合です。この場合は,ガウス・ニュートン法で数値問題が発生する可能性があります。これは, 以下の図は,ローゼンブロックの関数の最小化(最小二乗形式の,難しいことで有名な最小化問題)におけるレーベンバーグ・マルカート法の反復を示しています。 。関数上のレーベンバーグ・マルカート法 反復点を生成するスクリプトを含めたこの図の詳細については, 問題に範囲制約が含まれている場合は,
または
アルゴリズムが1次の最適性の尺度の停止条件を変更します。xを提案された反復点とします。制約なしの場合は、停止条件が次のようになります。 ここで,tolは, この条件を理解するために,まず,xが実行可能領域の内部に存在する場合は,演算子Pが機能しないことに注意してください。そのため,停止条件は次のようになります。
これは,元の制約なしの停止条件<年代pan class="inlineequation">
と同じです。境界制約が有効な場合,つまり,<年代pan class="inlineequation">x -∇f (x) レーベンバーグ・マルカート法の停止条件
(7)
(8)
(9)
(10)
(11)
(12)
(13)
InitDamping
レーベンバーグ・マルカート法の範囲制約
(14)
(15)
quadprog
|<年代pan itemscope itemtype="//www.tatmou.com/help/schema/MathWorksDocPage/SeeAlso" itemprop="seealso">lsqlin
|<年代pan itemscope itemtype="//www.tatmou.com/help/schema/MathWorksDocPage/SeeAlso" itemprop="seealso">lsqcurvefit
|<年代pan itemscope itemtype="//www.tatmou.com/help/schema/MathWorksDocPage/SeeAlso" itemprop="seealso">lsqnonlin
|<年代pan itemscope itemtype="//www.tatmou.com/help/schema/MathWorksDocPage/SeeAlso" itemprop="seealso">lsqnonneg