1 Független Komponens Analízis Póczos Barnabás NIPG ELTE-IK
2 Tartalom ICA alkalmazások ICA információ elmélet Nemlineáris korreláció ICA ML ICA Fast ICA Nemlineáris keresztkorreláció minimalizáció
3 A Független Komponens Analízis (ICA) Vak Forrás Szeparáció (BSS) más néven Független Komponens Analízis (ICA) független forrásokból kevert jelek újra szétválasztására szolgál. Amíg PCA olyan irányokat keres, melyre |x 0 - x| 2 minimális, addig ICA olyan irányokat választ, melyben az adatok a lehető legfüggetlenebbek.
4 ICA alkalmazási lehetőségek Blind source separation (Bell&Sejnowski, Te won Lee, Girolami, Hyvarinen, etc.) Image denoising (Hyvarinen) Medical signal processing – fMRI, ECG, EEG (Mackeig) Modelling of the hippocampus and visual cortex (Lorincz, Hyvarinen) Feature extraction (feature extraction), arcfelismerés (Marni Bartlett) Compression, redundancy reduction clustering (Girolami, Kolenda) Time series analysis (Back, Valpola) Pénzügyi alkalmazások
5 A “Koktél Parti” probléma Források Megfigyelések x = As Becslések s A y=Wx
6 Független Komponens Analízis Két független jel A két jel keveréke a IJ... Jelentése a mikrofonoktól való távolság A becslés ICA alkalmazása után
7 Független komponens analízis természetből vett képeken
8 Főkomponens Analízis bázisok természetből vett képeken
9 ICA bázisok természetből vett képeken
10 ICA mozgó képeken
11 PCA vs ICA, Mixture of Probabilistic PCA PCA ICA MPPCA
12 ICA-PCA bázisok öröm arckifejezésekből
13 ICA-PCA bázisok megelpetés arckifejezésekből
14 ICA-PCA bázisok undor arckifejezésekből
ICA activity for classification, novelty detection Activity distributions of within-category test movies are much narrower Supervised data Test data
16 ICA elméleti kérdések
17 Alapfogalmak Entrópia Együttes entrópia Negentrópia Kölcsönös Információ Kullback-Leibler távolság
18 Higher order moment and cumulants [Comon 94, Hyvarinen 97] Nonlinear PCA [Karhunen 94; Oja 97] Maximalization of information transfer [Bell & Sejnowski 95; Amari 96; Lee 97-98] Maximum likelihood [MacKay 96; Pearlmutter & Parra 96; Cardoso 97] Negentropy maximalization [Girolami & Fyfe 97] Nemlineáris kersztkorreláció minimalizáció [Jutten-Herault, Cardoso] Különböző ICA megközelítések
19 ICA alapprobléma x 1, x 2, … x n, s 1, s 2, … s n, x=As x = i a i s i ICA = generatív modell: leírja, hogyan generálódik az input ICA feladat: s=Wx ?eredeti jelek?
20 Bizonytalanságok Nem tudjuk megmondani –a változók szórását –a változók sorrendjét WP is jó, ha P permutáló mátrix
21 Feltételek a legegyszerűbb esetben Ugyanannyi mikrofon van, mint hangszóró. A keverő mátrix teljes rangú. A források minden időpontban statisztikailag függetlenek. A források idősora stacionárius. Legfeljebb egy forrás lehet normális eloszlású. Ekkor a források permutációtól, skálázástól és előjeltől eltekintve visszaállíthatóak.
22 Statisztikai függetlenség Def y 1,y 2 val. változók függetlnek, ha p(y 1,y 2 ) = p 1 (y 1 ) p 2 (y 2 ) Állítás: Ekkor bármely h függvényre: E[h 1 (y 1 )h 2 (y 2 )] = E[h 1 (y 1 )) E(h 2 (y 2 )] Biz: E[h 1 (y 1 )h 2 (y 2 )] = p(y 1,y 2 ) h 1 (y 1 )h 2 (y 2 ) dy 1 dy 2 = = h 1 (y 1 ) p 1 (y 1 ) dy 1 p 2 (y 2 ) h 2 (y 2 ) dy 2 = = E[h 1 (y 1 )] E[h 2 (y 2 )]
23 Korrelálatlanság, fehér adatok Def y 1,y 2 val. változók korrelálatlanok (fehérek), ha E[y 1 y 2 ] = E[y 1 ] E [y 2 ] Speciálisan, ha y 1,y 2 függetlenek, akkor korrelálatlanok. Ha y 1,y 2 korrelálatlanok, abból nem következik,hogy függetlenek.
24 korrelálatlanság függetlenség y1y1 y2y2 1/4 Ezekre E[y 1 y 2 ] = E[y 1 ] E [y 2 ]=0 De E[y 1 2 y 2 2 ] =0 1=E[y 1 2 ] E [y 2 2 ]
25
26 Gauss eloszlás nem jó A standard többdimenziós eloszlás minden ortogonális transzformáltja ugyanúgy néz ki p(x,y) ~ exp(-0.5*(x 2 +y 2 ))
27 ICA algoritmusok Távolodjunk a normális eloszlástól megközelítés: –Kurtózis alapján –Negentrópia alapján Kölcsönös információ minimalizálás Maximum likelihood becslés Nemlineáris keresztkorreláció minimalizálás FastICA algoritmus
28 Maximum Likelihood ICA becslés
29 Zajmentes Maximum Likelihood ICA x(t) = As(t), t=1,2,..., s(t) R n, t=1,2..., eredeti, ismeretlen források x(t) R m, t=1,2.. a megfigyelt keverékek A R n x m, az ismeretlen keverő mátrix Feltesszük, hogy a források f i sűrűség függvénye ismert pl Cauchy eloszlású
30 ML derivation of squared ICA David J.C. MacKay (97)
31 Távolodjunk a normális eloszlástól megközelítés
32 Távolodjunk a normális eloszlástól megközelítés Az ML módszernél kellett a sűrűség függvények ismerete, pedig az gyakran ismeretlen. Centrális Határeloszlás Tétel : A független források keveréke közelebb kerül a normális eloszláshoz. ICA célja: Úgy keverjük az adatokat, hogy a normális eloszlástól minél távolabb kerüljünk. –Kell egy normális eloszlástól való távolság mérték: Negentrópia maximalizálás Kurtózis abszolút értékének maximalizálása
33 Cél: Normális eloszlástól minél távolabb kerülni Kétféle módon lehet –Gauss-nál élesebben tart nullához ‘sub-gaussian’ –Gauss-nál lassabban tart nullához (nagy eltérések valószínűsége viszonylag nagy) ‘super-gaussian’
34 Normális eloszlástól való távolság mérése Kurtózis Független x,y változókra: kurt(x+y)=kurt(x)+kurt(y) kurt( x) = 4 kurt(x)
35
36 Negentrópia Entrópia: H(y) = - f(y) log f(y) dy Negentrópia: J(y) = H(y Gauss ) – H(y) 0 azonos varianciájú eloszlásokra A feladat tehát: Állítás: J(y) invariáns lineáris transzformációkra nézve J(y) = J(Ay)
37 Negentrópia közelítései J(y) ≈ (E[y 3 ]) 2 /12 + (kurt(y)) 2 /48 Kurtózis problémája az „outlier” (kiugró kivétel) Általánosabb közelítés: J(y) ≈ i k i ( E[G i (y)] – E[G i ( Gauss )] ) 2 ahol k i >0 konstans G i (y) függvények Gauss standard normális
38 Speciálisan 1 db k-ra J(y) ≈ ( E[G (y)] – E[G(y Gauss )] ) 2 Állítás: G(y)= y 4 választással J(y) ≈ E[y 3 ] 2 /12 + kurt(y) 2 /48 mert a várható érték számításakor integrálni kell a sűrűségfüggvényt.
39 Egyéb gyakran alkalmazott nemlinearitások G(y) = a -1 log cosh (ay)1 a 2 G(y) = exp(-y 2 ) Azért, hogy a becsléseink robosztusak legyenek fontos, hogy G ne nőjön túl gyorsan.
40 A Kölcsönös Információ minimalizálásán alapuló ICA algoritmusok
41 Kölcsönös Információ Minimalizációja I(y 1,…,y m ) = i H(y i ) – H(y 1,…,y m ) 0 Áll I(y 1,…,y m ) = 0 y 1,…,y m függetlenek A feladat: min W I(y 1,…,y m ) Ha y=Wx, akkor I(y 1,…,y m ) = i H(y i ) – H(x 1,…,x m ) + +log |detW|
42 Kölcsönös Információ Minimalizációja Ha y k -k közül csak a korrelálatlan és az egységnyi varianciájúak érdekelnek, akkor 1 = E[yy T ] = E[ Wxx T W T ] = detW E[xx T ] detW T Tehát, detW konstans
43 Kölcsönös Információ Minimalizációja A feladat: min W I(y 1,…,y m ) y=Wx I(y 1,…,y m ) = i H(y i ) – H(x 1,…,x m ) + log |detW| detW, H(x 1,…,x m ) konstans A feladat: min W i H(y i ) Az outputok egyenkénti entrópia összege legyen minél kisebb.
44 Kölcsönös Információ Minimalizációja Tehát detW konstans. No de rögzített variancia esetén az entrópia és negentrópia csak konstansban különböznek: H(y i )=C’-J(y i ) I(y 1,…,y m ) = i H(y i ) – H(y 1,…,y m ) = = i H(y i ) – H(x 1,…,x m ) + log |detW| = C - i J(y i ) Tehát a feladat: max W i J(y i )
45 KIM I(y 1,…,y m ) = C - i J(y i ) 0 KIM-en alapuló ICA eljárás ekvivalens az egyes komponensek összegzett nem-Gauss jellegének maximalizációjával úgy, hogy az egyes komponensek dekorreláltak.
46 Független Komponens Analízis Kölcsönös Információ minimalizálása
47 Fast ICA algoritmus
48 Fast ICA algoritmus Állítás: Az ICA feladat megoldása megkapható bizonyos G függvényekre a min vagy max w E[G(w T x)] feladat megoldásaként az E[(w T x) 2 ] = ||w|| 2 kényszer mellett 0 = E[xG’(w T x)] – w = F(w) w F(w) = E[xx T G’’(w T x)] – I
49 Fast ICA algoritmus Közelítés: E[xx T G’’(w T x)] ≈ E[xx T ]E[G’’(w T x)] =E[G’’(w T x)] Oldjuk meg az előbbi feladatot Newton módszerrel: w + = w – ( E[xG’(w T x)] – w )( E[G’’(w T x)] – ) -1 Ez tovább egyszerüsíthető: w + = E[xG’(w T x)] – E[G’’(w T x)]w w + w + / ||w + ||