3.0 KiB
3.0 KiB
Here’s the revised content with formulas wrapped in $
or $$
for Markdown compatibility:
步骤 1:验证矩阵对称性
确保 A
是实对称矩阵(即 $A = A^\top$),此时SVD可通过特征分解直接构造。
步骤 2:计算特征分解
对 A
进行特征分解:
A = Q \Lambda Q^\top
其中:
Q
是正交矩阵($Q^\top Q = I$),列向量为A
的特征向量。- $\Lambda = \text{diag}(\lambda_1, \lambda_2, \dots, \lambda_n)$,
\lambda_i
为A
的特征值(可能有正、负或零)。
步骤 3:构造奇异值矩阵 $\Sigma$
- 奇异值:取特征值的绝对值 $\sigma_i = |\lambda_i|$,得到对角矩阵:
\Sigma = \text{diag}(\sigma_1, \sigma_2, \dots, \sigma_n)
- 排列顺序:通常按
\sigma_i
降序排列(可选,但推荐)。
步骤 4:处理符号(负特征值)
- 符号矩阵 $S$:定义对角矩阵 $S = \text{diag}(s_1, s_2, \dots, s_n)$,其中:
s_i = \begin{cases} 1 & \text{if } \lambda_i \geq 0, \\ -1 & \text{if } \lambda_i < 0. \end{cases}
- 左奇异向量矩阵 $U$:调整特征向量的方向:
即U = Q S
U
的列为Q
的列乘以对应特征值的符号。
步骤 5:确定右奇异向量矩阵 $V$
由于 A
对称,右奇异向量矩阵 V
直接取特征向量矩阵:
V = Q
步骤 6:组合得到SVD
最终SVD形式为:
A = U \Sigma V^\top
验证:
U \Sigma V^\top = (Q S) \Sigma Q^\top = Q (S \Sigma) Q^\top = Q \Lambda Q^\top = A
(因为 $S \Sigma = \Lambda$,例如 $\text{diag}(-1) \cdot \text{diag}(2) = \text{diag}(-2)$)。
关键性质与注意事项
- 奇异值与特征值:
\Sigma
的非零对角元是|\Lambda|
的非零对角元。 - 零特征值:若 $\lambda_i = 0$,则 $\sigma_i = 0$,对应
U
和V
的列向量属于A
的核空间。 - 唯一性:
- 奇异值
\Sigma
唯一(按降序排列时)。 - 奇异向量
U
和V
的符号可能不唯一(因特征向量方向可反转)。
- 奇异值
- 计算效率:对称矩阵的SVD无需计算
AA^\top
或 $A^\top A$,直接通过特征分解获得。
示例
设对称矩阵 $A = \begin{bmatrix} 0 & 1 \ 1 & 0 \end{bmatrix}$:
- 特征分解:
- 特征值:
\lambda_1 = 1
, $\lambda_2 = -1$。 - 特征向量:$Q = \frac{1}{\sqrt{2}} \begin{bmatrix} 1 & 1 \ 1 & -1 \end{bmatrix}$。
- 特征值:
- 构造SVD:
- $\Sigma = \text{diag}(1, 1)$($|\lambda_i|$)。
- $S = \text{diag}(1, -1)$,故 $U = Q S = \frac{1}{\sqrt{2}} \begin{bmatrix} 1 & -1 \ 1 & 1 \end{bmatrix}$。
- $V = Q$。
- 结果:
A = \underbrace{\frac{1}{\sqrt{2}} \begin{bmatrix} 1 & -1 \\ 1 & 1 \end{bmatrix}}_U \underbrace{\begin{bmatrix} 1 & 0 \\ 0 & 1 \end{bmatrix}}_\Sigma \underbrace{\frac{1}{\sqrt{2}} \begin{bmatrix} 1 & 1 \\ 1 & -1 \end{bmatrix}^\top}_{V^\top}