• Nie Znaleziono Wyników

Dowód 4.2. Z warunku stacjonarno±ci funkcji G(x t , x (n) t ) wynika:

4.7. Gradientowe algorytmy kierunków poprawy

Formuª¦ iteracyjn¡ gradientowych algorytmów kierunków poprawy dla aktu-alizacji wektora xt ∈ RJ w k-tym kroku iteracji wewn¦trznych mo»na wyrazi¢ nast¦puj¡co:

x(k+1)t = x(k)t + η(k)t p(k)t , (4.167) gdzie p(k)

t ∈ RJ jest kierunkiem poprawy, okre±laj¡cym kierunek poszukiwa« mini-mum funkcji celu, a η(k)

t > 0jest dªugo±ci¡ kroku poszukiwa« lub wspóªczynnikiem uczenia.

Analogiczn¡ formuª¦ iteracyjn¡ mo»na zapisa¢ dla aktualizacji i-tego wektora wierszowego macierzy A. Dla tego typu algorytmów, k-ty krok iteracyjny jest rozumiany jako krok iteracji wewn¦trznych, natomiast n-ty krok iteracyjny jako krok iteracji zewn¦trznych (naprzemiennych). W ka»dym n-tym kroku iteracji naprzemiennych zakªada si¦, »e aktualizacja zarówno faktora A, jak i faktora X, wymaga wykonania okre±lonej liczby (zwykle wi¦kszej od jeden) kroków iteracji wewn¦trznych.

Aby sekwencje iteracyjne generowane przez (4.167) byªy nieujemne, trzeba okre±li¢ strategi¦ wymuszania nieujemno±ci. Typowym i najprostszym rozwi¡za-niem jest zastosowanie rzutowania (4.137) do (4.167), co w efekcie prowadzi do formuªy iteracyjnej algorytmu rzutowania gradientu dla ogranicze« przedziaªo-wych [153]: x(k+1)t = [ x(k)t + ηt(k)p(k)t ] +. (4.168)

Niestety takie podej±cie nie gwarantuje zbie»no±ci procesu iteracyjnego do punktu stacjonarnego okre±lonego warunkami KKT . Niemniej jednak reguª¦ ak-tualizacji (4.168) mo»na zastosowa¢ do modelu NMF lub NTF, je±li poª¡czy si¦ j¡ z odpowiednim kryterium zatrzymania, np. z kryterium gradientów rzutowanych w (4.42).

Nieujemno±¢ iteracyjnych aktualizacji mo»na te» wymusza¢ poprzez odpo-wiedni dobór dªugo±ci kroku η(k)

t . Je±li aktualizowany faktor X jest rzadki, mo»na zaªo»y¢: ∀t : minjx(k+1)jt = 0. W rezultacie z reguªy (4.167) otrzymuje si¦:

ηt(k)= min j { x (k) jt p(k)jt dla p (k) jt < 0 } , (4.169) gdzie p(k)

t = [p(k)jt ]∈ RJ. W przeciwnym razie wspóªczynnik η(k)

t mo»na otrzyma¢ z zaªo»enia ∃t : minjx(k+1)jt = 0.

Wektor kierunku poprawy p(k)

t mo»e by¢ deniowany na ró»ne sposoby. Wspóln¡ cech¡ gradientowych metod kierunków poprawy jest zaªo»enie, »e wek-tor ten jest wyznaczany na podstawie gradientu funkcji celu w pewnym punkcie  niekoniecznie punkcie x(k)

t . W wielu metodach omawianych w niniejszej pracy wektor kierunku poprawy mo»na zapisa¢ nast¦puj¡co:

p(k)t =−B(k)

t g(k)t , (4.170)

gdzie g(k)

t = ∇xtΨ (A, ¯x(k)t ) ∈ RJ  gradient funkcji Ψ(A, xt) w punkcie ¯x(k)

t ,

B(k)t ∈ RJ×J macierz skaluj¡ca, która mo»e przybiera¢ ró»ne formy, w zale»no±ci od przyj¦tej metody.

Punkt ¯x(k)

