Úlohy nejmenších čtverců Petr Tichý 7. listopadu 2012 1
Problémy nejmenších čtverců Ax b Řešení Ax = b nemusí existovat, a pokud existuje, nemusí být jednoznačné. Často má smysl hledat x tak, že Ax b. V jakém smyslu má být Ax blízké vektoru b? Příklad: A reprezentuje matematický model, b jsou pozorované či naměřené hodnoty. Cíl: najít původní data x. Nepřesnosti v datech (A, b) chceme zohlednit při volbě metody pro nalezení vhodného vektoru x. Interpretace není jednoznačná, závisí na typu problému. 3
Matematická formulace Dáno: A C n m, b C n. n > m přeurčená úloha. n < m nedourčená úloha. Pro zjednodušení výkladu n m. Motivace 1: Předpokládejme, že chybami je zatížen pouze b. Cíl: nalézt co nejmenší změnu f pravé strany b tak, že x je řešením soustavy Ax = b + f, velikost změny f měříme euklidovskou normou vektoru. Jinak řečeno: hledáme x, které minimalizuje normu rezidua f = b Ax. 4
Problém nejmenších čtverců (LS) Definice: Problém nejmenších čtverců Nechť A C n m, b C n. Problémem nejmenších čtverců (LS) budeme nazývat úlohu určení x C m tak, aby platilo min f za podmínky A x = b + f. x,f Zkratka LS pochází z anglického least squares (minimalizuje se odmocnina ze součtu kvadrátů prvků rezidua). Ve statistice bývá problém nejmenších čtverců nazýván úlohou lineární regrese. 5
Úplný problém nejmenších čtverců (TLS) Často nutné uvažovat chyby v b (pozorování) i v A (chyba modelu). Hledáme co nejmenší změnu E matice A a co nejmenší změnu f vektoru b tak, že x je řešením soustavy (A + E) x = b + f. Velikost změny měříme Frobeniovou normou matice [f, E]. Definice: Úplný problém nejmenších čtverců Nechť A C n m, b C n. Úplným problémem nejmenších čtverců (zkráceně TLS) nazveme úlohu určení x C m tak, aby platilo min [f, E] F za podmínky (A + E) x = b + f. x,e,f TLS = total least squares. Statistika úloha ortogonální regrese. 6
Jde o unitárně invariantní problémy Euklidovská norma vektoru i Frobeniova norma matice jsou unitárně invariantní. Přenásobíme-li Ax = b + f nebo (A + E)x = b + f zleva libovolnou unitární maticí P, či provedeme-li substituci x = Q y, kde Q je unitární matice, pak se velikost hledaných změn pravé strany či pravé strany a matice potřebných k dosažení rovností nezmění, Pf = f a P[f, EQ ] F = [f, E] F. Jinak řečeno, problém nejmenších čtverců a úplný problém nejmenších čtverců jsou unitárně invariantní. Dále jen problém nejmenších čtverců (TLS viz skripta). 7
Existence řešení problému nejmenších čtverců Ax = b má řešení b R(A) = span{a 1,..., a m }. b / R(A) soustava není řešitelná v klasickém smyslu. Hledáme x, které minimalizuje euklidovskou normu rezidua b Ax hledáme nejlepší aproximaci b v R(A). Tato aproximace je dána (jednoznačně určenou) ortogonální projekcí vektoru b na R(A) označení b R(A). Věta: Existence řešení problému nejmenších čtverců Nechť A C n m, b C n. Vektor x je řešením problému nejmenších čtverců právě tehdy, když Ax = b R(A), b Ax = b N (A ). 9
Důkaz Protože b C n a C n = R(A) N (A ), R(A) N (A ), můžeme b jednoznačně zapsat jako součet dvou vzájemně ortogonálních složek Pro libovolný vektor z platí b = b N (A ) + b R(A). b Az = b N (A ) }{{} N (A ) + b R(A) Az, }{{} R(A) b Az 2 = b N (A ) 2 + b R(A) Az 2. b Az 2 je minimální Az = b R(A). 10
Jednoznačnost Sloupce A lineárně nezávislé! x tak, že Ax = b R(A). Sloupce A lineárně závislé b R(A) lze vyjádřit pomocí sloupců A nekonečně mnoha způsoby: x je řešení i x + z, z N (A), je řešení. Zahrnutí z N (A) do řešení problému nejmenších čtverců nepřispívá ke snížení normy rezidua je vhodné uvažovat pouze řešení, která složku z N (A) neobsahují. Následující věta takové řešení je pouze jedno a je ze všech možných řešení LS problému minimálním v normě. 11
Řešení LS minimální v normě Věta: Řešení LS minimální v normě Nechť A C n m, b C n. Potom existuje právě jedno řešení x problému nejmenších čtverců minimální v normě a je dáno vztahy Ax = b R(A) a x R(A ). Důkaz: Libovolné řešení x C m lze psát ve tvaru Platí x = x N (A) + x R(A ), x 2 = x N (A) 2 + x R(A ) 2. b R(A) = Ax = A(x N (A) ) + A(x R(A )) = A(x R(A )), x je minimální x N (A) = 0. Řešení ve smyslu nejmenších čtverců minimální v normě leží v R(A ). 12
Pokračování důkazu Jednoznačnost Nechť existují dvě různá řešení x a y: x R(A ), y R(A ), obě řeší Ax = b R(A), Ay = b R(A). Potom tj. x y N (A). A(x y) = b R(A) b R(A) = 0 Protože x y N (A) a zároveň x y R(A ), musí platit x = y (průnikem obou prostorů je pouze nulový vektor). 13
Řešení problému nejmenších čtverců a soustava normálních rovnic Věta Nechť A C n m, b C n. x je řešením problému nejmenších čtverců právě tehdy, je-li řešením soustavy normálních rovnic, A Ax = A b. x je řešení Ax = b R(A) a dále Ax = b R(A) = A Ax = A b ( R(A) ) = A Ax = A b R(A) + b N (A ) = A b. A Ax = A b = A b R(A) A (Ax b R(A) ) = 0, tj. (Ax b R(A) ) N (A ). Zároveň víme Ax b R(A) R(A) Ax b R(A) = 0, tj. x je řešení problému nejmenších čtverců. 14
Soustava normálních rovnic Poznámky Má-li matice A plnou sloupcovou hodnost, je matice A A regulární a soustava normálních rovnic má jednoznačné řešení, neboli x = A b. x = (A A) 1 A b, Jak uvidíme dále, má vyjádření řešení pomocí pseudoinverze obecnou platnost. 15
Přehled metod pro řešení LS A s plnou sloupcovou hodností Předpoklad: A C n m, n m, rank(a) = m. Problém nejmenších čtverců má pak jednoznačné řešení (a nemusíme tudíž hledat řešení minimální v normě). Tři základní metody: Řešení LS pomocí QR rozkladu. Řešení LS pomocí soustavy normálních rovnic. Řešení LS pomocí rozšířené soustavy rovnic. 17
Řešení problému nejmenších čtverců pomocí QR rozkladu LS je unitárně invariantní, je-li U unitární b Ax = U(b Ax). Využijeme QR rozklad matice A, min x A = QR, Q C n n, R C n m, b Ax = min x A má plnou sloupcovou hodnost [ ] ˆR R =, 0 b QRx = min Q b Rx. x kde ˆR C m m je regulární horní trojúhelníková. 18
Řešení problému nejmenších čtverců pomocí QR rozkladu Označíme-li Q = [q 1,..., q m q m+1,..., q n ] [Q m V m ], Hledáme řešení ekvivalentního problému, [ ] [ ] [ Q Q b Rx = m b ˆR Q Vmb x = m b ˆRx 0 Vm b ]. Volbou x lze ovlivnit pouze prvních m prvků vektoru rezidua, a hledané x je řešením soustavy ˆR x = Q mb, přičemž min x b Ax = Vm b. 19
Praktická realizace Aplikujeme QR rozklad na rozšířenou matici [A, b]. Po aplikaci m Householderových reflexí dostáváme [ ] ˆRH c H m... H 1 [A, b] = H. 0 d H Potom x H = ˆR 1 c H H a b Ax H = d H. Aplikací MGS na matici [A, b] získáme obdobně [ ] ˆRG c [A, b] = [Q m, q] G. 0 d G Řešení opět získáme jako x G = ˆR 1 G c G a b Ax G = d G. Pokud při užití Householderových reflexí neukládáme bázi, jsou oba postupy přibližně stejně drahé. Björck a Paige, překvapující výsledek: zpětná chyba výpočtu matic ˆR H a ˆR G je pro oba postupy srovnatelná. 20
Řešení problému nejmenších čtverců pomocí soustavy normálních rovnic A má plnou sloupcovou hodnost A A je regulární, hermitovská, pozitivně definitní řešení x je jednoznačné Choleského rozklad či metoda sdružených gradientů. rank(a) = m řešení soustavy normálních rovnic je ekvivalentní s řešením soustavy vzniklé z QR rozkladu A A x = A b R R x = R Q b ˆR ˆR x = ˆR Q mb ˆRx = Q mb. ˆR ˆR je Choleského rozklad matice A A. Výpočet pomocí soustavy normálních rovnic může být výhodný např. tehdy, když je n m a m je malé. Pokud A velká iterační metody, násobení A Av realizujeme postupně jako A (Av). 21
Řešení problému nejmenších čtverců pomocí soustavy normálních rovnic Nevýhoda nárůst čísla podmíněnosti, κ(a) = σ 1(A) σ m (A), pak pro matici soustavy normálních rovnic platí κ(a A) = σ 1(A ( ) A) σ m (A A) = σ1 (A) 2 = κ 2 (A). σ m (A) Možné numerické problémy, výpočet pomocí soustavy normálních rovnic bezpečný v případě κ 2 (A) 1 ε. 22
Řešení problému nejmenších čtverců pomocí rozšířené soustavy rovnic rank(a) = m x je jednoznačné řešení Ax = b R(A) a platí δ b Ax = b b R(A) N (A ) A δ = 0. δ = b Ax lze zapsat maticově Dohromady [ I A A 0 [ I A ] [ δ x ] [ δ x ] ] = = b. [ b 0 máme rozšířenou soustavu rovnic, získali jsme soustavu se čtvercovou hermitovskou maticí dimenze (m + n) (m + n), tzv. sedlobodová matice. ], 23
Řešení problému nejmenších čtverců pomocí rozšířené soustavy rovnic Lemma Uvažujme tzv. sedlobodovou matici [ B A C = A 0 ], kde B C n n je hermitovská pozitivně definitní a A C n m, n m, má plnou sloupcovou hodnost. Potom je C je regulární, hermitovská a indefinitní. Důkaz: C je hermitovská. Regularitu ukážeme sporem (viz cvičení). Indefinitnost: v, v 0, v = [0, ν n+1,..., ν n+m ] T platí v Cv = 0. 24
Důkaz Uvažujme spektrální rozklad matice C, Dosazením C = SΛS. 0 = v Cv = v SΛS v = m+n j=1 λ j s j v 2, kde s j je j-tý sloupec matice S a λ j je příslušné vlastní číslo. v 0 existuje index j takový, že s jv 0. C je regulární λ j 0 pro každé j. Musí existovat kladná i záporná vlastní čísla, tj. matice je indefinitní. 25
Řešení problému nejmenších čtverců pomocí rozšířené soustavy rovnic - shrnutí Věta Nechť A C n m, n m, b C n a nechť A = m. Řešení x problému nejmenších čtverců lze nalézt řešením rozšířené soustavy [ ] [ ] [ ] I A δ b A = 0 x 0 se sedlobodovou maticí je regulární, hermitovská a indefinitní. Soustavy s indefinitními maticemi mohou být velmi obtížně řešitelné. I přesto může být tento postup výpočtu v některých případech úspěšný. 26
Řešení problému nejmenších čtverců obecný případ Singulární rozklad matice A umožní nalézt řešení minimální v normě pro obecný problém nejmenších čtverců. Nechť A C n m, rank(a) = r a nechť A = U r Σ r V r. Hledané řešení x minimální v normě dáno vztahy Ax = b R(A) a x R(A ). Použijeme vyjádření ortogonálního projektoru na R(A), b R(A) = U r U r b. 28
Řešení problému nejmenších čtverců pomocí singulárního rozkladu Dosazením za A a za b dostaneme z čehož plyne U r Σ r V r x = U ru r b, V r x = Σ 1 r U r b. x R(A ) je lineární kombinaci ortonormální báze R(A ), x = V r y. Dosazením dostaneme pro hledané souřadnice y = V r x = Σ 1 r U r b. 29
Řešení problému nejmenších čtverců pomocí singulárního rozkladu - shrnutí Věta Nechť A C n m, b C n, A = U r Σ r Vr rozklad matice A. Pak je ekonomický singulární x = V r Σ 1 r Ur b = A b představuje řešení problému nejmenších čtverců minimální v normě. 30
Cvičení 6.2 Nechť má matice A plnou sloupcovou hodnost m, A = QR je její QR rozklad a ˆR je regulární horní trojúhelníkový blok matice R. Dokažte σ 1 ( ˆR) = σ 1 (A) aσ m ( ˆR) = σ m (A). 6.3 Ukažte, že sedlobodová matice [ B A C = A 0 ], kde B C n n je hermitovská pozitivně definitní a A C n m, n m, je regulární. 32