1. Зачем нужно SVD? — Выход за пределы собственного разложения
Напоминание — ограничение, которое мы собираемся преодолеть. Собственное разложение $A = X\Lambda X^{-1}$ имеет три серьёзных ограничения:
- $A$ должна быть квадратной ($n \times n$).
- Даже будучи квадратной, $A$ может быть дефектной — недостаточно линейно независимых собственных векторов для формирования $X$.
- Собственные значения могут быть комплексными, даже для вещественной матрицы (вспомните матрицу поворота $\begin{pmatrix}0&-1\\1&0\end{pmatrix}$ с собственными значениями $\pm i$).
Обещание SVD
Любая матрица $A \in \mathbb{R}^{m \times n}$ — квадратная или прямоугольная, полного ранга или вырожденная — допускает разложение
$$A = U\,\Sigma\,V^{\!\top}$$где
- $U \in \mathbb{R}^{m \times m}$ — ортогональная матрица (её столбцы $\mathbf{u}_1,\dots,\mathbf{u}_m$ образуют ортонормированный базис $\mathbb{R}^m$).
- $V \in \mathbb{R}^{n \times n}$ — ортогональная матрица (её столбцы $\mathbf{v}_1,\dots,\mathbf{v}_n$ образуют ортонормированный базис $\mathbb{R}^n$).
- $\Sigma \in \mathbb{R}^{m \times n}$ — диагональная матрица с элементами $\sigma_1 \ge \sigma_2 \ge \cdots \ge \sigma_{\min(m,n)} \ge 0$ на диагонали.
Числа $\sigma_i$ называются сингулярными значениями. Столбцы $U$ — это левые сингулярные векторы; столбцы $V$ — правые сингулярные векторы.
Геометрический смысл
Читайте разложение справа налево как последовательность трёх операций над вектором $\mathbf{x}$: