Логотип

BasedCalc

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

Введение

QR-разложение — это представление матрицы как произведения двух матриц: ортогональной матрицы QQ и верхней треугольной матрицы RR. Оно играет важную роль в численных методах линейной алгебры и используется для решения систем линейных уравнений, вычисления собственных значений и других задач.

Операция

Процесс QR-разложения матрицы AA заключается в нахождении матриц QQ и RR таких, что:

A=QRA = QR

Где:

  • QQ — ортогональная матрица, т.е. QTQ=IQ^T Q = I, где II — единичная матрица.
  • RR — верхняя треугольная матрица.

QR-разложение может выполняться различными методами, такими как метод Грама-Шмитта, отражения Хаусхолдера или вращения Гивенса.

Свойства

  • Ортогональность: Матрица QQ является ортогональной (QTQ=IQ^T Q = I).
  • Треугольная природа: Матрица RR является верхней треугольной.
  • Устойчивость к погрешностям: QR-разложение является стабильным методом для решения некоторых численных задач.
  • Единственность: Если матрица AA имеет линейно независимые столбцы, то её QR-разложение существует и единственно (до знака элементов на главной диагонали матрицы RR).

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

Пошаговое разложение

Рассмотрим разложение матрицы AA размером 2×22 \times 2:

A=(1234)A = \begin{pmatrix} 1 & 2 \\ 3 & 4 \end{pmatrix}

Для данной матрицы при QR-разложении мы получаем матрицы QQ и RR следующим образом:

Q=(0.3160.9490.9490.316)R=(3.1624.42700.632)Q = \begin{pmatrix} -0.316 & -0.949 \\ -0.949 & 0.316 \end{pmatrix} \\ R = \begin{pmatrix} -3.162 & -4.427 \\ 0 & -0.632 \end{pmatrix}

Шаг 1: Нахождение матрицы QQ

  1. Первоначально мы находим вектор q1q_1 как нормированный первый столбец матрицы AA:

    q1=(13)q_1 = \begin{pmatrix} 1 \\ 3 \end{pmatrix}

    Норма q1q_1 равна (\sqrt6 = \sqrt10). Нормируем вектор q1q_1 и меняем его знак:

    u1=110(13)=(0.3160.949)u_1 = \frac{-1}{\sqrt{10}} \begin{pmatrix} 1 \\ 3 \end{pmatrix} = \begin{pmatrix} -0.316 \\ -0.949 \end{pmatrix}
  2. Следующим шагом является нахождение q2q_2, который ортогонален q1q_1:

    q2=(24)(q1T(24)q1Tq1)q1q_2 = \begin{pmatrix} 2 \\ 4 \end{pmatrix} - \left(\frac{q_1^T \begin{pmatrix} 2 \\ 4 \end{pmatrix}}{q_1^T q_1}\right) q_1

    Упрощая:

    projq1(q2)=1(0.3160.949)=(0.3160.949)\text{proj}_{q_1}(q_2) = -1 \cdot \begin{pmatrix} -0.316 \\ -0.949 \end{pmatrix} = \begin{pmatrix} 0.316 \\ 0.949 \end{pmatrix}

    Итоговое значение для q2q_2:

    q2=(0.9490.316)q_2 = \begin{pmatrix} -0.949 \\ 0.316 \end{pmatrix}
  3. Собираем полную матрицу QQ:

    Q=(0.3160.9490.9490.316)Q = \begin{pmatrix} -0.316 & -0.949 \\ -0.949 & 0.316 \end{pmatrix}

Шаг 2: Нахождение верхней треугольной матрицы RR

Матрица RR находится через произведение транспонированной матрицы QQ на AA:

R=QTA=(0.3160.9490.9490.316)T(1234)R = Q^T \cdot A = \begin{pmatrix} -0.316 & -0.949 \\ -0.949 & 0.316 \end{pmatrix}^T \cdot \begin{pmatrix} 1 & 2 \\ 3 & 4 \end{pmatrix}

Вычисляя элементы RR:

  • R11=3.162R_{11} = -3.162
  • R12=4.427R_{12} = -4.427
  • R22=0.632R_{22} = -0.632

Таким образом, QR-разложение матрицы AA состоит из матриц QQ и RR:

A=QR=(0.3160.9490.9490.316)(3.1624.42700.632)A = QR = \begin{pmatrix} -0.316 & -0.949 \\ -0.949 & 0.316 \end{pmatrix} \begin{pmatrix} -3.162 & -4.427 \\ 0 & -0.632 \end{pmatrix}

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

  • Что такое QR-разложение?

  • Это разложение матрицы на произведение ортогональной матрицы и верхней треугольной матрицы. Оно полезно для численных алгоритмов в линейной алгебре.

  • Для чего используется QR-разложение?

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

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

  • Численные методы: В алгоритмах, которые требуют решения систем линейных уравнений с высоким уровнем точности.
  • Машинное обучение: QR-разложение полезно для регрессионного анализа, где требуется минимизация функции ошибки.
  • Инженерные расчеты: Часто используется в задачах оптимизации и в реальном времени для обработки сигналов.

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