QR-разложение. Сингулярное разложение
Теория- Автор
- Издательство
Одним из вариантов мультипликативного разложения матрицы является QR-разложение, т.е. представление матрицы А в виде А = QP, где Q — ортогональная матрица, a R — верхняя треугольная матрица.
Построение QR-разложения матрицы А сводится к преобразованию этой матрицы путем последовательного умножения на ортогональные матрицы P1, Р2, ..., Ps специального вида так, чтобы в результате получилась верхняя треугольная матрица R = Ps...P1A. Полагая Q = (Ps...P1)-1, получаем представление А = QRy где матрица Q, согласно свойствам 7.4 и 7.5 ортогональных матриц (см. с. 200), является ортогональной.
Применяют два основных способа построения последовательности матриц P1, ... ,Рn. Для описания этих способов удобно интерпретировать ортогональные матрицы как матрицы ортогональных операторов в стандартном ортонормированном базисе в Rn, а матрицу А как набор столбцов a1, ... ,an, представляющих собой координаты векторов a1, ... , аn из Rn. Тогда ОА = 0(а1 ... аn) = (Оа1 ... Oan), где использованы свойства умножения блочных матриц, и поэтому умножение матрицы А слева на ортогональную матрицу О равносильно применению к каждому из векторов аi ортогонального оператора О, матрицей которого является О. Таким образом, задача сводится к последовательности ортогональных преобразований системы векторов a1, ..., an, в результате которой столбцы координат этой системы образуют верхнюю треугольную матрицу.
Метод вращений. В качестве элементарного ортогонального преобразования рассмотрим преобразование поворота Qij(φ) в двумерном подпространстве, образованном i-м и j-м векторами стандартного базиса в Rn (это подпространство естественно ассоциировать с плоскостью). Матрица такого преобразования имеет вид

и отличается от единичной элементами на пересечении i-й и j-й строк, i-ro и j-го столбцов. Эти элементы образуют матрицу второго порядка

которая на плоскости (в пространстве V2) определяет поворот вектора на угол φ. Если примененить преобразование с матрицей Qij(φ) к произвольному вектору а = (α1, αn), то изменятся только его i-я и j-я координаты, а остальные останутся прежними. При этом за счет выбора угла φ можно добиться, чтобы j-я координата вектора обнулилась. Для этого при i < j достаточно выбрать φ из условия
αisinφ αjcosφ= 0.
Рассмотрим последовательность преобразовании Qij(φ1j), j = 2,n, в результате которых вектор a1, представленный первым столбцом матрицы А, превратится в вектор а11 = (а111х 0 ... 0)T . При этом векторы а2,..., аn, представленные остальными столбцами матрицы А, преобразуются в некоторые векторы а12,..., a1n с координатами (а11l,..., a1nl)T , l = 2,n. Далее рассмотрим последовательность преобразований Q2j(φ2j), j = 3,n, при которой вектор а12 переходит в вектор а22 = (а112 a212 0 ... 0)T . При этом вектор а11 не изменится, так как преобразуются лишь те координаты, которые у этого вектора равны нулю. Продолжая процесс, мы получим систему векторов a11, ..., ann, координаты которых составляют верхнюю треугольную матрицу. Последовательность ортогональных матриц Qij(φij), i = 1,n-1, j = i+1,n, и есть искомая последовательность P1, ..., Рs.
Метод отражений. В этом методе в качестве элементарных ортогональных преобразований берут преобразования симметрии. Рассмотрим произвольный ненулевой вектор х0 из Rn. Пусть Н⊥- ортогональное дополнение одномерного линейного подпространства Нv = span{x0}- Согласно следствию 3.1, каждый вектор х ∈ Rn представляется в виде х = λx0 + х⊥, где λx0 — ортогональная проекция вектора х на Н0, а х⊥ — его ортогональная составляющая. Рассмотрим преобразова-ние
Qx = Q(λx0 + х⊥) = х⊥ — λx0 = х — 2λx0
(рис. 11.1). Нетрудно показать, что это преобразование является линейным. Кроме того, согласно теореме Пифагора,