t mo»e by¢ wybierany jako punkt x(k)

t (metoda gradientów prostych) albo mo»e by¢ deniowany przez funkcj¦ okre±lon¡ na zbiorze punktów {x(k)

t }

(metoda gradientów optymalnych). Je±li B(k)

t jest macierz¡ dodatnio okre±lon¡, to (g(k)

t )Tp(k)t =−(g(k)

t )TB(k)t g(k)t < 0. Sugeruje to, »e przesuwaj¡c si¦ z punktu

x(k)t w kierunku wektora p(k)

t , mo»liwe jest zmniejszenie warto±ci funkcji celu, tzn. Ψ(A, x(k+1)

t ) < Ψ (A, x(k)t )dla dowolnego x(0)

t ∈ RJ. Je±li B(k)

t jest macierz¡ nieujemnie okre±lon¡, to Ψ(A, x(k+1)

t )≤ Ψ(A, x(k)

t ).

W niniejszym rozdziale przedstawiono wybrane algorytmy NMF, które nale»¡ do rodziny gradientowych algorytmów kierunków poprawy. Formuªy iteracyjne bazuj¡ wprost na reguªach (4.167) lub (4.168). Nale»y jednak zauwa»y¢, »e algo-rytmy multiplikatywne przedstawione w rozdziale 4.4, algoalgo-rytmy projekcyjne naj-mniejszych kwadratów (rozdz. 4.5) oraz algorytmy blokowo-sekwencyjne (rozdz. 4.6) mo»na równie» w jakim± sensie zakwalikowa¢ do rodziny gradientowych algorytmów kierunków poprawy. Zgodnie z reguª¡ aktualizacji (4.50) algorytmy multiplikatywne wynikaj¡ bezpo±rednio z formuªy iteracyjnej algorytmu gradien-towego. Mo»na ªatwo pokaza¢, »e algorytmy ALS, omówione w rozdziale 4.5, s¡ szczególnymi przypadkami projekcyjnej metody Newtona, która bazuje na sche-macie (4.168) [89]. Analogicznie, zgodnie z (4.165) metody HALS i SCWA, mo»na wyrazi¢ formuª¡ (4.168). Niemniej jednak wspomniane algorytmy zaliczono do od-dzielnych grup algorytmów, ze wzgl¦du na ich nalne reguªy aktualizacji faktorów.

4.7.1. Projekcyjna metoda Landwebera

Metoda Landwebera [20], nazywana te» metod¡ Richardsona pierwszego ro-dzaju [30], bazuje na regule iteracyjnej (4.167), w której kierunek poprawy wy-ra»ony jest przez (4.170), gdzie B(k)

t = IJ, zatem: p(k)

Ψ (A, xt) = 12D(Y||Axt), gdzie D(Y ||Axt) jest funkcj¡ odlegªo±ci euklidesowej w (2.4), to p(k)

t =−AT(Ax(k)t −yt). Sekwencje iteracyjne {x(k)

t } generowane tak¡

reguª¡ dla dowolnego x(0)

t ∈ RJ s¡ zbie»ne do rozwi¡zania w sensie kryterium naj-mniejszych kwadratów, tzn. limk→∞x(k)t = x

t, je±li η(k)

t ∈ (0, ηmax). Aby wyzna-czy¢ ηmax, reguª¦ iteracyjn¡ w (4.167) mo»na przeksztaªci¢ do postaci: x(k+1)

t = x(k)t − η(k) t AT(Ax(k)t − yt) = (IJ− η(k) t ATA)x(k)t + ηt(k)ATyt= G(k)t x(k)t + bt. Se-kwencje {x(k) t } s¡ zbie»ne, je±li ρ(G(k) t ) < 1, gdzie ρ(G(k) t ) = max1≤j≤Jj(G(k)t )|

jest promieniem spektralnym macierzy G(k)

t , a λj(G(k)t ) jest jej j-t¡ warto±ci¡ wªasn¡. Šatwo zauwa»y¢, »e je±li ηmax = 2

λmax(ATA), gdzie λmax(ATA) jest maksymaln¡ warto±ci¡ wªasn¡ macierzy ATA, to ρ(G(k)

t ) < 1.

