В задаче QR разложения докажи что вектор b_i (полч...

تم الإنشاء في: ٢٠ مارس ٢٠٢٥

تمت الإجابة باستخدام O1 بواسطة Chat01

سؤال

В задаче QR разложения докажи что вектор b_i (полчены ортогонализацией грамма шмидта) имеют строго положительную норму

الفكرة

Examining QR decomposition

I'm focusing on the proof that each vector bkb_k from Gram-Schmidt orthogonalization has a strictly positive norm. This involves subtracting components along previously computed orthonormal basis vectors.

Establishing vector positivity

I'm working through the idea that if vectors a1,a2,,aka_1, a_2, \ldots, a_k are linearly independent, then bkb_k isn't zero, ensuring each bkb_k has a strictly positive norm.

Reasoned about QR decomposition and norms for 6 seconds

الإجابة

Ниже приведена стандартная идея доказательства того, что на каждом шаге ортогонализации Грама–Шмидта очередной вектор bib_i (до нормировки) не вырождается в ноль и, следовательно, имеет строго положительную норму.


Постановка задачи

Пусть дан набор линейно независимых векторов

a1,  a2,  ,  anRma_1,\; a_2,\; \dots,\; a_n \in \mathbb{R}^m

(или из любого другого векторного пространства над полем R\mathbb{R}, где определено скалярное произведение).

Последовательность векторов {bi}\{b_i\} в классическом методе Грама–Шмидта строится по формулам:

  1. Начинаем с

    b1  =  a1.b_1 \;=\; a_1.
  2. На kk-м шаге (при k2k \ge 2) «вычитаем проекции» aka_k на уже построенные векторы b1,,bk1b_1,\dots,b_{k-1}:

    bk  =  ak    j=1k1bj,  akbj,  bj  bj.b_k \;=\; a_k \;-\; \sum_{j=1}^{k-1} \frac{\langle b_j,\;a_k\rangle}{\langle b_j,\;b_j\rangle}\;b_j.

    Здесь ,\langle \cdot,\cdot\rangle — скалярное произведение (евклидово в Rm\mathbb{R}^m).

Затем в классической QR-факторизации вектор qkq_k получается нормировкой bkb_k:

qk  =  bkbk.q_k \;=\; \frac{b_k}{\|b_k\|}.

Для того чтобы qk\|q_k\| было определено, необходимо bk0\|b_k\|\neq 0. Поэтому важно показать, что bk0b_k \neq 0, то есть bk>0\|b_k\|>0 на каждом шаге.


Идея доказательства

  1. Линейная независимость исходных векторов.

    По условию задачи векторы a1,,ana_1,\dots,a_n — линейно независимы. Это означает, что если

    α1a1++αnan=0 \alpha_1 a_1 + \cdots + \alpha_n a_n = 0

    (нулевой вектор), то все αi=0\alpha_i = 0.

  2. Если bk=0b_k = 0, тогда aka_k выражается через предыдущие векторы a1,,ak1a_1,\dots,a_{k-1}.

    Предположим, что на kk-м шаге (где 1<kn1 < k \leq n) получилось bk=0b_k = 0. Из определения:

    bk  =  akj=1k1bj,  akbj,  bj  bj  =  0.b_k \;=\; a_k - \sum_{j=1}^{k-1} \frac{\langle b_j,\;a_k\rangle}{\langle b_j,\;b_j\rangle}\;b_j \;=\; 0.

    Это означает

    ak  =  j=1k1bj,  akbj,  bj  bj.a_k \;=\; \sum_{j=1}^{k-1} \frac{\langle b_j,\;a_k\rangle}{\langle b_j,\;b_j\rangle}\;b_j.

    Но каждый bjb_j сам является линейной комбинацией a1,,aja_1,\dots,a_j (по построению на предыдущих шагах). Следовательно, aka_k оказался линейной комбинацией a1,a2,,ak1a_1, a_2, \dots, a_{k-1}.

    Однако по условию a1,,aka_1,\dots,a_k — линейно независимы. Прийти к тому, что aka_k выражается через предыдущие a1,,ak1a_1,\dots,a_{k-1}, значит противоречить этой независимости.

  3. Вывод: bk0b_k \neq 0.

    Поскольку предположение bk=0b_k = 0 привело к противоречию, заключаем, что на самом деле bk0b_k \neq 0. А значит, bk>0\|b_k\|>0 (его норма строго положительна).

  4. Нормировка и qkq_k.

    Таким образом, вектор qk=bkbkq_k = \tfrac{b_k}{\|b_k\|} корректно определён, и метод Грама–Шмидта завершается без вырождения на каждом шаге.


Суть доказательства в одном предложении

Если бы на kk-м шаге алгоритма Грама–Шмидта возник нулевой вектор bkb_k, это означало бы, что aka_k является линейной комбинацией предыдущих векторов a1,,ak1a_1,\dots,a_{k-1}, что противоречит линейной независимости исходного набора.


Итог: Поскольку bk0b_k \neq 0 для всех kk, векторы bib_i имеют строго положительную норму и, следовательно, в методе Грама–Шмидта всегда можно корректно перейти к ортонормированным векторам qi=bibiq_i = \tfrac{b_i}{\|b_i\|}.

سؤال

В преобразовании хаусхолдера покажи, как могло случится что u* = 0 и что это значит геометрически. Здесь u* = x +- ||x||_2 e_1

الفكرة

Understanding Householder transformation

I'm pondering the geometric meaning of u=0u^* = 0 in the Householder transformation. This happens when the selected sign leads to trivial transformations.

Reasoned about Householder transformation and u* for 6 seconds

الإجابة

Ниже кратко изложено, в каких обстоятельствах при построении преобразования Хаусхолдера может получиться вектор u=0u^* = 0 и что это означает с геометрической точки зрения.


Что такое uu^* в преобразовании Хаусхолдера

Пусть мы хотим «отразить» (преобразовать) вектор xRnx \in \mathbb{R}^n так, чтобы он стал параллелен базисному вектору e1=(1,0,,0)Te_1 = (1,0,\dots,0)^T. Обычно выбирают

u  =  x  ±  x2e1.u^* \;=\; x \;\pm\; \|x\|_2 \, e_1.

Затем задают

u  =  uu2,u \;=\; \frac{u^*}{\|u^*\|_2},

после чего строят матрицу Хаусхолдера

P=I    2uuT.P = I \;-\; 2\,u\,u^T.

Это отражение в гиперплоскости, задаваемой ортогонально вектору uu, и оно переводит xx в ±x2e1\pm \|x\|_2\, e_1.


Как может получиться u=0u^* = 0

  1. Рассмотрим формулу

    u=x  ±  x2e1.u^* = x \;\pm\; \|x\|_2 \, e_1.
  2. Случай x=x2e1x = \mp\,\|x\|_2 \, e_1.
    Предположим, что xx уже совпадает по направлению (но не обязательно по знаку) с базисным вектором e1e_1. Тогда:

    x=αe1,где α=±x2.x = \alpha e_1, \quad \text{где } \alpha = \pm\,\|x\|_2.
    • Если мы выберем знак в формуле для uu^* так, что α=x2\alpha = \mp\|x\|_2, то есть «минус» там, где уже стоит «плюс», или наоборот, — то в скобках может возникнуть взаимная компенсация.
    • Конкретнее, если x=x2e1x = -\|x\|_2\, e_1 и мы поставим «++» в формуле x+x2e1x + \|x\|_2 e_1, то получим: u  =  (x2e1)  +  x2e1  =  0. u^* \;=\; \bigl(-\|x\|_2\, e_1\bigr) \;+\; \|x\|_2\, e_1 \;=\; 0.

    Аналогично, если x=+x2e1x = +\|x\|_2\, e_1 и мы выберем «-» в формуле.

Таким образом, главная причина, почему u=0u^* = 0 может получиться, — это когда исходный вектор xx уже «лежит» на прямой, заданной e1e_1, и мы берём неподходящий знак в ±\pm.


Геометрический смысл u=0u^* = 0

  1. Отсутствие необходимости «отражать».
    Если xx уже параллелен e1e_1 и мы выбираем именно тот знак, который полностью компенсирует xx добавлением/вычитанием x2e1\|x\|_2\, e_1, это означает, что мы «пытались» построить отражение, которое… не нужно.
    Геометрически это означает, что преобразование Хаусхолдера, предназначенное «сдвинуть» xx на ось, фактически вырождается в тождественное отображение (или не определено через данную формулу, так как нормировать нулевой вектор невозможно).

  2. Отражение, которое превращается в тождественную матрицу.
    Если u=0u^* = 0, мы не сможем построить нужный u=u/uu = u^*/\|u^*\|. Формально «матрица Хаусхолдера» P=I2u(u)Tu2P = I - 2 \frac{u^* (u^*)^T}{\|u^*\|^2} перестаёт иметь смысл, так как знаменатель равен нулю. Но в таком случае нам вообще и не нужно никакое отражение: вектор xx уже там, где мы хотели его получить (на оси, задаваемой e1e_1). Говоря проще, отражение «не нужно», и естественным преобразованием для «уже нужного» вектора является просто тождественное.


Коротко

  • Когда xx направлен вдоль e1e_1, аккуратный выбор знака «++» или «-» способен привести к тому, что x±x2e1x \pm \|x\|_2\, e_1 окажется нулевым.
  • Геометрически это значит, что «строим» отражение там, где отражать нечего, поэтому конструкция вырождается: u=0u^* = 0 и матрица Хаусхолдера сводится к тождеству (или, точнее, в общем виде не определяется через указанную формулу).

Таким образом, u=0u^*=0 указывает на то, что вектор xx уже лежит по направлению (или строго противоположен направлению) выбранного эталонного вектора e1e_1, и никакого «реального» отражения в данном шаге фактически не требуется.

سؤال

Покажи, что в QR разложении выполнено равенство P_1^TP_2^TP_3^TP_4^TR*=QR, где A матрица 54, Q оьразовано первыми четырьмя столбцами матрицы P_1^TP_2^TP_3^TP_4^T, R оьразовано первыми четырьмя строками R

الفكرة

Applying Householder transformations

I’m factoring a 5x4 matrix using Householder transformations to achieve an upper triangular matrix. Each transformation zeroes out subdiagonal entries, culminating in QR factorization with Q as the product of P matrices and R as the triangular matrix.

Confirming matrix dimensions

I’m examining the final matrix R*, which is either 5x4 or 5x5. It’s crucial to align P^T transformations consistently to define Q as P_1^T P_2^T P_3^T P_4^T.

Ensuring matrix integrity

I’m making sure that each P_i is orthonormal, so their transposes match, establishing R as the top 4 rows of R* and confirming QR factorization.

Mapping out matrix relationships

I’m piecing together that R is the top 4 rows of R*, which is 5x4, creating a 4x4 matrix. This ensures the product QR aligns with Q times the submatrix.

Clarifying matrix structure

I’m confirming that Q is the 5x4 submatrix of P_1^T P_2^T P_3^T P_4^T, while R represents the top 4 rows of R*, forming a 4x4 matrix.

Breaking down matrix product

I’m tracing how multiplying the entire 5x4 matrix R* by the orthogonal 5x5 matrix P_1^T P_2^T P_3^T P_4^T results in the earlier derived QR matrix.

Reasoned about QR decomposition and equality for 27 seconds

الإجابة

Ниже изложена стандартная схема (и идея её доказательства) того, что, если матрица AA имеет размер 5×45\times 4 и мы последовательно строим четыре преобразования Хаусхолдера P1,,P4P_1,\dots,P_4 (каждое из них размера 5×55\times 5), то в конечном итоге получается разложение вида

A  =  P1TP2TP3TP4TQ  R5×4,A \;=\; \underbrace{P_1^T\,P_2^T\,P_3^T\,P_4^T}_{Q^*}\;\underbrace{R^*}_{5\times 4},

где:

  1. Матрица RR^* является «почти верхнетреугольной» 5×45\times 4-матрицей (точнее, её верхние 4×44\times 4 элементы образуют верхнетреугольную матрицу, а пятая строка может содержать нули или какие-то элементы в последнем столбце — зависит от шага построения).
  2. Матрица PiP_i — это отражение Хаусхолдера (ортогональная матрица, причём PiT=PiP_i^T = P_i).

Обычно для получения «стандартного» QRQR-разложения размером 5×45\times 4 (то есть где QQ имеет размер 5×45\times 4, а RR4×44\times 4), делают так:

  • Берут первые четыре столбца из произведения P1TP2TP3TP4TP_1^T\,P_2^T\,P_3^T\,P_4^T (которые сами по себе дают матрицу размера 5×45\times 4) и называют её QQ.
  • Берут первые четыре строки из RR^* (это будет 4×4R\underbrace{4\times 4}_{R}-подматрица сверху) и называют её RR.

Нужно показать, что тогда

P1TP2TP3TP4T  R  =  QR.P_1^T\,P_2^T\,P_3^T\,P_4^T\;R^* \;=\; Q\,R.

Именно это равенство означает, что если мы «урежем» справа произведение P1TP2TP3TP4TP_1^T P_2^T P_3^T P_4^T до первых четырёх столбцов (т. е. возьмём QQ) и «урежем» сверху RR^* до первых четырёх строк (т. е. возьмём RR), то их произведение даёт тот же результат, что и умножение полноразмерных QRQ^*\cdot R^*. Ниже — основной контур этого доказательства.


Шаг 1. Итоговое произведение после четырёх отражений

  1. На каждом шаге отражения Хаусхолдера (скажем, P1P_1, затем P2P_2, и т. д.) умножаются слева на текущую матрицу:

    P1A=A(1),P2A(1)=A(2),P3A(2)=A(3),P4A(3)=A(4),P_1 A = A^{(1)}, \quad P_2 A^{(1)} = A^{(2)}, \quad P_3 A^{(2)} = A^{(3)}, \quad P_4 A^{(3)} = A^{(4)},

    причём A(4)A^{(4)} и есть та самая «почти верхнетреугольная» матрица, которую мы обозначаем за RR^*.
    Тогда ясно, что

    A(4)  =  P4P3P2P1A  =  R.A^{(4)} \;=\; P_4\,P_3\,P_2\,P_1\,A \;=\; R^*.

    Отсюда перепишем AA «справа»:

    A  =  (P1TP2TP3TP4T)  R.A \;=\; (P_1^T\,P_2^T\,P_3^T\,P_4^T)\;R^*.

    Обозначим для удобства

    Q  =  P1TP2TP3TP4T.Q^* \;=\; P_1^T\,P_2^T\,P_3^T\,P_4^T.

    Тогда A=Q  RA = Q^*\;R^*.

  2. Каждая матрица PiP_i ортогональна (так как это отражение Хаусхолдера), следовательно PiT=Pi1=PiP_i^T = P_i^{-1} = P_i. Поэтому и QQ^* ортогональна, но полная размерность её — 5×55\times 5.


Шаг 2. Как выделяются нужные блоки QQ и RR

  • Матрица QQ. Берём первые четыре столбца из QQ^* (то есть выбрасываем последний, 5-й столбец). Поскольку QQ^*5×55\times 5-матрица, результат будет 5×45\times 4-матрица, что и нужно для искомого QQ.

  • Матрица RR. Берём первые четыре строки из RR^*. Так как RR^*5×45\times 4-матрица, её верхние четыре строки образуют матрицу 4×44\times 4, что и есть искомое RR.

То есть:

Q  =  Q(взять первые 4 столбца),R  =  R(взять первые 4 строки).Q \;=\; Q^*\Big|_{\text{(взять первые 4 столбца)}}, \quad R \;=\; R^*\Big|_{\text{(взять первые 4 строки)}}.

Говоря формально,

Q  =  [Q        q5],R  =  [Rr5T],Q^* \;=\; \bigl[ \,Q\;\;\bigl|\bigr.\;\;q_5 \bigr], \quad R^* \;=\; \begin{bmatrix} R \\[6pt] r_5^T \end{bmatrix},

где q5q_5 — 5-й столбец QQ^*, а r5Tr_5^T — 5-я строка RR^*.


Шаг 3. Доказательство равенства QR=QRQ^*\,R^* = Q\,R

Рассмотрим покомпонентно произведение

QR  =  [Q        q5]  [Rr5T].Q^*\,R^* \;=\; \bigl[ \,Q\;\;\bigl|\bigr.\;\;q_5 \bigr] \; \begin{bmatrix} R \\[3pt] r_5^T \end{bmatrix} .

Умножение блоков здесь даёт:

QR  =  QR  +  q5r5T.Q^*\,R^* \;=\; Q \cdot R \;+\; q_5 \cdot r_5^T.

Нужно показать, что второй блок q5r5Tq_5 \cdot r_5^T на самом деле даёт вклад, который «зануляется» именно в тех местах, где могла бы быть разница (по сути, нижние строки и/или правые столбцы).

В классическом пошаговом построении RR^* (четырьмя отражениями) к моменту применения четвёртого отражения у нас уже обнулены нужные «поддиагональные» элементы, поэтому вектор r5r_5 либо является нулевым (если мы реально получили строго верхнетреугольную матрицу 5×4), либо таков, что при умножении q5r5Tq_5 \cdot r_5^T эти «лишние» элементы не влияют на первые 4 строки и 4 столбца результирующего произведения.

Другими словами, в стандартном алгоритме Хаусхолдера после последнего шага «хвостовые» элементы (в пятой строке и за пределами первых 4 столбцов) уже не затрагивают блок 14,141\ldots4,1\ldots4, и в итоге

QR  =  QR(если смотреть на первые 4 строки и 4 столбца).Q^*\,R^* \;=\; Q\,R \quad \text{(если смотреть на первые 4 строки и 4 столбца)}.

С учётом же полной размерности получается именно равенство матриц 5×45\times 4 (правая часть есть произведение 5×45\times 4).

Коротко: при умножении «лишний» пятый столбец q5q_5 и пятая строка r5Tr_5^T даёт нулевой вклад там, где формируется «блок» размера 5×45\times 4. Именно поэтому можно свободно заменить QQQ^*\to Q (урезая один столбец) и RRR^*\to R (урезая одну строку), сохранив то же произведение.


Итог: P1TP2TP3TP4TR=QRP_1^T P_2^T P_3^T P_4^T R^* = Q\,R

Таким образом, мы получили, что

  1. QQ есть первые 4 столбца ортогональной матрицы Q=P1TP2TP3TP4TQ^* = P_1^T P_2^T P_3^T P_4^T, т. е. dim(Q)=5×4\dim(Q)=5\times 4.
  2. RR есть первые 4 строки RR^*, т. е. dim(R)=4×4\dim(R)=4\times 4.
  3. Произведение (P1TP2TP3TP4T)  R(P_1^T P_2^T P_3^T P_4^T)\;R^* в точности совпадает с QRQ\,R.

Фактически это и говорит, что

A  =  QR  =  QRA \;=\; Q^* R^* \;=\; Q\,R

и есть искомое QRQR-разложение размера 5×45\times 4.

سؤال

Докажи единственность QR разложения

الفكرة

Establishing uniqueness

I’m starting by showing that for a full-rank matrix A=QRA = QR, with QQ having orthonormal columns and RR upper triangular, the decomposition is unique up to signs on RR's diagonal entries, usually requiring nonnegative entries.

Reasoned about QR decomposition uniqueness for 6 seconds

الإجابة

Ниже сформулировано и доказано классическое утверждение о том, что QR-разложение матрицы AA (при некоторых стандартных соглашениях, например, о знаках диагональных элементов RR) однозначно. Для упрощения будем рассматривать случай, когда AA имеет полный столбцовый ранг и размер m×nm\times n (mnm\ge n).


Утверждение (единственность QR-разложения)

Пусть матрица ARm×nA\in \mathbb{R}^{m\times n} имеет полный столбцовый ранг, то есть rank(A)=n\text{rank}(A)=n. Предположим, что существуют два разложения:

A  =  QRиA  =  Q~R~,A \;=\; Q R \quad\text{и}\quad A \;=\; \widetilde{Q}\,\widetilde{R},

где

  • Q,Q~Rm×nQ, \widetilde{Q}\in \mathbb{R}^{m\times n} — матрицы с ортонормированными столбцами (то есть QTQ=Q~TQ~=InQ^T Q = \widetilde{Q}^T \widetilde{Q} = I_n),
  • R,R~Rn×nR, \widetilde{R}\in \mathbb{R}^{n\times n} — верхнетреугольные матрицы (при классической формулировке QR-разложения).

Тогда, если мы дополнительно наложим требование, что диагональные элементы RR и R~\widetilde{R} положительны (или, по крайней мере, неотрицательны) по диагонали, получаем, что

Q=Q~иR=R~.Q = \widetilde{Q} \quad\text{и}\quad R = \widetilde{R}.

В частности, это показывает единственность разложения (при фиксированном выборе знаков или неотрицательности на диагонали RR).

Без условия о знаках (или неотрицательности) диагональных элементов в RR возникает двусмысленность в виде диагональных матриц ±1\pm 1 (см. ниже).


Ключевая идея доказательства

Пусть мы имеем два разложения одной и той же матрицы AA:

A=QRиA=Q~R~.A = Q\,R \quad\text{и}\quad A = \widetilde{Q}\,\widetilde{R}.

Тогда

QR=Q~R~.Q\,R = \widetilde{Q}\,\widetilde{R}.

Шаг 1. Домножим слева или справа

  1. Домножаем слева на QTQ^T.
    Получим

    QT(QR)  =  QT(Q~R~).Q^T \bigl(Q\,R\bigr) \;=\; Q^T \bigl(\widetilde{Q}\,\widetilde{R}\bigr).

    Так как QTQ=InQ^T Q = I_n, то левая часть упрощается:

    InR=QTQ~R~.I_n \, R = Q^T \,\widetilde{Q}\,\widetilde{R}.

    Итак,

    R=QTQ~R~.(1)R = Q^T\,\widetilde{Q}\,\widetilde{R}. \tag{1}
  2. Аналогично, можно домножить справа на R~1\widetilde{R}^{-1} (эта матрица обратима, поскольку R~\widetilde{R} верхнетреугольна с ненулевой диагональю — полный столбцовый ранг AA исключает нулевые диагональные элементы). Тогда

    QRR~1  =  Q~.Q\,R\,\widetilde{R}^{-1} \;=\; \widetilde{Q}.

    Итак,

    Q~  =  Q  (RR~1).(2)\widetilde{Q} \;=\; Q\; \bigl(R\,\widetilde{R}^{-1}\bigr). \tag{2}

Шаг 2. Рассмотрим матрицу QTQ~Q^T \widetilde{Q}

Из (2) видно, что

Q~  =  QM,где M=RR~1.\widetilde{Q} \;=\; Q\,M, \quad \text{где } M = R\,\widetilde{R}^{-1}.

Тогда

QTQ~  =  QT(QM)  =  (QTQ)  M  =  InM  =  M.Q^T \widetilde{Q} \;=\; Q^T (Q\,M) \;=\; (Q^T Q)\;M \;=\; I_n\,M \;=\; M.

Отсюда:

QTQ~=MиM=RR~1.Q^T \widetilde{Q} = M \quad\text{и}\quad M = R \,\widetilde{R}^{-1}.

Но QTQ~Q^T \widetilde{Q} — это   n×n\;n\times n-матрица, являющаяся ортогональной, так как QQ и Q~\widetilde{Q} имеют ортонормированные столбцы. Значит,

M=QTQ~есть ортогональная(MTM=In).M = Q^T \widetilde{Q} \quad \text{есть ортогональная} \quad (M^T M = I_n).

Шаг 3. M=RR~1M = R\,\widetilde{R}^{-1} и «верхняя треугольность»

Одновременно из (1) имеем:

R  =  (QTQ~)R~  =  MR~.R \;=\; \bigl(Q^T\widetilde{Q}\bigr)\,\widetilde{R} \;=\; M\,\widetilde{R}.

Но RR и R~\widetilde{R} — обе верхние треугольные. Тогда и M=RR~1M = R\,\widetilde{R}^{-1} (или R~1R\widetilde{R}^{-1} R) автоматически должна быть верхнетреугольной и ортогональной.

Ортогональная верхнетреугольная матрица

Матрица MM, будучи одновременно верхней треугольной и ортогональной, непременно должна быть диагональной. Действительно, рассмотрим любую нетривиальную верхнетреугольную матрицу MM. Если она ещё ортогональна, то все внедиагональные элементы должны обращаться в ноль. Иначе не соблюдалась бы норма столбцов/строк.

Значит,

M  =  [d1000d2000dn],M \;=\; \begin{bmatrix} d_1 & 0 & \cdots & 0 \\ 0 & d_2 & \cdots & 0 \\ \vdots & \vdots & \ddots & \vdots \\ 0 & 0 & \cdots & d_n \end{bmatrix},

и каждая di=±1d_i = \pm 1, так как для ортогональной диагональной матрицы длина каждого столбца должна быть 1, следовательно di=1|d_i|=1.

Шаг 4. Связь со знаками на диагонали RR

Таким образом, мы находим

R  =  MR~  =  DR~,где D=diag(±1,,±1).R \;=\; M \,\widetilde{R} \;=\; D \,\widetilde{R}, \quad \text{где } D=\mathrm{diag}(\pm 1,\dots,\pm 1).

Аналогично, из Q~=QM\widetilde{Q} = Q\,M получаем

Q~  =  QD.\widetilde{Q} \;=\; Q\,D.

Отсюда и следует, что без дополнительного условия (например, «диагональные элементы RR неотрицательны») QR-разложение определено с точностью до знаков ±1\pm 1 на диагонали. То есть:

QR=(QD)(D1R).Q\,R = (Q\,D)\,(D^{-1}R).

Но если мы оговариваем (как это принято в большинстве реализаций), что диагональные элементы матрицы RR строго положительны (или неотрицательны), то матрица DD вынужденно становится единичной (так как переключение знака на диагонали противоречило бы условию на RR). В этом случае

D=In,откудаQ~=Q,    R~=R.D = I_n, \quad \text{откуда} \quad \widetilde{Q} = Q,\;\;\widetilde{R} = R.

Итак, при выбранном соглашении о знаке диагонали факторизация QRQR единственна.


Итог

  1. В общем случае (без соглашений о знаке диагонали RR) QR-разложение определяется с точностью до умножения QQ справа на диагональную матрицу D=diag(±1,,±1)D=\mathrm{diag}(\pm1,\dots,\pm1) и, соответственно, умножения RR слева на D1D^{-1}.
  2. Если дополнительно потребовать (как обычно делают), чтобы диагональные элементы RR были положительны (или неотрицательны), то такая двусмысленность исчезает — матрица DD должна быть единичной, и тем самым QRQR-разложение становится единственным.

مشاركة هذا السؤال والجواب