奇异值分解的计算方法
1. 对称矩阵特征值计算的 QR 算法
在计算对称矩阵特征值时,若使用特定的位移 $a_{(m - 1)n,n}$,在大多数情况下能实现快速收敛,使矩阵 $A_m$ 达到如下形式:
$A_m =
\begin{bmatrix}
T_m & 0 \
0^T & \lambda
\end{bmatrix}$
其中,$T_m \in R^{(n - 1)×(n - 1)}$ 是三对角对称矩阵,$\lambda$ 是 $A_1$ 的一个特征值。这种情况下,可采用收缩(deflation)的方法,将带位移的 QR 算法聚焦于 $(n - 1)×(n - 1)$ 的前主子矩阵 $T_m$。
以下是计算 $n×n$ 对称矩阵特征值的最终算法:
算法 15:带位移的 QR 算法
- 输入 :$A = A^T \in R^{n×n}$。
- 输出 :近似特征值和特征向量。
1. 将 $A$ 约化为三对角形式。
2. 对于 $k = n$ 到 $2$ 执行以下操作:- 当 $|a_{k - 1,k}| > \epsilon$ 时:
- 计算 $QR = A - a_{kk}I$。
- 设置 $A := RQ + a_{kk}I$。
- 记录特征值 $\lambda_k = a_{kk}$。
- 当 $|a_{k - 1,k}| > \epsilon$ 时: