UČENÍ BEZ UČITELE Václav Hlaváč Fakulta elektrotechnická ČVUT v Praze katedra kybernetiky, Centrum strojového vnímání hlavac@fel.cvut.cz, http://cmp.felk.cvut.cz/~hlavac 1/22 OBSAH PŘEDNÁŠKY
ÚVOD Učení bez učitele se používá pro analýzu pozorování (nebo dat), když není k dispozici informace od učitele, tj. trénovací multimnožina. Pozorovaná data se mají vysvětlit pomocí matematického modelu. Statistický přístup učení statistického modelu z dat. Deterministický přístup podle jiných měr podobnosti dat, např. podle vzdálenosti. Neformálně: data patřící jedné třídě jsou si navzájem podobnější než data z různých tříd. Jiný název: shluková analýza. 2/22
MOTIVAČNÍ OBRÁZEK 3/22
SHLUKOVÁ ANALÝZA, 2 PŘÍSTUPY 1. Hierarchické další shluky se hledají na základě předchozích shluků, a to metodou shora dolů nebo zdola nahoru. 4/22 2. Rozdělující najdou shluky najednou (těm se budeme v této přednášce především věnovat). Metoda k-průměrů (angl. k-means). EM algoritmus.
STATISTICKÝ PŘÍSTUP 5/22 Pozorování se obvykle chápou jako náhodné veličiny. Výsledkem učení je statistický model dovolující přiřadit pozorování x X ke třídě (skrytému stavu) k K, a to podle modelované sdružené hustoty pravděpodobnosti p(x, k). Ze statistického modelu p(x, k) se odvozují podmíněné pravděpodobnosti tříd p(x k) a mohou se použít pro (bayesovské) rozhodování (jako v případě učení s učitelem). Další důležitou aplikací statistického učení bez učitele je komprese dat.
POUŽÍVANÉ VELIČINY 6/22 x X - pozorování. k K - skrytý stav (výsledek rozpoznávání). q : X K - rozhodovací strategie (klasifikátor). x = (x1, x2,..., xn) - posloupnost pozorování (z trénovací multimnožiny). k = (k1, k2,..., kn) - posloupnost výsledků rozpoznávání (informace učitele z trénovací multimnožiny). Θ - parametr, na němž závisí rozhodovací strategie.
KLASIFIKÁTOR S PROMĚNNÝMI PARAMETRY 7/22 Dosud jsme se soustředili na návrh klasifikátoru, jehož rozhodovací funkce q závisela na parametru Θ. x q(x, Θ) k Θ k = q(x, Θ)
UČENÍ S UČITELEM 8/22 x q(x, Θ) Θ k trénovací data x k uèení Θ = učení(x, k) Rozhodovací pravidlo se naučí na základě trénovací multimnožiny.
UČENÍ BEZ UČITELE 9/22 x q(x, Θ) Θ k uèení bez uèitele Θ = učení(x, k) Pro (samo)učení se používá místo trénovací množiny výstup z klasifikátoru.
ALGORITMUS UČENÍ BEZ UČITELE 10/22 Inicializace, tj. počáteční volba parametru Θ t=0. Cyklus Rozpoznávání k = q(x, Θt) Učení Θt+1 = učení(x, k) Důležitou otázkou je konvergence algoritmu.
PROČ JE UČENÍ BEZ UČITELE DŮLEŽITÉ? 11/22 Klasifikace dat není předem známá. Příklad: dolování v datech (angl. data mining). Klasifikace dat člověkem může být příliš drahá. Příklad: rozpoznávání řeči. Složitý skrytý markovský model posloupnost. Vyžaduje spoustu trénovacích dat. Rozsáhlé datové soubory je možné komprimovat tím, že se nahradí několika málo významnými reprezentanty. Lze použít jako metodu aproximující složitou hustotu pravděpodobnosti pomocí směsi (např. gaussovských) rozdělení.
PŘÍKLAD UČENÍ BEZ UČITELE ALGORITMUS n-průměrů 12/22 Předpokládejme statistický model p k (1) = p k (2) =... = p k ( K ) p(x k j, µ j ) jsou gaussovská rozdělení s jednotkovou kovarianční maticí. Parametry Θ = µ 1,..., µ K. Rozpoznávání podle bayesovské strategie k = argmax k p(k x) = argmin k x µ k odpovídá rozpoznávání podle nejbližšího souseda.
PŘÍKLAD UČENÍ BEZ UČITELE ALGORITMUS n-průměrů (2) 13/22 Učení maximálně věrohodný (ML) odhad parametrů Θ t+1 = argmax Θ = argmax µ 1,...,µ K = argmin µ 1,...,µ K = argmin 1 n log p xk (x i, k i ) i=1 n log i=1 ( ) 1 1 ( 2π) exp n 2 (x µ k i ) T (x µ ki ) n (x µ ki ) T (x µ ki ) i=1 µ j = 1 I j (x µ ki ) T (x µ ki ),..., argmin i I k 1 i I j x i, j = 1,... K i I k (x µ ki ) T (x µ ki )
VZTAH K ÚLOZE ODHADU HUSTOT PRAVDĚPODOBNOSTI 14/22 Již známe: Parametrické odhady maximálně věrohodný (ML) odhad. Neparametrické odhady metoda Parzenova okna (nebo metoda n-nejbližších sousedů). Alternativní metoda: modelování hustoty pomocí směsi gaussovských rozdělení.
EM algoritmus EM ALGORITMUS, NEFORMÁLNĚ 15/22 je iterativní postup z rodiny maximálních věrohodných odhadů (MLE) pro případy, kde MLE řešení neexistuje nebo je velmi složité; se typicky používá při chybějících datech nebo informaci od učitele pro vytvoření trénovací množiny; převádí rozkládá jednu složitou MLE optimalizační úlohu na několik jednodušších optimalizačních úloh tím, že zavede chybějící parametr. používá gradientní optimalizaci (nejstrmější vzestup) pro nalezení MLE optima. Proto trpí neduhem uvíznutí v lokálních extrémech.
EM, STATISTICKÝ MODEL 16/22 Předpokládáme libovolný statistický model p(x, k; Θ) = p(k; Θ) p(x k; Θ) = p(k) p(x k; Θ k ) Θ = ( (p(k), Θ k ), k = 1,..., K )
EM, OPAKOVÁNÍ DVOU KROKŮ E krok (rozpoznávání), Bayesovský odhad stavu k, tj. 17/22 α(i, k) = p(x k) = p(k) p(x; Θ k) p(k) p(x; Θ k ) Pozn. u k-means α(i, k) {0, 1}. Zde je odpovědí rozdělení pro stav k, tj. p(k x i ). M krok, (učení), maximálně věrohodný odhad z daného pozorování x a odhadnutých stavů k k Θ t+1 = argmax Θ Očekávaná věrohodnostní funkce L x,k (Θ) = n i=1 E p(k x) (L x,k (Θ)) log p(k) p(x; Θ k )
Inicializace Cyklus Rozpoznávání Učení EM ALGORITMUS Θ 0 = ( p 0 (k), Θ 0 k), k = 1,..., n. α t (i, k) = pt (k) p(x i ; Θ t k ) p t (k) p(x i ; Θ t k ) k 18/22 p t+1 (k) = n i=1 Θ t+1 k = argmax Θ k α t (i, k) n n i=1 α t (i, k) log p(x i, Θ i )
VLASTNOSTI EM ALGORITMU (1) 19/22 Maximalizuje věrohodnostní funkci L(Θ) = n log p(x i ; Θ) = n p(k) p(x i, Θ) i=1 i=1 log } k {{ } p(x i ;Θ) Obecně platí L(Θ0) L(Θ1)... L(Θt). Posloupnost L(Θt) konverguje pro t k L (L je shora omezená), které je buď lokálním minimem, sedlovým bodem nebo globálním minimem.
VLASTNOSTI EM ALGORITMU (2) 20/22 Pokud je funkce Θt+1 = f (Θt) = L (x, R(x, Θt)) spojitá, pak posloupnost Θ 0, Θ 1,..., Θ t pro t konverguje k Θ. Pro speciální statistické modely, např. model podmíněné nezávislosti a dva stavy, konverguje EM algoritmus ke globálnímu maximu. Hypotéza: platí i pro více stavů.
ML ODHAD POMOCÍ EM 21/22 EM je pro ML odhady vhodný. Věrohodnostní funkce L(Θ) = p(x; Θ). Pokud lze rozložit pravděpodobnostní model p(x; Θ) = k p(x, k; Θ), k = 1,..., K, potom lze EM algoritmus použít pro ML odhad parametrů směsi. Příklad: odhad parametrů pro odhad konečných směsí, často gaussovských. ML odhad parametrů Θ = argmax Θ L(Θ). Pro jednoduché statistické modely je analytické řešení, L(Θ) Θ = 0.
EM MINIMALIZUJE DOLNÍ MEZ L EM začíná z nějakého odhadu Θ0. 22/22 Potom se v cyklu opakuje: E-krok: odhadne dolní mez funkce L(Θ) v bodě Θ t. M-krok: nalézá novou hodnotu parametru Θ t+1, která maximalizuje odhadnutou dolní mez. Ta se lépe optimalizuje. L( Θ) new estimate lower bound Θ t+1 Θ t Θ