Csoport-struktúrált generátorrendszerek online tanulása ELTE, Informatikai Kar TÁMOP Kutatószeminárium 2011. jan. 28
Tartalomjegyzék Motiváció Regressziós feladatok (generátorrendszer fix) Legkisebb négyzetes becslés Lasso feladat (ritkaság) Group-Lasso feladat (csoportok) Általános csoportok és nem-konvex regularizáció Generátorrendszerek tanulása: Főkomponens analízis (PCA) Nem-negatív mátrix faktorizáció (NMF) Batch vs online tanulás Hiányos megfigyeltség
Motiváció Ajánlórendszerek, Netflix verseny: adottak bizonyos felhasználói értékelések filmekre (X), feladat: X nem-mért értékeinek kitöltése (ajánlás), motiváció: $1M (-2009 szept), fontos tanulság: mátrix faktorizációs megoldások X DA (1) előnyösnek mutatkoznak kitöltés szempontjából. Dokumentumok (pl Wiki) elemzése, Pénzügyi idősorok előrejelzése: mik a kitöltéshez jó jellemzők,...
Regressziós feladatok: legkisebb négyzetes becslés Adott: x R dx, D R dx dα. Feladat: f(α) = x Dα 2 2 min α R dα. (2) Megoldás (Moore-Penroose inverzből): ˆα = D + x. (3) Ez optimális, abban az értelemben, hogy a x Dα 2 2 -t minimalizálók közül minimális 2-es normájú. Gond : túl sok/akár D oszlopot használhat. Pl: x dokumentum, D(ictionary) oszlopai témák. ritkaság.
Regressziós feladatok: ritkaság Lasso és csoportok A ritkasági kényszer megragadható regularizációval: Lasso feladat [ 1 ritkaság indukáló norma]: f(α) = x Dα 2 2 + λ α 1 (λ > 0) min α R dα. (4) Group-Lasso: csoportok dokumentumokra gondolva a témák közt lehet összefüggés. K f(α) = x Dα 2 2 + λ αgi 2 i i=1 (λ i > 0, i) min α R dα, ahol {G i } K i=1 a {1,...,d α} halmaz egy partíciója. (5)
Regressziós feladatok: átfedő csoportok, nem-konvex regularizáció Group-Lasso kiterjesztések, átfedő csoportok: f(α) = x Dα 2 2 + K f(α) = x Dα 2 2 i=1 λ i αgi 2 min α R dα, avagy (6) + Ω(α) min α R dα, (7) ahol G = {G i } K i=1 nem feltétlenül partíció és Ω(α) = ( ) λ αgi 2 K i (0 < η < 1). (8) i=1 η Sikeres egyéb alkalmazás példák: génmintázatok elemzése, arckifejezés felismerés, képekhez kulcsszavak rendelése (annotálása; keresőmotorok)
Generátorrendszerek tanulása PCA Adott: x t R dx, t = 1,...,T mintapontok. Feladat (főkomponens analízis): keressük azt a d α -dimenziós alteret (D R dx dα ), [ f(d) = E x proj D (x) 2] (9) minimális. Megoldás: cov(x) d α db domináns sajátvektora =: D.
Generátorrendszerek tanulása NMF (nem-negativitási kényszer) Adott: x t 0 R dx, t = 1,..., T mintapontok (X). Feladat (nem-negatív mátrix faktorizáció): keressük azt a D R dx dα + mátrixot és hozzá tartozó A = [α 1,...,α T ] 0 reprezentációt, amire minimális. f(d, A) = X DA 2 F (10)
Generátorrendszerek tanulása NMF ++ Mixture-of-topic modell (x t szógyakoriságok): D-re (=témákra) kényszer: d i 0 oszlopok és l 1 -gömbbeliek ( j d ij 1), α-ra megkötés: α 0, G: hierarchikus felépítés, G i az i-edik nódus a gyerekeivel.
Generátorrendszerek tanulása batch vs online, hiányos megfigyelések Batch vs online D becslés: Batch: Becslés módja: X = {x 1,..., x T } D. Hátrány: x t nagydimenziós lehet (pl Wiki-nél) nem fér be a memóriába. Online: t = 0: D 0. t = 1: D 0,x 1 D 1. t = 2: D 1,x 2 D 2.... Hiányos megfigyelések: minden egyes x t -ből csak bizonyos koordináták mérhetők.
Generátorrendszerek tanulása: általános feladat Felmerült természetes kényszerek: csoport ritkaság és nem-konvex regularizáció ({G i } K i=1,ω), D és α-ra: kényszerek lehetősége (pl korlátosság, nem-negativitás) online tanítás, hiányos megfigyelések.
Az általános feladat teljesen megfigyelhető eset Adott: x i R dx (i = 1, 2,...) megfigyelések, dictionary kényszer (D D): D = dα i=1 D i R korlátos, konvex, zárt, reprezentáció kényszer (α A R dα ): A: konvex, zárt, struktúrális kényszerek (G): G G G = {1,...,d α }, d G R dα, 0, G tartójú súlyvektorok, dx dα
Az általános feladat teljesen megfigyelhető eset (folyt.) Legyen fix D és x-re, az x-hez tartozó α reprezentáció: [ ] 1 l(x, D) = min α A 2 x Dα 2 2 + κω(α) (κ > 0) (11) minimum helye, ahol Feladat (OSDL): Ω(y) = ( d G y 2 ) G G η (η (0, 1]). (12) f t (D) = 1 t j=1 (j/t)ρ t i=1 ahol ρ 0 felejtési ráta. Speciálisan (ρ = 0): f t (D) = 1 t ( ) i ρ l(x i, D) min t, (13) D D t l(x i, D). (14) i=1
Az általános feladat hiányosan megfigyelt eset Az i-edik időpillanatban az O i {1,...,d x } koordinátákat látjuk x i -ből: x Oi. l(x i, D) helyett az (x, D)-hez tartozó α legyen: [ 1 l(x, D, i) = min xoi D α A 2 Oi α ] 2 2 + κω(α), (15) minimum helye. Feladat: f t (D) = 1 t j=1 (j/t)ρ t i=1 ( ) i ρ l(x i, D, i) min t. (16) D D
Fontos speciális esetek O i = {1,...,d x } ( i): teljesen megfigyelhető eset. Speciális esetek G-re: G = d α és G = {{1}, {2},..., {d α }}: α i -k közt nincs kapcsolat (klasszikus ritka dictionary). Ezen belül, ha D adott, ρ = 0, η = 1, d i = e i : Lasso feladat. G = d α, α i egy fa nódusai, G = {gyerek 1,...,gyerek dα }: fa-struktúrált, hierarchikus reprezentáció G = d α, α i egy rácson, G = {NN 1,...,NN dα }, NN i i-edik pont r-sugarú környezete: rács reprezentáció. G = {P 1,..., P K }, {P k } K k=1 a {1,...,d α} halmaz egy partíciója: non-overlapping csoport struktúra.
Fontos speciális esetek (folyt.) Speciális esetek D, A-ra: D i = L 2 -gömb ( i), A = R dα : D oszlopaira d i 2 1 korlát, D i = nem-negatív L 2 -gömb ( i), A = R dα + : struktúrált NMF, D i = nem-negatív L 1 -gömb ( i), A = R dα + : struktúrált mixture-of-topics modell. Speciális eset d G -re: d G = χ G ( G G), ahol χ a karakterisztikus fg: nem alkalmazunk extra súlyozást.
Optimalizáció Az OSDL feladat ekvivalens a D dictionary és az {α i } t i=1 együtthatók együttes optimalizációjával: ahol f t = 1 t j=1 (j/t)ρ f t (D, {α i } t i=1 ) t i=1 min, (17) D D,{α i A} t i=1 ( ) i ρ [ ] 1 x t 2 Oi D Oi α i 2 2 + κω(α i). (18)
Optimalizáció (folyt.) D online optimalizációja: Az aktuális x Ot -re és D t 1 -re α t -t az [ 1 α t = argmin x α A 2 Ot (D t 1 ) Ot α ] 2 2 + κω(α) (19) feladat mo-jaként becsüljük. Az eddigi {α i } t i=1 -ket használva D t a ˆft (D t ) = min D D f t(d, {α i } t i=1 ) (20) kvadratikus probléma megoldásaként kapjuk.
α becslés Kihasználva, hogy y R d és η (0, 2) esetén 1 y η = min z R d 2 + ahol β = η 2 η, és minhely z i 2Ω(α) = d i=1 min z=[(z G ) G G ] R G + = min z R G + ahol ζ = ζ(z) R dα, és y 2 j z j + 1 2 z β, (21) = y i 2 η y η 1 η kapjuk: d G α 2 2 z G + z β G G ] [α T diag(ζ)α + z β, (22) ζ j = G G,G j ( d G j ) 2 z G. (23)
α becslés (folyt.) Beírva az előző alakot az optimalizációs feladat: J(α, z) min α A,z R G +, (24) ahol J(α, z) = 1 x 2 Ot (D t 1 ) Ot α ) (α 2 2 + κ1 T diag(ζ)α + z 2 β. (25) Optimalizáció iterálva: Fix z-re: A = R dα -re (A = R dα + -re) least squares (nem-negatív). Ált. esetben is: kvadratikus költség, konvex felt-el standard megoldók. Fix α-ra: z G = d G α 2 η 2 ( d G α 2 ) G G η 1 η, G G. (26)
D becslés BCD optimalizációval (d j -re, a többi d i (i j)-t addig fixálva). ˆft kvadratikus d j -ben, így ˆf t d j (u j ) = 0 (27) megoldását vetítjük a feltételi D j halmazra: d j Π Dj (u j ). Belátható: u j eleget tesz az C j,t u j = b j,t e j,t + C j,t d j, (28) diag-os ehómtx-ú lineáris egyenletrendszernek, ahol
D becslés (folyt.) C j,t = B t = e j,t = t i=1 t i=1 t i=1 ( ) i ρ i α 2 i,j R dx dx,(j = 1,...,d α ) (29) t ( ) i ρ i x i α T i = [b 1,t,..., b dα,t] R dx dα, (30) t ( ) i ρ i Dα i α i,j R dα,(j = 1,...,d α ), (31) t ahol i = mtx-os formában O i. Itt mind C j,t -k, mind B t típusú mtx sorozatok. t i=1 ( ) i ρ N i (32) t
D becslés (folyt.) Felejtést leíró rekurziók (teljes indukcióval belátható): N t R L 1 L 2 (t = 1, 2,...) adott mtxsorozat. Legyen Ekkor M t = γ t M t 1 + N t R L 1 L 2 (t = 1, 2,...), (33) t ( ) i ρ M t = N i R L 1 L 2 (t = 1, 2,...). (34) t i=1 ρ = 0-ra: M t = M 0 + M t ( t 1), ρ > 0-ra: M t = M t ( t 1).
D becslés (folyt.) Emiatt a C j,t, B t statisztikák online frissíthetők a C j,t = γ t C j,t 1 + t α 2 tj, (35) B t = γ t B t 1 + t x t α T t, (36) módon (i) ρ = 0-ra: C j,0 = 0, B 0 = 0, (ii) ρ > 0 tetszőleges indítással, ahol γ t = ( 1 1 ) ρ. t e j,t = t i=1 ( ) i ρ i Dα i α i,j (37) t -ből általános esetben ( i I) nem emelhető ki D, de e j,t -re egy numerikusan jó online közelítése az aktuálisan becsült D t -vel. e j,t = γ t e j,t 1 + t D t α t α t,j (38)
OSDL: alkalmazás kitöltésre D optimalizáció: x O1,...,x OT D. (39) Kitöltés: új, kitöltendő mintapont: x O, α optimalizáció: (x O, D O ) α. (40) x becslés: ˆx = Dα. (41)
Illusztráció: természetes képek kitöltése Hiányosan megfigyelt képrészleteken tanult D, teljes képkitöltési feladaton, Tesztkép (eddig semmilyen formában nem látott): PSNR (peak signal-to-noise ratio): nagy a jó, wireless kommunikációban (kép-, videó tömörítésben) elfogadható 20 25 db (30 db).
Illusztráció - folyt. p tr = 0.5, p val test = 0.3
Illusztráció - folyt. p tr = 0.5, ptest val = 0.3 (PSNR = 36 db):
Illusztráció - folyt. p tr = 0.5, p val test = 0.7
Illusztráció - folyt. p tr = 0.5, ptest val = 0.7 (PSNR = 29 db):
Köszönöm a figyelmet!