例: SVD 行列の因子分解
svd関数を使用して、行列の
SVD 行列分解を実行します。これは線形連立方程式の解を求める際に便利です。これらの関数の基礎となるアルゴリズムは
lsolveでも使用されています。
1. 実数行列 M を入力します (正方行列である必要はありません)。
2. svd 関数を使用して、行列 SVD の M 分解を実行します。ネストされた行列を展開して、コンテンツを表示します。
3. svds関数が行列
M の単一値を持つベクトルを返すことと、
svd 関数で返される結果の 1 つ目の入れ子配列と同じであることを示します。
4. 変数 s、U、および V のそれぞれが行列 S の要素 0、1、および 2 になるよう設定します。
5. diag関数を使用して、対角成分が
s の要素である行列を作成します。
6. U、D、V の関が入力行列 M となることを示します。
2 つの行列は同じです。