回答:
mex
-確かではありません。
- ほとんどのコードはプレーンMatlabコードです
- パッケージ内の各フォルダーは、特定の信号モデルに基づいたCS回復アルゴリズムと、その回復アルゴリズムをテストするスクリプトで構成されています。スクリプトの名前は通常「_example.m」で終わります
多様体の最適化は、非線形最適化問題に対処するための強力なパラダイムです。
このツールボックスはいくつかのアルゴリズムを実装して、冗長な辞書のスパース展開を計算し、スパース正則化(およびTV正則化)の逆問題を解決します。
しかし、そのすべて、およびそれ以上は、このツールボックスのリストに含まれています。
私は、難しい部分が疑似コードを見つけることを発見しました-それは彼らが実際にアルゴリズムを記述する場所です。擬似コードを含むアルゴリズムの例を次に示します。
IST
。私はここでオフトピックに答えていると思いますが、L1最適化アプローチの場合、YALL1(http://yall1.blogs.rice.edu/)およびSPGL1(http://www.cs.ubc.ca/ 〜mpf / spgl1 /)非常に便利で効率的なパッケージ。TFOCS(http://cvxr.com/tfocs/)はおそらく少し使いにくいですが、非常に柔軟でなければなりません。CVX(http://cvxr.com/cvx/)もあります。これにより、凸最適化問題をコードに直接入力するのが非常に簡単になりますが、圧縮されたセンシング固有の問題の解決にはかなり時間がかかります。非常に一般的なソルバー。
Sparselab(http://sparselab.stanford.edu/)で利用可能な再構成アルゴリズムもいくつかあります。
スパース再構築コードのより大きなリストは、https://sites.google.com/site/igorcarron2/cs#reconstructionにリストされています。
圧縮センシングへのアプローチはL1だけではないことに注意してください。では私たちの研究は、我々はおおよそのメッセージパッシング(AMP)とのより良い成功を収めてきました。「成功」とは、エラーの低減、相転移の改善(より少ない観測で回復する能力)、複雑さの低減(メモリとCPUの両方)と定義しています。
近似メッセージパッシングアルゴリズムは、ベイジアンフレームワークを確立して、線形システムの入力と出力が確率モデルによって決定される大規模線形システムの未知のベクトルを推定します(たとえば、「このベクトルはノイズで測定されました」、ゼロ」)。オリジナルDonohoによって偽造AMPアプローチは、により精製されたRanganに一般化して渡すおおよそメッセージ利用可能なMATLABコード。入力と出力は、ほぼ任意の確率密度関数にすることができます。私たちの研究では、GAMPは通常、L1凸アプローチおよび貪欲アプローチ(直交マッチング追跡など)よりも高速で、正確で、堅牢であることがわかりました(読み取り:良好な相転移曲線)。
私のアドバイザーと私は、未知のベクトルxではなく、その未知の線形関数Wxに豊富なゼロが期待されるGAMP for Analysis CSの使用に関する論文を執筆しました。
Matlab UNLocBoxをチェックすることもできます:http ://unlocbox.sourceforge.net デモページには4つの圧縮センシングスクリプトがあります:http : //unlocbox.sourceforge.net/doc/demos/index.php
私は初心者向けにCS、MP、OMPなどの基本を説明するコーディングチュートリアルを多数書いています。https://sparse-plex.readthedocs.io/en/latest/demos/index.htmlでチェックアウトできます。
これは、GitHub https://github.com/indigits/sparse-plexで入手可能なライブラリsparse-plexの一部です