0

我有 :

 A =
 1     2     3
 2     4     5
 5     5     5

[U S V]=svd(A)  

如何从 SVD 函数中删除 A 矩阵的维数?

4

1 回答 1

1

我假设您想获得简化版本的 matrix 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 回答