1. 程式人生 > >求偽逆的三種方法:直接,SVD,QR及具體的應用

求偽逆的三種方法:直接,SVD,QR及具體的應用

%% SVD分解求偽逆
% 原理和公式:1. SVD分解得到的矩陣:U和V是正交陣,S是對角陣
%            2. 正交陣的逆=轉置
%            3. 對角陣的逆=非零元素求倒
% Step1: 求解A的SVD分解
 [U,S,V] = svd(A); % A = U*S*V'
% Step2: 將S中的非零元素求倒
 T=S;
 T(find(S~=0)) = 1./S(find(S~=0));
% Step3: 求invA
svdInvA = V * T' * U';