Základní spádové metody Petr Tichý 23. října 2013 1
Metody typu line search Problém Idea metod min f(x), f : x R Rn R. n Dána počáteční aproximace x 0. Iterační proces (krok k): (a) zvol směr d k, (b) urči α k tak, aby f(x k + α k d k ) bylo dostatečně malé, (c) polož x k+1 = x k + α k d k. Definice d k R n nazveme spádovým směrem, pokud platí g T k d k < 0. 2
Metoda největšího spádu Definice Nejstarší a nejznámější metoda, důležitá z teoretického hlediska, motivace pro pokročilejší metody. Nechť f C 1 (R n ). Metoda největšího spádu je definována rekurencí x k+1 = x k α k g k, kde α k je nezáporný skalár takový, že minimalizuje funkci φ(α) f(x k αg k ), g k f(x k ). Směrový vektor d k je tedy volen jako d k = g k. 4
Minimalizace kvadratického funkcionálu Vyšetřujme konvergenci pro kvadratický problém f(x) 1 2 xt Ax x T b, kde A je symetrická, pozitivně definitní matice. Hessián f pozitivně definitní všude v R n. f ostře konvexní. Jednoznačné globální minimum ve stacionárním bodě. Ax = b. 5
Kvadratický funkcionál Různé zápisy Ukázali jsme na cvičení f(x) = 1 2 (x x ) T A(x x ) }{{} E(x) 1 2 (x ) T Ax, f(x) a E(x) se liší pouze o konstantu nabývají minima ve stejném bodě, mají stejný gradient g(x) = Ax b. A je pozitivně definitní definuje A-normu x A (x T Ax) 1/2. Platí E(x) = 1 2 x x 2 A. Závěr: Minimalizace f(x) je ekvivalentní minimalizaci x x 2 A. 6
Metoda největšího spádu pro kvadratickou funkci Na cvičení jsme ukázali, že pro kvadratickou funkci je minima dosaženo pro φ(α) = f(x k + αd k ) α k = gt k d k d T k Ad. k Metoda největšího spádu pro kvadratickou f je dána vztahy x k+1 = x k α k g k, g k = Ax k b a α k = gt k g k gk T Ag. k 7
Metoda největšího spádu Typický obrázek konvergence, zig-zag chování 8
Metoda největšího spádu Konvergence Lemma Za výše uvedených předpokladů platí ( (gk T E(x k+1 ) = 1 g k) 2 ) (gk T Ag k)(gk T E(x k ). A 1 g k ) Lemma (Kantorovičova nerovnost) Nechť A R n n je symetrická, pozitivně definitní matice. Potom pro každý nenulový vektor x platí nerovnost (x T x) 2 (x T Ax)(x T A 1 x) 4 λ min λ max (λ min + λ max ) 2. 9
Metoda největšího spádu Konvergenční věta Věta Pro každé x 0 R konverguje metoda největšího spádu pro kvadratický funkcionál f(x) k jednoznačnému minimu x. Pro chybu E(x) platí v k-tém kroku vztah E(x k+1 ) ( ) λmax λ 2 min E(x k ). λ max + λ min 10
Metoda největšího spádu Nekvadratický případ Metodu největšího spádu lze použít i na nekvadratickou úlohu: musíme řešit problém jak spočíst gradient, musíme řešit problém minimalizace v daném směru. Ne vždy konverguje. Některé vlastnosti se přenášejí z kvadratického případu, např. Rychlost konvergence Nechť f C 2 (R n ) má v x bod lokálního minima, nechť H(x ) je symetrická pozitivně definitní matice. Pokud {x k } konverguje k x, potom {f(x k )} konverguje lineárně k f(x ) s konvergenčním faktorem ne větším než ( ) λmax λ 2 min, λ max + λ min kde λ max a λ min jsou největší a nejmenší vlastní číslo H(x ). 11
Newtonova metoda Idea: Na základě Taylorova rozvoje aproximovat f pomocí kvadratického funkcionálu a určit jeho přesný bod minima. Matematická formulace: f(x) q(x), q(x) f(x k ) + g T k (x x k ) + 1 2 (x x k) T H(x k )(x x k ). Gradient q(x), q(x) = g k + H(x k )x H(x k )x k. q(x) = 0 x = [H(x k )] 1 (H(x k )x k g k ). Definujme ( čistá Newtonova metoda) x k+1 x k [H(x k )] 1 g k. Pokud jsme blízko ostrého lokálního minima, H(x k ) je pozitivně definitní, metoda je dobře definována a konverguje kvadraticky. 13
Newtonova metoda Praktické úpravy Zavedení délky kroku α k : x k+1 x k α k [H(x k )] 1 g k, kde α k minimalizuje f v daném směru. Jsme-li blízko řešení, pak zřejmě α k 1. Zavedení α k zamezuje případnému růstu, způsobenému přítomností nekvadratických členů v f. Obecněji lze definovat třídu algoritmů používající vztahy x k+1 x k α k M k g k, kde M k je čtvercová matice, α k je kladný hledací parametr. Metoda největšího spádu volí M k = I, Newtonova metoda volí M k = [H(x k )] 1. 14
Newtonova metoda Praktické úpravy Směr d k = M k g k, je spádový, pokud platí gk T d k < 0, tj. gk T M k g k > 0. Volíme-li M k pozitivně definitní, je podmínka splněna. H(x k ) nemusí být pozitivně definitní M k lze volit jako M k = [β k I + H(x k )] 1, kde β k > 0 zajistí pozitivní definitnost. Jde o kompromis mezi Metodou největšího spádu (β k velmi velké), Newtonovou metodou (β k = 0). 15
Metoda cyklického souřadnicového spádu Jednoduchá implementace, obecně velmi pomalá konvergence. Nechť f C 1 (R n ). Provedeme postupně n minimalizací ve směru souřadnicových os, tj. Jinak řečeno, volíme, min x k f(x 1, x 2,..., x n ), k = 1,..., n. d k = e k = [0,..., 0, 1, 0,..., 0] T, Po n jednorozměrných minimalizacích získáme x k+1. Opakujeme, dokud není splněno zastavovací kritérium. 17