Niestety estymacja maksymalnej dªugo±ci kroku ηmax bezpo±rednio z denicji wymaga zbyt du»ego kosztu obliczeniowego. Dlatego takie podej±cie nie mo»e by¢ zastosowane do omawianych metod faktoryzacji macierzy lub tensorów. Po-niewa» macierz A jest macierz¡ nieujemn¡, λmax(ATA) mo»e by¢ oszacowana na podstawie twierdzenia Perrona-Frobeniusa [17]. Je±li ATA ∈ RJ×J+ jest ma-cierz¡ nieredukowaln¡3, promie« spektralny macierzy ATA speªnia nierówno±ci: min1≤u≤JJ

v=1[ATA]uv≤ ρ(ATA)≤ max1≤u≤JJ

v=1[ATA]uv. Z tego wynika:

ηmax= 2

max1≤u≤JJ

v=1[ATA]uv. (4.171)

Stosuj¡c ograniczenia nieujemno±ci wedªug reguªy w (4.168), projekcyjny al-gorytm Landwebera mo»na wyrazi¢ nast¦puj¡c¡ formuª¡ iteracyjn¡:

X(k+1)= [

X(k)− ηXAT(AX(k)− Y )]

+, ηX = ξηmax, (4.172) gdzie 0 < ξ . 1.

Johansson i inni wspóªautorzy pracy [213] pokazali, »e proces iteracyjny w (4.172) mo»na dodatkowo przyspieszy¢, je±li macierz B(k)

t w (4.170) zdenio-wana jest jako diagonalna macierz skaluj¡ca, tzn.

B(k)t = D = diag ( [ATA1J]−1 j ) . (4.173)

3 Dowolna macierz kwadratowa jest macierz¡ nieredukowaln¡, wtedy i tylko wtedy, gdy nie mo»na j¡ sprowadzi¢ do macierzy blokowej górnotrójk¡tnej przez jednoczesne permutacje jej wierszy i kolumn.

Dla tak zdeniowanej macierzy skaluj¡cej, projekcyjny algorytm Landwebera w (4.172) sprowadza si¦ do algorytmu OPL (ang. Oblique Projected Landweber):

X(k+1)= [

X(k)− DAT(AX(k)− Y )]

+, (4.174)

gdzie D jest wyra»one przez (4.173).

Šatwo zauwa»y¢, »e wspóªczynnik ηmax zawarty jest w denicji macierzy D. W pracy [213] udowodniono, »e sekwencje iteracyjne {X(k)} generowane przez

(4.174) dla A ∈ RI×J

+ i X(0) ≥ 0 s¡ zbie»ne do rozwi¡zania liniowego

zada-nia najmniejszych kwadratów przy ograniczezada-niach nieujemno±ci. Algorytm OPL zostaª zastosowany po raz pierwszy do modelu NMF w pracy [499].

4.7.2. Algorytm rzutowania gradientu

