已知矩阵Z的SVD,求(Z+cI)⁻¹的SVD是否有技巧?
Great question! Let's break this down based on whether $Z$ is a normal matrix or not—this is the key distinction that determines how much we can leverage $Z$'s existing SVD.
First, a Quick Recap
We know the SVD of $Z$ (assuming $Z$ is an $n \times n$ square matrix, since $Z + cI$ is only defined for square matrices) is:
$$Z = U\Sigma V^T$$
Where:
- $U$ and $V$ are $n \times n$ orthogonal matrices (left and right singular vectors of $Z$)
- $\Sigma$ is an $n \times n$ diagonal matrix with non-negative singular values $\sigma_1, \sigma_2, ..., \sigma_n$ on its diagonal
Case 1: $Z$ is a Normal Matrix
If $Z$ is normal (e.g., symmetric, skew-symmetric, or unitary matrices), its SVD simplifies to its spectral decomposition—meaning $U = V$. This is the scenario where we have a direct, clean trick:
Rewrite $Z + cI$ using $Z$'s SVD:
$$Z + cI = U\Sigma U^T + cUU^T = U(\Sigma + cI)U^T$$
(Since $UU^T = I$ for orthogonal $U$)For $(Z + cI)$ to be invertible, none of the diagonal entries of $\Sigma + cI$ can be zero—i.e., $\sigma_i + c \neq 0$ for all $i$. Taking the inverse gives:
$$(Z + cI)^{-1} = U(\Sigma + cI){-1}UT$$This is exactly the SVD of $(Z + cI)^{-1}$:
- Left and right singular vector matrices: both $U$ (same as $Z$'s, since $U=V$)
- Singular value matrix: $(\Sigma + cI)^{-1}$, with diagonal entries $1/(\sigma_i + c)$ (note: if $\sigma_i + c$ is negative, the singular value is its absolute value, and you'd adjust the singular vectors with a sign matrix to keep them orthogonal)
Case 2: $Z$ is Not Normal
If $Z$ isn't normal, $U \neq V$, and there's no direct way to derive $(Z + cI)^{-1}$'s SVD solely from $Z$'s SVD. The issue is that adding $cI$ breaks the relationship between $Z$'s left and right singular vectors—$(Z + cI)$'s singular vectors won't inherit those of $Z$.
That said, if $|c|$ is very large, you can use a perturbation approximation:
$$(Z + cI)^{-1} = \frac{1}{c}\left(I - \frac{Z}{c} + \left(\frac{Z}{c}\right)^2 - \left(\frac{Z}{c}\right)^3 + ...\right)$$
You can substitute $Z = U\Sigma V^T$ into this series to get an approximate expression for $(Z + cI)^{-1}$, then extract an approximate SVD from that. But this is only valid for large $|c|$ and won't give you an exact SVD.
For exact results, you'll need to compute $Z + cI$ directly and then perform an SVD on it, or use other matrix decomposition methods (like QR) to find the inverse first, then derive its SVD.
内容的提问来源于stack exchange,提问作者Artem Moskalev

