私は現在、一連の共分散行列のオンライン推定アルゴリズムを実装していますが、数値エラーが原因で、共分散行列は常に対称ではありません。
私は現在、上の三角行列を下の三角行列にミラーリングすることでこれを解決しています。
for i=1:T
tempSigma(:, :, i) = eye(D)/sigmaT(:,:,i);
temp = triu(tempSigma(:,:,i), 1);
tempSigma(:, :, i) = triu(tempSigma(:, :, i));
tempSigma(:, :, i) = tempSigma(:, :, i) + temp';
end
大きな *T* の場合、すべての単一の行列をループすると非常に遅くなります。Matlabでこれを高速化する方法はありますか?