Typowym przedstawicielem algorytmów rzutowania gradientu w metodzie NMF jest algorytm zaproponowany przez Lina w [280]. Oznaczono go skrótowcem: LPG (ang. Lin's Projected Gradient). Algorytm ten bazuje na formule iteracyjnej, podanej w (4.168), gdzie dªugo±¢ kroku η(k)

t estymowano w sposób przybli»ony na podstawie reguªy Armijo [23]. Reguªa ta okre±la jeden z podstawowych warunków Wolfe'a [329], wymaganych w celu zapewnienia wystarczaj¡cej poprawy wzdªu» kierunku p(k)

t . Dªugo±¢ kroku η(k)

t dobierana jest z ci¡gu liczb: 1, β, β2, β3, . . ., gdzie β ∈ (0, 1). Optymalna dªugo±¢ kroku speªnia warunek: η(k)

t = βmk dla pewnej nieujemnej liczby caªkowitej mk = 0, 1, 2, . . ., dobranej w taki sposób, aby: Ψ (A, x(k+1)t )− Ψ(A, x(k) t )≤ σ(∇xtΨ (A, x(k)t ) )T (x(k+1)t − x(k) t ), (4.175) gdzie σ ∈ (0, 1). W praktyce najcz¦±ciej: σ = 0, 01. Bertsekas [22] udowodniª, »e istnieje takie η(k)

t > 0, dla którego punkt graniczny aproksymacji (4.168) jest punktem stacjonarnym.

Lin [280] zastosowaª do metody NMF równie» zmodykowan¡ wersj¦ reguªy Armijo. Lin oraz Moré [281] zauwa»yli, »e η(k)

t i η(k−1)

t mog¡ mie¢ podobne war-to±ci. Dlatego zamiast rozpoczyna¢ proces selekcji dªugo±ci kroku od warto±ci

ηt(k) = β0 = 1, mo»na zaczyna¢ od warto±ci η(k−1)

t , a nast¦pnie krok ten zwi¦k-sza¢ lub zmniejzwi¦k-sza¢ w zale»no±ci od warunku (4.175). Je±li w kroku pocz¡tkowym speªniony jest warunek (4.175), η(k)

t nale»y zwi¦ksza¢. W przeciwnym wypadku, parameter η(k)

t jest zmniejszany, zgodnie z pierwotn¡ zasad¡ Armijo. Takie podej-±cie znacz¡co obni»a koszt obliczeniowy procesu aktualizacji.

4.7.3. Algorytm gradientów skalowanych

Algorytm gradientów skalowanych bazuje na algorytmie gradientowych punk-tów wewn¦trznych (IPG  ang. Interior-Point Gradient), który ukazaª si¦ w pracy Merritta i Zhanga [302]. Przeznaczony jest do rozwi¡zywania liniowych zada« najmniejszych kwadratów z ograniczeniami nieujemno±ci. Do metody NMF za-stosowano go w pracach [85, 89, 499]. Algorytm ten realizuje aktualizacje addy-tywne wedªug reguªy (4.167), gdzie kierunek poprawy p(k)

t okre±lony jest przez (4.170). Macierz B(k)

t zdeniowana jest przez diagonaln¡ macierz skaluj¡c¡  st¡d algorytm skalowanych gradientów. Przyj¦to wi¦c: B(k)

t = diag { x(k)jt [AT AX(k) ]jt } . W rezultacie kierunek poprawy ma posta¢:

P(k)=− ˜D(k)~ ∇XΨ (A, X(k)), (4.176)

gdzie ˜D(k)= X(k)⊘ ATAX(k)  macierz skaluj¡ca. Je±li ∀t : η(k)

t = 1w (4.167), algorytm ten sprowadza si¦ do algorytmu MUE, przedstawionego w rozdziale 4.4.1. W algorytmie IPG [302] faktor X aktualizo-wany jest wedªug reguªy:

X(k+1) = X(k)+ η(k)P(k). (4.177) Dªugo±¢ kroku η(k)dobierana jest w taki sposób, aby aktualizacje byªy nieujemne i je±li to mo»liwe, zgodne z reguª¡ najszybszego spadku (ang. steepest descent). Tak wi¦c η(k) = min{τ ˆη(k), ¯η(k)}, gdzie ˆη(k) = arg maxη

{

X(k)+ ηP(k)≥ 0},

τ . 1 oraz ¯η(k)= arg minηΨ (A, X(k)+ ηP(k)). Krok ˆη(k) zapewnia nieujemno±¢ aktualizacji i mo»e by¢ dobierany na podstawie reguªy (4.169), zatem: ˆη(k) = minj,t { x(k)jt p(k)jt dla p(k)jt < 0 } . Je±li Ψ(A, X) = 1

2D(Y||AX), gdzie D(Y ||AX)

jest funkcj¡ odlegªo±ci euklidesowej, otrzymuje si¦:

Ψ (A, X(k)+ ηP(k)) = 1 2||Y − AX(k)+ ηAP(k)||2 F = 1 2η 2tr ( (P(k))TATAP(k) ) + η tr ( (P(k))TG(k) ) + const, (4.178)

gdzie G(k)=XΨ (A, X(k)) = AT(AX(k)−Y ). Z warunku

∂ηΨ (A, X(k+1)), 0 oraz z (4.178) wynika:

¯

η(k)= (vec(P(k)))Tvec(G(k))

Dªugo±ci kroków ˆη(k) i ¯η(k) mog¡ by¢ te» deniowane, oddzielnie dla ka»dego t i wówczas faktor X aktualizowany jest wedªug reguªy (4.167), gdzie η(k)

t =

min{τ ˆη(k)

t , ¯ηt(k)}. Parametr ˆη(k)

t estymowany jest na podstawie (4.169), natomiast:

¯ ηt(k)= (p (k) t )Tg(k)t (Ap(k)t )TAp(k)t , (4.180) gdzie g(k)

t = ∇xtΨ (A, x(k)t ). Takie podej±cie zapewnia lepsz¡ jako±¢ estymacji, ale koszt obliczeniowy jest nieco wi¦kszy.

4.7.4. Algorytm gradientów optymalnych

Algorytm gradientów optymalnych opracowano na podstawie metody Neste-rowa [326], przeznaczonej do rozwi¡zywania zada« optymalizacji nieliniowej bez ogranicze« dziedziny. Jest to metoda gradientowa, której wspóªczynnik zbie»no-±ci wynosi O(1/k2), je±li minimalizowana funkcja f(·) ∈ C1,1

L : RM → R jest

wypukª¡ funkcj¡ klasy C1,1

L (z ci¡gªym gradientem i jednostajnie ci¡gª¡ z wa-runkiem Lipschitza). Šatwo zauwa»y¢, »e funkcja odlegªo±ci euklidesowej w (2.4) jest funkcj¡ klasy C1,1

L , zarówno ze wzgl¦du na argument A, jak i X. Niech

Ψ (A, X) = 12D(Y||AX), gdzie D(Y ||AX) wyra»one jest poprzez (2.4), zatem: ||∇AΨ (A, X)− ∇AΨ ( ¯A(k), X)||F ≤ LA||A − ¯A(k)||F, (4.181)

||∇XΨ (A, X)− ∇XΨ (A, ¯X(k))||F ≤ LX||X − ¯X(k)||F, (4.182) gdzie {A, ¯A(k)} ∈ RI×J, {X, ¯X(k)} ∈ RJ×T. Czynniki LA = ||XXT||2 i LX =

||ATA||2 s¡ staªymi Lipschitza.

Z nierówno±ci (4.181) i (4.182) wynika: Ψ (A, X) ≤ Ψ( ¯A(k), X) +AΨ ( ¯A(k), X), A− ¯A(k) ⟩ + L˜A 2 ||A − ¯A(k)||2 F = FA(A, ¯A(k)), (4.183) Ψ (A, X) ≤ Ψ(A, ¯X(k)) + ⟨ XΨ (A, ¯X(k)), X− ¯X(k) ⟩ + L˜X 2 ||X − ¯X(k)||2 F = FX(X, ¯X(k)). (4.184) je±li LA≤ ˜LAi LX ≤ ˜LX.

W celu minimalizacji funkcji Ψ(A, X) ze wzgl¦du na X przyj¦to, »e

w denicji 4.1. Jest to funkcja wypukªa i okre±lona na zbiorze RJ×T

+ dla LX ≤ ˜LX. Stosuj¡c metod¦ gradientów proksymalnych (ang. proximal gradient) [11, 92, 326], uzyskuje si¦:

X(k+1)= proxh( ¯X(k)) = arg min

X

(

h(X) + FX(X, ¯X(k)) )

, (4.185)

gdzie proxh( ¯X(k)) operator proksymalny pewnej wypukªej funkcji h(X). Dla

h(xjt) = {

0, je»eli xjt∈ R+,

∞, w przeciwnym razie (4.186)

reguªa aktualizacji faktora X jest nast¦puj¡ca:

X(k+1) = [ ¯ X(k)− ˜L−1X GX( ¯X(k)) ] +, (4.187) gdzie GX( ¯X(k)) =XΨ (A, ¯X(k)) = AT(A ¯X(k)− Y ).

Punkt ¯X(k) jest punktem linearyzacji funkcji pomocniczej FX(X, ¯X(k)). Mo»na go zdeniowa¢ na ró»ne sposoby. Je±li ¯X(k)= X(k), to reguªa aktualizacji w (4.187) mo»e by¢ interpretowana jako reguªa iteracyjna projekcyjnej metody Landwebera. W metodzie Nesterowa ¯X(k) jest wyznaczany jako punkt ekstrapo-lacji kierunków {X(k−1), X(k)}. St¡d:

¯

X(k)= X(k)+ β(k)(X(k)− X(k−1)). (4.188) Stosuj¡c podej±cie Nesterowa [326], optymalny wspóªczynnik zbie»no±ci se-kwencji iteracyjnej w (4.187) uzyskuje si¦, gdy czynnik β(k) wyra»ony jest przez

β(k) = γ(k−1)−1

γ(k) . Parameter γ(k) obliczany jest z równania (γ(k))2 − γ(k)

(k−1))2 = 0.

Finalna wersja algorytmu gradientów optymalnych dla aktualizacji faktora

X wyra»ona jest algorytmem 11, gdzie kmax oznacza maksymaln¡ liczb¦ iteracji wewn¦trznych. Algorytm aktualizacji faktora A jest analogiczny do algorytmu 11. Twierdzenie 4.2. Je±li sekwencje iteracyjne {X(k)} i {Z(k)} generowane s¡

al-gorytmem 11 dla k ≥ 1, oraz X= limk→∞X(k), to

Ψ (A, X(k))− Ψ(A, X) 2LX||X(k)− X||2

F

(k + 2)2 . (4.189)

Algorytm 11. Iteracje Nesterowa

Wej±cie: A ∈ RI×J, Y ∈ RI×T, X(0)∈ RJ×T

+ , kmax  maksymalna liczba iteracji wewn¦trznych

Wyj±cie: X  estymowany faktor

1 Inicjalizacja: Z(0) = X(0), LX =||ATA||2, γ(0)= 1;

2 for k = 1, 2, . . . , kmax do

3 G(k)X = AT(AZ(k−1)− Y ) ; // Gradient w punkcie Z(k)

4 X(k)= [ Z(k−1)− L−1 X G(k)X ] + ; // Aktualizacje projekcyjne 5 γ(k)= 1+ 4(γ(k−1))2−1 2 , β(k)= γ(k−1)−1 γ(k) ; Z(k)= X(k)+ β(k)(X(k)− X(k−1)) ; // Kierunek poprawy Maksymalna liczba iteracji kmax w algorytmie 11 mo»e by¢ okre±lana przez odpowiednie kryterium zatrzymania, np. kryterium gradientów rzutowanych w (4.42). Mo»liwe te» s¡ inne podej±cia. Przykªadowo, w pracy [504] liczb¦ t¦ dobierano wedªug zasady: kmax = min{10, n}, gdzie n jest krokiem iteracji

ze-wn¦trznych. To podej±cie motywowane jest reguªami (4.146) i (4.147). Silniejszy wpªyw parametrów regularyzacji w pocz¡tkowej fazie naprzemiennej aktualizacji faktorów jest równowa»ny w kontek±cie regularyzacji wcze±niejszemu przerywaniu iteracji wewn¦trznych. Jest to tzw. regularyzacja przez wcze±niejsze przerywanie procesu iteracyjnego (ang. truncated iterations).

Metoda Nesterowa wykorzystywana jest w ró»nych dziedzinach przetwarzania sygnaªów i obrazów [11, 92, 529], a tak»e w grupowaniu dokumentów teksto-wych [162]. W pracy [504] pokazano, »e metoda ta jest równie» bardzo efektywna w klasykacji obrazów tekstur. Badano j¡ równie» w kontek±cie ekstrakcji wekto-rów cech z obrazów bazy ORL i z obrazów hiperspektralnych [462]. Nowe algo-rytmy NMF bazuj¡ce na metodzie Nesterowa mo»na te» odnale¹¢ w pracy [159].