(здесь рассматривается евклидова норма, соответствующая стандартному скалярному произведению в Rn). Поэтому линейный оператор Q является ортогональным.
Лучше всего в качестве вектора x0 взять вектор n с единичной нормой. Тогда λ = (x, n), а линейный оператор Q записывается в виде
Qx = х — 2(х, n)n, ||n|| = 1.
Линейный оператор Q указанного вида будем называть отражением.
Покажем, что для любых ненулевых векторов x и у из Rn найдется такое отражение О, что Ох = αу, т.е. вектор х преобразуется в вектор, коллинеарный у. Из определения от-ражения следует, что Ох — х = —2(х, n)n. Значит, искомое отражение должно определяться единичным вектором n, коллинеарным вектору Ох — х = αу — х. Отметим, что в этом случае число α определено с точностью до знака, так как ||αу|| = ||Ox|| = ||x|| и, значит, |||| = ||x||/||у||. Выбор знака — это выбор одного из двух возможных решений (рис. 11.2).
Итак, выбираем α = ||x|| / ||у|| и вычисляем вектор x0 = αy — х. Бели этот вектор нулевой, то векторы х и у коллинеарны (любой из них принадлежит линейной оболочке другого), и в качестве отражения следует взять тождественный оператор. Если x0 ≠ 0, то отражение О задается единичным вектором n = х0/||x0||. Действительно,


Поэтому

Столбцы матрицы А будем трактовать как столбцы коор-динат некоторых векторов a1,..., аn из Rn. Пусть е1,..., еn — стандартный ортонормированный базис в Rn. Рассмотрим ортогональное преобразование P1, которое вектор a1 переводит в вектор а11 = α1e1. Бели вектор ах ненулевой, это преобразование строится описанным выше способом, а если вектор a1 нулевой, то в качестве Р1 можно взять тождественный оператор.
Оператор P1 преобразует векторы а2, ..., a2 в некоторые векторы а12, ..., а1n. Рассмотрим оператор Р2, который преобразует вектор а12 = (а112а122 ... а1n2) в некоторый вектор Ра12 = а22 = (a212а2220 ... 0)T . Для этого в качестве вектора у можно взять любую линейную комбинацию базисных векторов е1 и е2. Некоторая свобода выбора оператора Р2 позволяет при этом добиться того, чтобы вектор e1, а значит и а11, не изменялся. Действительно, все векторы, попадающие в ортогональное дополнение Н⊥, остаются без изменений, и нам достаточно потребовать, чтобы вектор x0 = Р2a12 — a12 = αу — а12, задающий отражение Р2, был ортогонален вектору е1. Это и будет означать, что вектор е1 попадает в линейное подпространство которое состоит из всех векторов, ортогональных x0. Указанное условие будет выполняться, если оператор Р2 переводит вектор а12 — а112е1 = (0 а122 ... a1n2) в вектор α2е2, так как этот оператор определяется вектором x0 = α2е2— (а12 - a112e1), имеющим нулевую первую координату и потому ортогональным е2. Итак, оператор Р2 не изменяет вектор a11, преобразует вектор a12 в вектор a22 = (а212а222 0 ... 0) , а векторы aij, j = 3,n, в некоторые векторы a2j.
Продолжая процесс, мы на k-м шаге строим преобразование, которое не меняет базисные векторы еi, i = 1,k-1, но преобразует вектор ak-1k — k-11ke1 — ... — ak-1k-1,kek-1 в некоторый вектор, коллинеарный еk. Если k-й столбец исходной матрицы оказался нулевым, то и вектор аk будет нулевым и в процессе преобразований P1, ..., Pk-1 он останется нулевым. В этом случае в качестве очередного оператора Рk можно взять тождественный оператор.
Процесс ортогонализации. К QR-разложению непосредственное отношение имеет процесс ортогонализации Грама — Шмидта. Любую квадратную невырожденную матрицу А порядка n можно рассматривать как совокупность столбцов, представляющих собой координаты векторов f1, ..., fn в некотором фиксированном базисе n-мерного евклидова пространства Ε.
Так как матрица А невырождена, ее столбцы линейно неза-висимы, поэтому векторы f1,..., fn образуют в 6 базис, вообще говоря, неортонормированный. Процесс ортогонализации приводит к новому, уже ортонормированному базису e1,..., еn. Характерной особенностью процесса ортогонализации является то, что матрица перехода из нового базиса е к старому b является верхней треугольной. Действительно, из соотношений (3.9) следует, что

а матрица перехода из нового базиса е в старый f имеет вид

