私はmxn行列Aで始まり、それを2つの行列mxrとrxnに分解したいと考えています。 rは行列A.行列(m x n)をMatlabの2つの要素(m x r、r x n)に分解するにはどうすればよいですか?
NNMFの寸法よりも大きくすることができる、私は二つの行列に行列をfactoriseできる方法はあるだけr< min(size(A))
することができますか?
私はmxn行列Aで始まり、それを2つの行列mxrとrxnに分解したいと考えています。 rは行列A.行列(m x n)をMatlabの2つの要素(m x r、r x n)に分解するにはどうすればよいですか?
NNMFの寸法よりも大きくすることができる、私は二つの行列に行列をfactoriseできる方法はあるだけr< min(size(A))
することができますか?
は、MATLABで利用可能ないくつかの因数分解機能があり、ここを参照してください: http://www.matrixlab-examples.com/matrix-decomposition.html
例えばLU/qr - 因数分解、コレスキーなど...
Professor Haesun Park's Academic Home Pageにアクセスし、そこからthis packageをダウンロードできます。
実際に彼女は非負行列の因子分解を交互非負制約付き最小二乗法とブロック主旋回/アクティブ集合法をMatlabで実装しています。
Matlabで混合メンバーシップマトリックス因子分解(M3F)の実装を見つけることができます。here。
あなたはどのような分解をしたいのかをより具体的にする必要があります。私には、あなたが過度の疎な基底集合を見つけようとしない限り、rをmin(size(A))より大きくするのは理にかなっていません。その場合は、あなたが望むものに対してより多くの制約が必要です。 – Memming