Глава 13
УНИТАРНИ ДЕКОМПОЗИЦИИ
13 УНИТАРНИ ДЕКОМПОЗИЦИИ - 2 част
Нека да сме благодарни на проф. Михаил Константинов за разрешението да четем "Елементи на линейната алгебра: вектори и матрици" online.
13.1 Уводни бележки
В тази глава се разглеждат унитарните декомпозиции, или факторизации, на комплексна матрица и съответните им ортогонални аналози при реална матрица. Първо са разгледани елементарните унитарни матрици. После е описано преcмятането на унитарно-триъгълната, или QR-декомпозицията на матрица. Обсъдени са и някои свързани с това декомпозиции.
Разгледани са също декомпозицията на Шур и полярната декомпозиция на квадратна матрица. Накрая е разгледана декомпозицията по сингулярни числа на произволна матрица.
Унитарните и ортогоналните матрици са особено полезни при извършване на пресмятания в крайна аритметика тъй като техните елементи по абсолютна стойност не надхвърлят 1. По този начин елементите на преобразуваните матрици също не могат да нарастнат много. Също така при трансформации с унитарни или ортогонални матрици унитарно инвариантните норми на преобразуваните матрици обикновено се запазват, а другите матрични норми не се променят съществено. Това е важно предимство при пресмятания в изчислителна среда с плаваща точка, където грешките от закръгляне по принцип са пропорционални на абсолютните стойности на пресмятаните величини.
Ще припомним, че матрицата U
Fnxn е унитарна ако UHU = In, и ортогонална, ако UTU = In. Важно е да се знае, че ортогоналните матрици могат и да са комплексни, а не са непременно реални.
Комплексната унитарна или реалната ортогонална матрица U се нарича също ортонормирана тъй като нейните стълбове ui удовлетворяват условията u*iuj = 0 при i ≠ j и u*iui = 1, където u* = uH в комплексния случай и u* = UT в реалния случай.
Множеството на комплексните унитарни матрици се означава с U(n), а множеството на ортогоналните n х n матрици над полето F - с O(n,F). Тези множества са мултипликативни групи относно стандартното матрично умножение.
Ако U
U(n) или U
O0(n,R), то ||U||2 = 1 и ||U||F = √n. Следователно U(n)
Сnxn и O(n,R)
Rnxn са централни затворени кълба с радиус √n относно метриката, породена от скаларните произведения = tr(UHV) и = tr(UTV) (или от нормата на Фробениус).
Ако дадена (комплексна) матрица U е представена като
U = U0 + iU1
където матриците U0 и U1 са реални, то тя е унитарна точно когато реалната матрица
е ортогонална (докажете!).
В много приложения, а и при някои теоретични разглеждания, една обща матрица А се декомпозира като произведение, включващо унитарни или ортогонални матрици, от вида
А = USVH
или
А = USVT,
където матрицата S има размерите на A, а матриците U и V са унитарни или ортогонални. Матриците U и V могат да са свързани (например V може да е равна на U), или пък една от тях може да е единичната матрица, или пък да е пермутационна матрица. Матрицата S е в опростена, или кондензирана форма, например триъгълна или даже диагонална. Тази кондензирана форма отразява инвариантната структура на матрицата А = [ai,j] под действието на унитарните
А → S = UHАV
или ортогоналните
А → S = UTAV.
трансформации.
Спектралната, или 2-нормата
||A||2 = max{||Аx||2 : ||x||2 = 1} = &radicλmax(АHА)
и нормата на Фробениус, или F-нормата
играят важна роля при използването на унитарни и ортогонални трансформации. Причината е, че тези норми са унитарно инвариантни в смисъл, че описаните по-горе трансформации запазват нормата на преобразуваната матрица:
||S||2 = ||A||2, ||S||F = ||A||F.
Също така в сила е полезното неравенство
||AB||F ≤ ||A||2||В||F,
което лесно се обобщава до неравенството
(1)
за всяко k
{1,... , r} и r ≥ 2. Неравенството (1) ще бъде доказано по-късно.
13.2 Елементарни унитарни матрици
Една обща унитарна матрица може да се декомпозира като произведение от елементарни унитарни матрици. Има няколко вида унитарни матрици, които се смятат за елементарни в известен смисъл. Сред тях по-важни за приложенията са равнинните ротации (или ротациите на Гивънс) и елементарните отражения (или отраженията на Хаусхолдър).
Елементарната комплексна равнинна ротация е унитарна n х n матрица (n > 1), която се различава от единичната матрица In в не повече от четири позиции, заети от елементите на една 2 x 2 унитарна матрица. По-точно, ротация в (р, q)-равнината, p < q, е n х n матрица Rpq, чиито (i,k) елементи rik са определени както следва. Матрицата с размер 2 x 2
(2)
е унитарна (вж. упражнение 13.5), а rik е символът на Кронекер когато {i,k} ∩ {p,q} = 0.
Елементарната реална равнинна ротация се определя по подобен начин. Тя е реална ортогонална n х n матрица Rpq, като матрицата (2) е ортогонална, вж. упражнение 13.1.
При тази дефиниция може да се окаже, че в реалния случай подматрицата (2), а следователно и цялата матрица Rpq, имат детерминанта, равна на —1. В този случай и двете матрици са отражения в рамките на определението, според което една реална ортогонална матрица е ротация или отражение когато детерминантата й е равна на 1 или —1 съответно.
Един друг вид елементарни унитарни матрици са елементарните отражения. Нека u
Cn е ненулев вектор. Матрицата
Н(u) := In - 2uuH/uHu
Cnxn
се нарича комплексно елементарно (или хаусхолдърово) отражение. От това определение следва, че Н(u) = Н(αu) за всеки ненулев скалар α. Матрицата Н(u) е едновременно ермитова и унитарна.
Реалните елементарни отражения се определят аналогично от
Н(v) := In - 2vvT/vTv
Rnxn, 0 ≠ v
Rn.
Mатрицата Н(v) е едновременно симетрична и ортогонална.
Умножаването на отражение Н(u) по вектор х
Cn се свежда до пресмятане на едно скаларно произведение uHx, умножаване на вектор по скалар и изваждане на два вектора съгласно зависимостта
H(u)x = x - (2uHx/uH)u.
В частност имаме
H(u)u = u - 2uHu/uHu)u = u -2u = -u,
и
det(H(u)) = -1.
Кеr(uH) = {x
Cn : uHx = 0}.
Действително, имаме
uH(x + H(u)x) = 2uH(x - uuHx/uHu) = 2(uHx - uHx) = 0,
т.е., векторът и е ортогонален на сумата от вектора х и неговия образ Н(u)х. Другояче казано, векторът u е колинеарен на разликата х — Н(u)х, тъй като векторите х и Н(u)х имат еднакви 2-норми. Следователно умножаването на вектор с матрицата Н(u) отразява този вектор относно равнината Кеr(uH).
Като използваме тези съображения можем да получим едно много елегантно решение на следната задача. Нека са дадени два различни вектора х,у
Cn с еднакви 2-норми. Търси се унитарна матрица U, която преобразува х в у в смисъл, че у = Ux. От показаното по-горе отражателно свойство на преобразуванието с матрица Н(u) следва, че решението на тази задача е
U = Н(х - у),
т.е.,
H(х — у)х = у.
Често срещана в практиката задача е да се преобразува даден ненулев вектор х във вектор с единствен ненулев елемент, например в k-та позиция. Това се прави по следния начин.
Да предположим, че векторът х
Сn не е успореден (или пропорционален) на k-тия стълб еk на единичната матрица In (ако векторът x е успореден на еk няма какво да преобразуваме). Нека α
С и |α| = 1. Тогава търсената трансформация е
Н(х - у)х = у, у := α||x||2ek (3)
Матрицата H(x — у) е коректно определена понеже у ≠ х.
В реалния случай x
Rn имаме а = ± 1 и съответно
H(x - у)x = у, у:= ±||х||2еk. (4)
Изборът на параметъра α в (3), съответно на знака в (4), се прави въз основа на числени съображения с оглед на избягване на възможно взаимно унищожение при изваждане на близки числа както следва.
Ако аргументът на елемента xk на x е φk, т.е., ако
xk = ρkexp(iφk), &rhok ≥ 0,
то избираме аргумента на α като φk + π, което дава
а = -ехр(iφk). По този начин k-тият елемент на вектора х — у става
xk - yk = (ρk + ||x||2)ехр(iφk).
Аналогично, в реалния случай когато елементът хk е неотрицателен (съответно отрицателен) избираме у = ||х||2еk (съответно у = — ||х||2еk).
Тъй като матрицата
е едновременно ермитова и унитарна, имаме
х = Н(х - у)у = α||х||2Н(х - у)еk = α||х||2hk(х - у),
където hk(х — у) е k-тият стълб на Н(х — у). Следователно матрицата Н(u) трансформира даден вектор х ≠ 0 в α||x||2еk, |α| = 1, точно когато нейният k-ти стълб hk(u) е колинеарен на вектора х.
Сега сме в състояние да решим и следната задача. Даден е единичен вектор х
Cn и е необходимо да се намери n х (n — 1) матрица V, такава че матрицата U := [х,V] да бъде унитарна. Ако векторът х е колинеарен на някои стълб еk на единичната матрица In, то V съдържа останалите стълбове на In. Нека в общия случай векторът х не е колинеарен на стълб на In. Нека h1,..., hn са стълбовете на отражението Н(х ± е1), което трансформира х в е1 (по-горе беше показано как се строи такова отражение). Тогава едно възможно решение на задачата е
V = [h1,...,hn].
Действително, в този случай имаме х = ±h1.
13.3 QR декомпозиция
Трансформациите с елементарни унитарни матрици обикновено се използват за анулиране на елементите в зададени позиции на вектори и матрици, например за привеждане на вектор в множител на даден стълб на единичната матрица. С помощта на такива трансформации и в рамките на краен брой стъпки се получава унитарно-тригъгълната, или QR декомпозицията на обща правоъгълна матрица.
Да припомним първо какво представлява ешалонната форма на матрица.
Нека А = [ai,j] e m х n матрица от ранг r ≥ 1. Да означим с k1,..., kr номерата на първите r линейно независими стълба на А. Нека s
{1,... ,r} е зададено цяло число. Ще казваме, че матрицата А е в редова s-ешалонна форма, ако аi,j = 0 при i = 1,..., s и j < ki, както и при l = 1,..., s и i > kl, j = kl. Матрицата А е в редова ешалонна форма, ако тя е в редова r-ешалонна форма. Ще приемем също, че нулевата матрица е в редова ешалонна форма, както и че всяка матрица е в редова 0-ешалонна форма.
Така редовата ешалонна форма е матрица А с ai,ki ≠ 0 при i = 1,... ,r и с нулеви елементи под всеки елемент аi,ki. Ако А е в редова s-ешалонна форма, то аi,ki ≠ 0 при i = 1,... ,s. Също така, ако А е в редова ешалонна форма, то аi,j = 0 за i > r. Ясно е също, че ако А е в редова s-ешалонна форма с s ≥ 1, то тя е и в редова l-ешалонна форма за l = 1,..., s — 1.
Редовата ешалонна форма на A е горно триъгълна матрица, и даже горно трапецовидна матрица когато kr > r, т.е., когато първите r стълба на А са линейно зависими.
Аналогично се дефинират стълбови ешалонни форми. В частност матрицата А е в стълбова ешалонна форма точно когато АT е в редова ешалонна форма. По-долу са дадени примери за редови ешалонни форми.
Пример 13.1 Нека m = 4, n = 6, r = 3 и k1 = 2, k2 = 4, k3 = 5. Редови 1,2,3-ешалонни форми са както следва:
Във всички тези редови ешалонни форми елементите, отбелязани с X, са произволни, първият стълб на A е нулев, а вторият, четвъртият и петият стълбове на А са линейно независими. В редовата 1-ешалонна форма първият „куршум" • (наричан също водещ елемент) е ненулев, а елементите, означени с а, са нулеви. В редовата 2-ешалонна форма първите два куршума са ненулеви, а елементите, означени с а и b, са нулеви. И накрая, в редовата ешалонна форма всичките три куршума са ненулеви, а елементите, означени с а, b и с, са нулеви.
Ако матрицата А
Fmxn от ранг r е в редова s-ешалонна форма (s < m), то
където s X ks матрицата As е в редова ешалонна форма, а (m — s) X (n — ks) матрицата As+1 е от ранг r — s. По този начин редовите ешалонни форми разкриват последователно ранговата структура на съответната матрица.
Нека е дадена общата m х n матрица А от ранг r. Тогава можем да конструираме унитарна матрица Q
U(n), такава че
А = QR (5)
където m х n матрицата R е в редова ешалонна форма. Ще отбележим, че ако r < m, то последните m — r реда на матрицата R са нулеви и следователно
(6)
където R1 е r х n матрица от пълен редови ранг, а Q1 е матрицата, формирана от първите r стълба на Q.
Факторизациите А = QR и А = Q1R1 се наричат съответно QR декомпозиция и кондензирана QR декомпозиция на матрицата А.
Понякога се разглежда QR декомпозиция, включваща десен множител, например,
А = QRП,
където П е n х n пермутационна матрица, избрана така, че първите r стълба на АП да бъдат линейно независими.
Използва се също и триъгълно-унитарната, или LQ декомпозиция
A = LРН,
където матрицата L е в стълбова ешалонна форма, а Р
U(n). Когато r < n последните n — r стълба на L са нулеви и
Тук L1 е матрица от пълен стълбов ранг и Р1 е матрицата, формирана от първите r стълба на Р.
Когато матрицата А е реална всички матрици в QR и LQ декомпозициите могат да се изберат също реални. При това матриците Q и Р са ортогонални.
При някои допълнителни изисквания към матриците R и L, те се оказват канонични форми за действията
А → R = QHА
и
А → АР
на матричните групи U(m) и U(n) в множеството Сmxn. Например, за целта е достатъчно да се поиска водещите елементи в R и L да бъдат реални и положителни.
Нека l1,..., lr са номерата на първите r линейно независими реда на матрицата А и следователно на матрицата L. Каноничните форми R и L съдържат не повече от
ненулеви елемента (сред тях r положителни), съответно. Тези елементи формират алгебричната инварианта на матрицата А относно действията на ляво и дясно умножаване на групите U(m) и U(n). Генерично е изпълнено ki = li = i и в този случай броят на скаларните алгебрични инварианти е r(2n — r + 1)/2 и r(2m — r + 1)/2 съответно.
Наредените целочислени r-торки (k1,...,kr) и (l1,...,lr) образуват аритметичните инварианти относно разгледаните по-горе действия. Аритметичната и алгебричната инварианти образуват пълно множество от инварианти относно мултипликативните действия на съответната унитарна матрична група.
Един директен краен алгоритъм за пресмятане на QR декомпозицията се основава на следното обстоятелство. Нека А е произволна m х n матрица и а е нейният първи ненулев стълб. Тогава елементарното отражение Н, което трансформира а във вектор На = α||a||2e1, |α| = 1, успореден на първия стълб e1 на единичната матрица Im, също така трансформира матрицата А в 1-ешалонна форма НА.
По-долу е описан алгоритъм за построяване на QR декомпозицията на матрица, като за удобство на читателя са дадени размерите на съответните подматрици.
На първата стъпка нека Н1 е елементарното отражение, което трансформира матрицата А в редова 1-ешалонна форма,
където А2 е (m — 1) X (n — k1) матрица от ранг r — 1.
На втората стъпка нека Н'2 е елементарното (m — 1) X (m — 1) отражение, което трансформира подматрицата А2 в редова 1-ешалонна форма. Тогава отражението
H2 := diag(1,H'2)
не засяга първия ред на матрицата Н1А и трансформира подматрицата А2 в редова 1-ешалонна форма. В резултат матрицата Н2Н1А е в редова 2-ешалонна форма,
Н2Н1А =
където матрицата А3 е с размери (m — 2) X (n — k2) и е от ранг r - 2.
Продължавайки по същия начин, на s-тата стъпка получаваме матрицата
Нs.....H2Н1А,
която е в редова s-ешалонна форма, и съответно (m — s) X (n — ks) подматрицата Аs+1 от ранг r — s.
На r-тата стъпка процесът се прекъсва, тъй като подматрицата Аr+1 е нулева (в противен случай рангът на А щеше да надвишава r). Матрицата
R := Нr.......Н2Н1А
е в редова ешалонна форма. Като положим
Q := (Нr......Н2Н1)H = Н1Н2......Нr
получаваме желаната QR декомпозиция А = QR на матрицата А.
Като се използва QR декомпозицията на матрица може да се реши следната задача. Нека е дадена m х n матрицата X с n < m ортонормирани стълбове. Необходимо е да се намери m х (m — n) матрица Y, такава че матрицата [X, Y] да е унитарна. Решението е елегантно и просто. Ако X = QR е QR е декомпозиция на X, то Y може да се избере като матрицата, формирана от последните m — n стълба на Q.
Ако рангът r на А е по-малък от min{m,n} каноничните форми R и L могат да бъдат още компресирани с допълнителна унитарна трансформация. Така се получава т.нар. QCP декомпозиция, описана по-долу. Нека
R1 = [C1,0]РН
е LQ декомпозицията на матрицата R1 в (6). Тогава е в сила QСР декомпозицията
(7)
където r х r матрицата С1 е неособена (тази декомпозиция понякога се нарича URV декомпозиция).
QCР декомпозицията може да се запише и в кондензирана форма като
А = Q
където Q1 и Р1 са матриците, формирани от първите r стълба на Q и Р съответно.
За разлика от декомпозицията по сингулярни стойности, описана по-долу, QСР декомпозицията се получава с помощта на краен брой стъпки и лесно може да бъде актуализирана. Декомпозицията (7) също така позволява да се получат (поне теоретично) полярната декомпозиция и декомпозицията по сингулярни стойности.