Записав координаты векторов еj, в фиксированном базисе евклидова пространства, получим ортогональную матрицу Q. Исходная матрица А и ортогональная матрица Q связаны между собой соотношениями А = QR, т.е. мы получили QR-раз-ложение матрицы А.
Еще раз отметим, что процесс ортогонализации Грама — Шмидта может использоваться для получения QR-разложения, если матрица является невырожденной. Кроме того, оказы-вается, что такой метод уступает методу вращений и методу отражений с точки зрения точности вычислений.
Единственность QR-разложения. Несложно привести пример, показывающий, что ^Д-разложение данной матрицы не является однозначным. Действительно, представление Е = ЕЕ единичной матрицы можно рассматривать в качестве ее QR-разложения, так как единичная матрица является одновре-менно ортогональной и верхней треугольной. Но и представление Е = (—Е)(—Е) также является QR-разложением единичной матрицы.
Природу неоднозначности, которую иллюстрирует приве-денный пример, раскрывает следующее рассуждение. Пусть Р — квадратная матрица, которая одновременно является и ортогональной, и верхней треугольной. Тогда Р является невырожденной матрицей, а Р-1 — ортогональной и верхней треугольной. Поэтому для любого QR-разложения матрицы А имеем А = QR = QPP-1R = (QP)(P-1R) = Q'R', т.е. еще одно QR-разложение матрицы А (при Р ≠ Е). Возникает вопрос, какие матрицы являются одновременно ортогональными и верхними треугольными?
Пусть Р — ортогональная верхняя треугольная матрица. Тогда, с одной стороны, Р-1 = РT является нижней треугольной, а с другой стороны Р-1, будучи обратной к верхней треугольной матрице, является верхней треугольной. Одновременно оба условия выполняются, если матрица Р-1 является диагональной. Тогда и Р — диагональная матрица. Кроме того, так как РР = РРT = РР-1 = Е, то диагональные элементы Р могут иметь лишь два значения 1 и —1.
Используя подходящую диагональную матрицу, у которой на диагонали расположены числа 1 и —1, мы можем любое QR-разложение А = QR матрицы А видоизменить так, чтобы в верхней треугольной матрице А на диагонали стояли неотрицательные элементы. Действительно, надо рассмотреть матрицу Р = diag(p1, ..., рn), в которой рi = 1, если i-й диагональный элемент матрицы R является неотрицательным, и pi = — 1 в противоположном случае. Тогда А = QR = QP2R = (QP)(PR) = Q'R'и диагональные элементы матрицы R' все неотрицательны.
Теорема 11.2. Бели матрица А невырождена, то ее QA-разложение, в котором диагональные элементы R неотрицательны, определено однозначно.
Отметим, что наличие нулевых диагональных элементов у матрицы R означает, что матрица А вырожденная, а для невырожденной матрицы матрица R в ее QR-разложении не имеет нулевых диагональных элементов.
Пусть А = QR = Q'R'. Так как А невырожденная, то матрица R имеет обратную матрицу. Напомним, что Q ортогональна: QTQ = Е. Поэтому равенство QR = Q'R' равносильно следующему: Е = (QTQ')(R'R-1) = ~Q~R, т.е. мы получили QR-разложение единичной матрицы. По предположению, диагональные элементы матриц R и R' положительны. Поэтому и верхняя треугольная матрица ~R имеет положительные диагональные элементы. Таким образом, нам достаточно доказать, что определено однозначно QR-разложение единичной матрицы, т.е. ~Q = ~R = Е.
Из равенства ~Q~R = Е следует, что ~R = ~Q-1 = ~QT, т.е. верхняя треугольная матрица ~R является одновременно ортогональной. Поэтому она диагональная (см. выше), а ее диагональные элементы равны ±1. Учитывая, что все диагональные элементы ~R положительные, заключаем, что ~R = Е. Но тогда и ~Q = ~QT = ~R = E.
Сингулярное разложение. Рассмотрим произвольный оператор А в евклидовом пространстве Ε. Оператор А* А (A* — оператор, сопряженный к А) является самосопряженным, так как для любых векторов х, у ∈ Ε ,
(А* Ах, у) = (Ах, Ау) = (х, А*Ау).
Согласно теореме 6.6, в Ε существует ортонормированный базис b = (b1 ... bn) из собственных векторов оператора А* А. Пусть λ1, ..., λn — собственные значения этого оператора, соответствующие векторам b1,..., bn, т.е. A* Abi = i, i = 1,n.
Отметим, что все собственные значения А* неотрицательны, так как

Будем считать, что векторы в базисе b упорядочены таким образом, что последовательтность собственных значений не возрастает. Если среди собственных значений линейного оператора А*А к ненулевых, то λ1,≥ ... λk > 0 и λk+1 = ... = λn = 0. Положительные числа μi = √λi, i = 1,k, А:, квадраты которых являются собственными значениями линейного оператора А* А, называют сингулярными числами линейного оператора А, а базис b из собственных векторов А* А — сингулярным базисом оператора А.
Рассмотрим систему векторов ci = Abi,i = 1,k. Эта система состоит из ненулевых попарно ортогональных векторов, так как, согласно (11.4),

Видим, что нормы векторов сi равны соответствующим сингулярным числам μi линейного оператора А. Положим еi = μ-1ici, i = 1,k, и дополним систему векторов e1, ..., еk векторами ek+1, ..., еn до ортонормированного базиса е в евклидовом пространстве Ε. Пусть Q — линейный оператор, который каждому вектору bi сопоставляет вектор еi, т.е. Qbi = ei, i = 1,n. Этот линейный оператор определен однозначно, потому что заданы образы всех векторов базиса b. Так как он переводит ортонормированный базис b в ортонормированный базис е, то является ортогональным (см. теорему 7.3). Рассмотрим линейный оператор S = AQ-1. Если i = 1,k, то

