0

私は持っている :

 A =
 1     2     3
 2     4     5
 5     5     5

[U S V]=svd(A)  

SVD関数からA行列の次元を削除するにはどうすればよいですか?

4

1 に答える 1

1

マトリックスの縮小版を入手したいと思っていると思いますA

これはPCA、検索を使用して行われます。たとえば、縮小された行列に次元Aを持たせたい場合:K

[m, ~] = size(A);

Sigma = 1.0/m .* A' * A;
[U, S, ~] = svd(Sigma);

newA = zeros(size(A, 1), K);

for i = 1:size(A, 1),
    for j = 1:K,
        x = A(i, :)';
        projection_k = x' * U(:, j);
        newA(i, j) = projection_k;
    end
end
end

したがって、マトリックスは次元newAのある縮小版にAなります。K

について検索した方がよいでしょうPCA

于 2015-05-26T13:32:00.370 に答える