L無限大ノルムを最小化する目的で線形回帰を解決するソフトウェアパッケージはありますか?
L無限大ノルムを最小化する目的で線形回帰を解決するソフトウェアパッケージはありますか?
回答:
短い答え:問題は線形プログラム(LP)として定式化できるため、タスクに適したLPソルバーを選択できます。問題をLPとして記述する方法については、以下をお読みください。
この最小化問題は、しばしばチェビシェフ近似と呼ばれます。
これをLPとして再キャストするための鍵は、問題をエピグラフ形式で書き直すことです。実際、
ここで、関数定義を使用して、上記の右側を 、回帰設定でノルム を最小化することは、LPと同等であることが 最適化が行われる場所over、およびは長さ 1のベクトルを示します。私は、読者が上記のLPを標準形式で再キャストするための(簡単な)演習として残します。
線形回帰の(全変動)バージョンとの関係
非常によく似たものがノルムでも実行できることに注意してください。してみましょう。次に、同様の引数により、 対応するLPは
場合とは、はスカラーではなく長さベクトルになっていることに注意してください。
これら2つの問題の類似点と、両方をLPとしてキャストできるという事実は、もちろん偶然ではありません。2つの基準は、相互に二重の基準であるという点で関連しています。
@cardinalの答えは適切であり、受け入れられていますが、このスレッドを完全に閉じるために、以下を提供します。IMSL数値ライブラリには、L無限大のノルム回帰を実行するためのルーチンが含まれています。このルーチンは、Fortran、C、Java、C#、およびPythonで使用できます。私は、メソッドがlnorm_regressionを呼び出すCバージョンとPythonバージョンを使用しました。これは、一般的な回帰、もサポートしています。
これらは商用ライブラリですが、Pythonバージョンは(ビールのように)非商用目的で無料です。