Таким образом, базис e является ортонормированным базисом собственных векторов оператора S. Значит, этот оператор самосопряженный, так как его матрица в базисе е является диагональной (см. теоремы 5.6 и 6.2) и имеет вид D = diag(μ1, ..., μk 0, ..., 0). Обратим внимание, что ненулевые элементы матрицы D — это сингулярные числа линейного опре- атора А.
Из приведенного рассуждения вытекает, что любой линейный оператор А в евклидовом пространстве может быть представлен в виде SQ, где S — самосопряженный линейный опе-ратор с неотрицательными собственными значениями, a Q — ортогональный линейный оператор. Выясним, что это означает для матриц.
Любая матрица А порядка n является матрицей некоторого линейного оператора А в n-мерном евклидовом пространстве Ε. Представление А = SQ этого линейного оператора означает, что для матрицы А имеет место мультипликативное разложение А = SQ, где матрица S симметрическая с неотрицательными собственными значениями, а матрица Q ортогональная. Такое представление называют полярным разложением матрицы А.
Пусть А = SQ — полярное разложение матрицы А. Так как матрица S является симметрической и имеет неотрицательные собственные значения, существует такая ортогональная матрица Р и такая диагональная матрица D с неотрицатель-ными диагональными элементами, что S = РTDP (см. теорему 7.7). В результате получаем мультипликативное разложение А = PTD(PQ) = ~PD~Q, где ~Р и ~Q — ортогональные матрицы. Это представление не является единственным: несложно заметить, что есть и другие разложения, отличающиеся от указанного порядком диагональных элементов в матрице D.
Пусть А = PDQ, где Р, Q — ортогональные матрицы, а диагональные элементы матрицы D неотрицательны. Тогда
АTА = (PDQ)T(PDQ) = QTDPTPDQ = QTD2Q.
Полученное равенство означает, что АTА и D2 представляют собой матрицы одного и того же линейного оператора А* А, записанные в двух различных ортонормированных базисах, причем матрица Q — это матрица перехода из базиса, соответствующего матрице D2 линейного onpeaтopa, в другой базис, в котором матрицей оператора является АTА. Матрицей обратного перехода, при котором матрица АTА самосопряженного линейного оператора А*А преобразуется к диагональному виду D2, т.е. перехода к базису из собственных векторов А*А, является матрица Q-1 = QT. Диагональные элементы матрицы D2 представляют собой собственные значения оператора А*А, или, что то же самое, собственные значения матрицы АTА. Количество ненулевых диагональных элементов матрицы D равно рангу матрицы АTА и совпадает с рангом матрицы А. Дей-ствительно, если Ь=(Ь\ ... Ьп) — базис, в котором линейный оператор А*А имеет матрицу D2, то, согласно сказанному выше, векторы Аbi попарно ортогональны, а поэтому количество ненулевых среди них равно рангу линейного оператора А. Но это количество равно количеству ненулевых диагональных элементов матрицы D2. Отметим, что ненулевые диагональные элементы матрицы D представляют собой сингулярные числа оператора А.
Мультипликативное разложение А = PDQ, где Р и Q — ортогональные матрицы, D = diag(μ1,...,μn) — диагональная матрица с неотрицательными диагональными элементами μ1≥ ... ≥ μn, называют сингулярным разложением матрицы А, а диагональные элементы μ1, ..., μn — сингулярными числами матрицы А. Можно показать, что указанное разложение определено однозначно, если матрица А невырождена.
Из приведенных рассуждений вытекает следующая последо-вательность построения сингулярного разложения для невырожденной матрицы:
а) находим собственные числа λ1,..., λn и ортонормированный базис из собственных векторов матрицы АTА, располагая собственные значения в порядке убывания;
б) строим матрицу D = diag(μ1,...,μn), где μi = √μ1, i = 1,n;
в) составляем матрицу QT, записывая в нее по столбцам координаты найденных собственных векторов матрицы АTА и определяем обратную матрицу Q-1 = QT;
г) находим вторую ортогональную матрицу Р по формуле P = AQTD-1
Линейные операции над векторами
Базис. Cкалярное произведение
Векторное и смешанное произведения векторов
Декартова система координат. прямая на плоскости
Плоскость в пространстве
Прямая в пространстве
Кривые второго порядка — I
Кривые второго порядка — II
Поверхности второго порядка
Матрицы и операции с ними
Обратная матрица
Ранг матрицы
Системы линейных алгебраических уравнений
Свойства решений однородных и неоднородных СЛАУ