Логотип

BasedCalc

SVD-разложение матриц

Введение

SVD (сингулярное разложение, от англ. Singular Value Decomposition) — это представление матрицы в виде произведения трех матриц: ортогональной (или унитарной) матрицы, диагональной матрицы и ещё одной ортогональной (или унитарной) матрицы. SVD-разложение является важным инструментом в линейной алгебре и используется в различных областях, включая обработку изображений, уменьшение размерности данных и решение систем линейных уравнений.

Операция

Для любой матрицы AA размера m×nm \times n существует разложение:

A=UΣVTA = U \Sigma V^T

где:

  • UU — ортогональная (или унитарная) матрица размера m×mm \times m
  • Σ\Sigma — диагональная матрица размера m×nm \times n с сингулярными числами на диагонали
  • VV — ортогональная (или унитарная) матрица размера n×nn \times n

Свойства

  • Ортогональность: Матрицы UU и VV ортогональны, то есть UTU=IU^TU = I и VTV=IV^TV = I.
  • Сингулярные числа: Диагональные элементы Σ\Sigma называют сингулярными числами матрицы AA. Они всегда неотрицательны и упорядочены по убыванию.
  • Инвариантность нормы: Норма Фробениуса матрицы AA равна норме матрицы Σ\Sigma, то есть AF=ΣF\|A\|_F = \|\Sigma\|_F.
  • Ранг матрицы: Количество ненулевых сингулярных чисел равно рангу матрицы AA.

Примеры использования

Пример 1: Матрица 2x2

Пусть AA - матрица размера 2×22 \times 2:

A=(3113)A = \begin{pmatrix} 3 & 1 \\ 1 & 3 \end{pmatrix}

Пример SVD-разложения:

U=(22222222),Σ=(4002),V=(22222222)U = \begin{pmatrix} \frac{\sqrt{2}}{2} & \frac{\sqrt{2}}{2} \\ \frac{\sqrt{2}}{2} & -\frac{\sqrt{2}}{2} \end{pmatrix}, \quad \Sigma = \begin{pmatrix} 4 & 0 \\ 0 & 2 \end{pmatrix}, \\ V = \begin{pmatrix} \frac{\sqrt{2}}{2} & \frac{\sqrt{2}}{2} \\ \frac{\sqrt{2}}{2} & -\frac{\sqrt{2}}{2} \end{pmatrix}

Таким образом:

A=UΣVTA = U \Sigma V^T

Пример 2: Матрица 3x3

Пусть AA - матрица размера 3×33 \times 3:

A=(100010000)A = \begin{pmatrix} 1 & 0 & 0 \\ 0 & 1 & 0 \\ 0 & 0 & 0 \end{pmatrix}

Пример SVD-разложения:

U=(100010001),Σ=(100010000),V=(100010001)U = \begin{pmatrix} 1 & 0 & 0 \\ 0 & 1 & 0 \\ 0 & 0 & 1 \end{pmatrix}, \quad \Sigma = \begin{pmatrix} 1 & 0 & 0 \\ 0 & 1 & 0 \\ 0 & 0 & 0 \end{pmatrix}, \\ V = \begin{pmatrix} 1 & 0 & 0 \\ 0 & 1 & 0 \\ 0 & 0 & 1 \end{pmatrix}

Таким образом:

A=UΣVTA = U \Sigma V^T

Часто задаваемые вопросы (FAQ)

  • Что такое сингулярное разложение?

    • Сингулярное разложение (SVD) — это представление матрицы в виде произведения трех других матриц, что позволяет легко исследовать её структуру и свойства.
  • В чем преимущества SVD-разложения?

    • SVD-разложение позволяет уменьшить размерность данных, улучшить численную устойчивость вычислений, использовать его для сжатия изображений и многого другого.

Примеры из жизни

  • Обработка изображений: SVD используется для сжатия изображений, уменьшения размерности данных и удаления шума.
  • Рекомендательные системы: В фильтрации и анализе данных для рекомендаций, например, в Netflix, для персонализации рекомендаций фильмов на основе предпочтений пользователей.
  • Биоинформатика: Анализ данных микрочипов и геномной информации, где важно выявление подпространств и снижение размерности.

Ссылки на литературу и ресурсы