Metody Pocítacového Videní (MPV) - Machine learning
Transkript
Metody Počı́tačového Viděnı́ (MPV) - Machine learning pokračovánı́ Ing. Zdeněk Krňoul, Ph.D. Katedra Kybernetiky Fakulta aplikovaných věd Západočeská univerzita v Plzni Metody Počı́tačového Viděnı́ (MPV) - Machine learning Machine learning II I I I I I I Bayesovská klasifikace Rozhodovacı́ strom Rozhodovacı́ les Náhodný rozhodovacı́ les Neuronové sı́tě Konvolučnı́ neuronové sı́tě Metody Počı́tačového Viděnı́ (MPV) - Machine learning 1 / 47 Machine learning II I Bayesovská klasifikace I Rozhodovacı́ strom I Rozhodovacı́ les I Náhodný rozhodovacı́ les I Neuronové sı́tě I Konvolučnı́ neuronové sı́tě Metody Počı́tačového Viděnı́ (MPV) - Machine learning 2 / 47 Bayesovská klasifikace I základnı́ statistický přı́stup ke klasifikaci založený na Bayesovu teorému (Thomas Bayes 1701–1761) I patřı́ do množiny tzv. pravděpodobnostnı́ch klasifikátorů, tedy vyčı́slenı́ kompromisu mezi různými klasifikačnı́mi rozhodnutı́mi za využitı́ pravděpodobnosti I princip je znám od 50-tých a 60-tých let minulého stoletı́, kdy byl použı́ván na úlohu vyhledávánı́ informacı́ v textu (information retrieval), kategorizaci textu, vyhodnocenı́ diagnoz v lékařstvı́ aj. I stále je považován za alternativu k vı́ce sofistikovanějšı́m klasifikačnı́m metodám, jako je např. SVM (support vector machine) Metody Počı́tačového Viděnı́ (MPV) - Machine learning 3 / 47 I ze statistického pohledu Bayesův klasifikátor minimalizuje pravděpodobnost chybné klasifikace, I princip založen na podmı́něné distribuci P(Y |X )), kde Y je konečná množina možných třı́d a X je vstup (měřené přı́znaky). I potom rozhodnutı́ pro nejlepšı́ třı́du pro námi naměřené X je dáno ŷ = argmax P(Y = y |X ) I trénovánı́ Bayesova klasifikátoru spadá do množiny tzv. učenı́ s učitelem (supervised learning) a v mnoha přı́padech je použita metoda maximálnı́ věrohodnosti (maximum likehood, MLE) I pokud jsou proměnné X nezávislé, pak je potřeba určit celkem málo parametrů, např. x se řı́dı́ normálnı́m (Gausovským) rozdělenı́m → statistický popis jednotlivých třı́d je střednı́ hodnota a rozptyl (nenı́ potřeba plná kovariančnı́ matice) y Metody Počı́tačového Viděnı́ (MPV) - Machine learning 4 / 47 I ukázka funkce hustot podmı́něných pravděpodobnostı́ pro dvě třı́dy a dimenzi přı́znaků 1 I funkce modelujı́ hustotu pravděpodobnosti měřenı́ hodnoty přı́znaku x za předpokladu, že vzorek náležı́ třı́dě ω1 a ω2 Metody Počı́tačového Viděnı́ (MPV) - Machine learning 5 / 47 I p(x|ωj ) ... značı́ podmı́něné závislosti vzorku, I x ... spojitá náhodná veličina, jejı́ž distribuce závisı́ na přirozeném stavu I dále zavedeme apriornı́ pravděpodobnost, která předurčuje přı́slušnost vzorku k dané přı́dě ... tedy pro třı́du j označı́me jako P(ωj ), Metody Počı́tačového Viděnı́ (MPV) - Machine learning 6 / 47 I pro dvě třı́dy hledáme p(x|ω1 ) a p(x|ω2 ) pro podmı́něnou hustotu pravděpodobnosti třı́dy ω1 resp. ω2 I dále dvě apriornı́ pravděpodobnost P(ω1 ), která předurčuje, že vzorek patřı́ do třı́dy ω1 , resp. P(ω2 ) pro třı́du ω2 ... neexistujı́ žádné dalšı́ třı́dy, proto P(ω1 ) + P(ω2 ) = 1 I rozdı́l mezi p(x|ω1 ) a p(x|ω2 ) popisuje rozdı́l mezi jednotlivými třı́dami Metody Počı́tačového Viděnı́ (MPV) - Machine learning 7 / 47 Sdružená hustota pravděpodobnosti p(ωj , x) I sdružená hustota pravděpodobnosti popisuje, že vzorek patřı́ do třı́dy ωj a má hodnotu přı́znaku x I může být zapsáno dvěma způsoby: p(ωj , x) = P(ωj |x)p(x) = p(x|ωj )P(ωj ), I přeuspořádánı́m tohoto vztahu dostaneme Bayesův vztah: P(ωj |x) = kde p(x) = I P j p(x|ωj )P(ωj ) , p(x) (1) p(x|ωj )P(ωj ) jde o Bayesův vztah, který může být vyjádřen slovně jako: posterior = Metody Počı́tačového Viděnı́ (MPV) - Machine learning likelihood × prior evidence (2) 8 / 47 Machine learning II I Bayesovská klasifikace I Rozhodovacı́ strom I Rozhodovacı́ les I Náhodný rozhodovacı́ les I Neuronové sı́tě I Konvolučnı́ neuronové sı́tě Metody Počı́tačového Viděnı́ (MPV) - Machine learning 9 / 47 Rozhodovacı́ strom I nelineárnı́ klasifikačnı́ metoda, model je založený na grafu, resp. orientovaného grafu ve tvaru stromu Metody Počı́tačového Viděnı́ (MPV) - Machine learning 10 / 47 Rozhodovacı́ strom I nelineárnı́ klasifikačnı́ metoda, model je založený na grafu, resp. orientovaného grafu ve tvaru stromu I patřı́ do rodiny přı́stupů jednotně nazývyných jako Classification And Regression Tree (CART) Metody Počı́tačového Viděnı́ (MPV) - Machine learning 10 / 47 ω2 ω3 t0 x1 ≤ 14 ANO NE 0.75 ω1 ω1 t1 x2 ≤ 12 x2 ANO NE t2 x1 ≤ 43 t3 x1 ≤ 21 0.5 0.25 ω1 0.25 ω3 0.5 ANO NE ANO ω3 ω4 ω2 NE t4 x2 ≤ 34 ANO NE ω1 ω3 ω4 0.75 x1 Metody Počı́tačového Viděnı́ (MPV) - Machine learning 11 / 47 I metoda použı́vá binárnı́ rozhodovacı́ strom T tvořený uzly → docházı́ k porovnávánı́ jednotlivých prvků přı́znakového vektoru označeného jako x ∈ X ω2 ω3 t0 x1 ≤ 14 ANO NE 0.75 ω1 ω1 t1 x2 ≤ 12 x2 ANO NE t2 x1 ≤ 43 t3 x1 ≤ 21 0.5 0.25 ω1 0.25 ω3 0.5 ANO NE ANO ω3 ω4 ω2 NE t4 x2 ≤ 34 ANO NE ω1 ω3 ω4 0.75 x1 Metody Počı́tačového Viděnı́ (MPV) - Machine learning 12 / 47 I I metoda použı́vá binárnı́ rozhodovacı́ strom T tvořený uzly → docházı́ k porovnávánı́ jednotlivých prvků přı́znakového vektoru označeného jako x ∈ X strom pak představuje postupné dělenı́ prostoru přı́znaků X na navzájem se neprolı́najı́cı́ regiony ω2 ω3 t0 x1 ≤ 14 ANO NE 0.75 ω1 ω1 t1 x2 ≤ 12 x2 ANO NE t2 x1 ≤ 43 t3 x1 ≤ 21 0.5 0.25 ω1 0.25 ω3 0.5 ANO NE ANO ω3 ω4 ω2 NE t4 x2 ≤ 34 ANO NE ω1 ω3 ω4 0.75 x1 Metody Počı́tačového Viděnı́ (MPV) - Machine learning 12 / 47 I každý region pak odpovı́dá právě jedné klasifikačnı́ třı́dě ω2 ω3 t0 x1 ≤ 14 ANO NE 0.75 ω1 ω1 t1 x2 ≤ 12 x2 ANO NE t2 x1 ≤ 43 t3 x1 ≤ 21 0.5 0.25 ω1 0.25 ω3 0.5 ANO NE ANO ω3 ω4 ω2 NE t4 x2 ≤ 34 ANO NE ω1 ω3 ω4 0.75 x1 Metody Počı́tačového Viděnı́ (MPV) - Machine learning 13 / 47 I každý region pak odpovı́dá právě jedné klasifikačnı́ třı́dě I ... přı́znakový prostor je rozdělen na ”kvádry”(pro dimenzi 3) ω2 ω3 t0 x1 ≤ 14 ANO NE 0.75 ω1 ω1 t1 x2 ≤ 12 x2 ANO NE t2 x1 ≤ 43 t3 x1 ≤ 21 0.5 0.25 ω1 0.25 ω3 0.5 ANO NE ANO ω3 ω4 ω2 NE t4 x2 ≤ 34 ANO NE ω1 ω3 ω4 0.75 x1 Metody Počı́tačového Viděnı́ (MPV) - Machine learning 13 / 47 I každý region pak odpovı́dá právě jedné klasifikačnı́ třı́dě I ... přı́znakový prostor je rozdělen na ”kvádry”(pro dimenzi 3) I nerovnost použita v uzlu xi ≤ α je označována jako rozhodovacı́ pravidlo ω2 ω3 t0 x1 ≤ 14 ANO NE 0.75 ω1 ω1 t1 x2 ≤ 12 x2 ANO NE t2 x1 ≤ 43 t3 x1 ≤ 21 0.5 0.25 ω1 0.25 ω3 0.5 ANO NE ANO ω3 ω4 ω2 NE t4 x2 ≤ 34 ANO NE ω1 ω3 ω4 0.75 x1 Metody Počı́tačového Viděnı́ (MPV) - Machine learning 13 / 47 Učenı́ a klasifikace: I klasifikace probı́há opakovaným porovnánı́m neznámého vektoru a jeho postupným ”propadnutı́m”až do jednoho z listů stromu ... do jedné z předem daných třı́d I metoda je často nastavena (určena) technikou učenı́ s učitelem (jde tedy o tzv. supervised learning) I nejpoužı́vanějšı́ metoda konstrukce stromu → regiony jsou vytvořeny jednoduchým porovnánı́m postupně v jednotlivých dimenzı́ch přı́znakového vektoru (práh) xi < p, xi je i-tý prvek přı́znakového vektoru x a α značı́ zvolený práh Metody Počı́tačového Viděnı́ (MPV) - Machine learning 14 / 47 Pravidla konstrukce rozhodovacı́ho stromu: I pro prvnı́ uzel, tzv. kořen stromu, platı́ Xs = X I každý dalšı́ uzel s ... podmnožina Xs ⊂ X daná podle rozhodovacı́ho pravidla předešlého uzlu I rozhodovacı́m pravidlo uzlu s dělı́ Xs na XsA (ANO)a XsN (NE) I XsA v sobě slučuje vektory, které splnily rozhodovacı́ pravidlo uzlu s a XsN naopak slučuje ty, které pravidlo nesplnily I rozdělenı́ musı́ splňovat: XsA ∩ XsN = ∅, XsA ∪ XsN = Xs . I ze všech možných rozdělenı́ Xs → pouze jedno co nejlépe splňuje rozdělujı́cı́ kritérium Metody Počı́tačového Viděnı́ (MPV) - Machine learning 15 / 47 Volba rozhodovacı́ho pravidla I rozhodovacı́ pravidlo ve tvaru xi ≤ αi , kde αi je práh αi ∈ R rozdělujı́cı́ vektory na základě porovnánı́ i-té dimenze přı́znakového prostoru I pomocı́ trénovacı́ množiny X lze vymezit konečnou množinu hodnot, které je pro zı́skánı́ αi nutné I pro i-tou dimenzi, xi , vektoru x, jsou hodnoty všech přı́znakových vektorů uvnitř trénovacı́ množiny vzestupně seřazeny a tato řada pak tvořı́ množinu variant určenı́ prahu I v daném uzlu pak postupně pro všechny dimenze xi ,i = 1, 2, . . . , l všech vektorů x ∈ X vznikne několik možnostı́ rozdělenı́ podmnožiny Xs I z této množiny pak je nutné vybrat pouze jeden práh, který bude ”nejlépe”daný uzel rozdělovat; rozdělenı́ podle metriky (např. Gini impurity, redukce variance, informačnı́ zisk aj. ) Metody Počı́tačového Viděnı́ (MPV) - Machine learning 16 / 47 Mı́ra rozmanitosti uzlu I pokud P (ωi | s) značı́ pravděpodobnost jevu, že vektory uvnitř podmnožiny Xs , náležı́cı́ uzlu s, patřı́ do třı́dy ωi , i = 1, 2, . . . , M. Mı́ra rozmanitosti uzlu je definována jako: I (s) = − M X P (ωi | s) log2 P (ωi | s) . (3) i=1 I tento vztah představuje mı́ru entropie spojenou s uzlem s; pozn. entropie v uzlu t nabývá maxima, pokud všechny 1 a rovna nule pokud právě pravděpodobnosti P (ωi | s) = M pro jednu třı́du j P (ωj | s) = 1 a ostatnı́ jsou rovny nule I pravděpodobnosti P (ωi | s) jsou často odhadovány pomocı́ i i s vztahu N Ns , kde Ns je počet vektorů v Xs patřı́cı́ch do třı́dy ωi a Ns je celkový počet vektorů uvnitř podmnožiny Xs Metody Počı́tačového Viděnı́ (MPV) - Machine learning 17 / 47 I potom po rozdělenı́ Xs na dvě podmnožiny XsA a XsN , kde XsA má NsA počet vektorů a XsN má NsN počet vektorů, dojde k nárůstu rozmanitosti uzlu definovaného jako ∆I (s) = I (s) − NsN NsA I (sA ) − I (sN ) , Ns Ns (4) kde I (sA ), I (sN ) jsou mı́ry rozmanitosti uzlů sA a sN I cı́lem trénovánı́ klasifikátoru je nalézt pro každý uzel s takové rozdělenı́, kdy nárůst rozmanitosti uzlu ∆I (s) je největšı́. Metody Počı́tačového Viděnı́ (MPV) - Machine learning 18 / 47 Zastavovacı́ podmı́nka I zastavovacı́ podmı́nka sloužı́ k zastavenı́ procesu dělenı́ a tak vytvořenı́ listového uzlu I často je zastavovacı́ podmı́nka určena jako minimálnı́ počet trénovacı́ch vektorů v daném uzlu, pokud je dosažena tato minimálnı́ hodnota (např. 5) dále se uzel nedělı́ I zastavovacı́ podmı́nka může také být dána minimálnı́m přı́růstkem rozmanitosti uzlu (všichni ze stejné třı́dy) Metody Počı́tačového Viděnı́ (MPV) - Machine learning 19 / 47 Klasifikace - určenı́ třı́dy I listu s je přiřazena taková třı́da, která je v Xs nejčastěji zastoupena I ... je přiřazena pouze jedna třı́da ωj , kde index j odpovı́dá j = argmax P (ωi | s) . (5) i Dalšı́ možnosti konstrukce stromu: Pl rozhodovacı́ pravidlo může mı́t tvar I neurčujı́ se prahy v jedné dimenzi, ale jde o nalezenı́ nadrovin (přı́mek), dělı́cı́ch jednotlivé prvky přı́znakových vektorů. I ... pravidlo může v některých přı́pade vhodněji rozdělit prostor trénovacı́ množiny X I ... konstrukce stromu je mnohem složitějšı́ Metody Počı́tačového Viděnı́ (MPV) - Machine learning i=1 ci xi ≤ α. I 20 / 47 Machine learning II I Bayesovská klasifikace I Rozhodovacı́ strom I Rozhodovacı́ les I Náhodný rozhodovacı́ les I Neuronové sı́tě I Konvolučnı́ neuronové sı́tě Metody Počı́tačového Viděnı́ (MPV) - Machine learning 21 / 47 Rozhodovacı́ les (decision forest) I nevýhoda rozhodovacı́ho stromu je citlivost na trénovacı́ sadu tzv. špatná generalizace problému I malá změna trénovacı́ množiny X → změna celého tvaru rozhodovacı́ho stromu T → nárůstu chyby klasifikace I tento nedostatek je kompenzován zapojenı́m vı́ce než jednoho rozhodovacı́ho stromu do procesu klasifikace I princip: pro jednu trénovacı́ množinou zkonstruujeme několik ”odlišných”stromů Metody Počı́tačového Viděnı́ (MPV) - Machine learning 22 / 47 Trénovánı́: I trénovacı́ množina X obsahujı́cı́ N prvků je algoritmem bootstrap aggregating rozdělena na T množin (počet stromů), X(t) Klasifikace: Metody Počı́tačového Viděnı́ (MPV) - Machine learning 23 / 47 Trénovánı́: I trénovacı́ množina X obsahujı́cı́ N prvků je algoritmem bootstrap aggregating rozdělena na T množin (počet stromů), X(t) I každá obsahuje N(t) prvků, přičemž N(t) ≤ N (pozn. vzorové vektory z původnı́ množiny se mohou opakovat) Klasifikace: Metody Počı́tačového Viděnı́ (MPV) - Machine learning 23 / 47 Trénovánı́: I trénovacı́ množina X obsahujı́cı́ N prvků je algoritmem bootstrap aggregating rozdělena na T množin (počet stromů), X(t) I každá obsahuje N(t) prvků, přičemž N(t) ≤ N (pozn. vzorové vektory z původnı́ množiny se mohou opakovat) I pro každou množinu X (n) je nezávisle zkonstruován rozhodovacı́ strom T (n) (jednı́m ze zmı́něných postupů) Klasifikace: Metody Počı́tačového Viděnı́ (MPV) - Machine learning 23 / 47 Trénovánı́: I trénovacı́ množina X obsahujı́cı́ N prvků je algoritmem bootstrap aggregating rozdělena na T množin (počet stromů), X(t) I každá obsahuje N(t) prvků, přičemž N(t) ≤ N (pozn. vzorové vektory z původnı́ množiny se mohou opakovat) I pro každou množinu X (n) je nezávisle zkonstruován rozhodovacı́ strom T (n) (jednı́m ze zmı́něných postupů) Klasifikace: I neznámý vektor y je přiveden na vstup všech rozhodovacı́ch stromů T . Metody Počı́tačového Viděnı́ (MPV) - Machine learning 23 / 47 Trénovánı́: I trénovacı́ množina X obsahujı́cı́ N prvků je algoritmem bootstrap aggregating rozdělena na T množin (počet stromů), X(t) I každá obsahuje N(t) prvků, přičemž N(t) ≤ N (pozn. vzorové vektory z původnı́ množiny se mohou opakovat) I pro každou množinu X (n) je nezávisle zkonstruován rozhodovacı́ strom T (n) (jednı́m ze zmı́něných postupů) Klasifikace: I neznámý vektor y je přiveden na vstup všech rozhodovacı́ch stromů T . I Každý rozhodovacı́ strom nám určı́ přı́slušnost vektoru y do některé třı́dy ωi , i = 1, 2, . . . , M. Metody Počı́tačového Viděnı́ (MPV) - Machine learning 23 / 47 Trénovánı́: I trénovacı́ množina X obsahujı́cı́ N prvků je algoritmem bootstrap aggregating rozdělena na T množin (počet stromů), X(t) I každá obsahuje N(t) prvků, přičemž N(t) ≤ N (pozn. vzorové vektory z původnı́ množiny se mohou opakovat) I pro každou množinu X (n) je nezávisle zkonstruován rozhodovacı́ strom T (n) (jednı́m ze zmı́něných postupů) Klasifikace: I neznámý vektor y je přiveden na vstup všech rozhodovacı́ch stromů T . I Každý rozhodovacı́ strom nám určı́ přı́slušnost vektoru y do některé třı́dy ωi , i = 1, 2, . . . , M. I index třı́dy i, do které vektor patřı́ je vybrán na základě nejčastějšı́ho výsledku mezi všemi provedenými klasifikacemi, alternativně můžeme určit celkovou pravděpodobnost 1 PT P(ω|x) = T t=1 Pt (ω|x) Metody Počı́tačového Viděnı́ (MPV) - Machine learning 23 / 47 Náhodný rozhodovacı́ les (Random Decision Forest) I I I přebı́rá zmı́něný princip rozhodovacı́ho lesa → snı́ženı́ citlivosti výsledku klasifikace na výběru trénovacı́ množiny a dále cı́l 1: snı́ženı́ vzájemné korelovanosti vytvořených stromů (v lese) cı́l 2: zrychlit trénovánı́ v přı́padě velmi vysoké dimenze vstupnı́ho vektoru Metody Počı́tačového Viděnı́ (MPV) - Machine learning 24 / 47 Ukázka realtime klasifikace hloubkový dat z MS Kinect do jednotlivých částı́ lidského těla (Microsoft Research, 2011): Metody Počı́tačového Viděnı́ (MPV) - Machine learning 25 / 47 Trénovánı́ 1. rozdělenı́ trénovacı́ množiny X na T množin X(t) pomocı́ algoritmu bootstrap aggregating (stejné) 2. dále zvolen parametr m (m l, kde l je dimenze vektoru x ∈ X) 3. v daném uzlu ← rozhodovacı́ pravidlo určeno jako nejlepšı́ výsledek (rozmanitost) pouze mezi m náhodně vybranými prvky přı́znakového vektoru (dimenzemi) Klasifikace I neznámý vektor y přiveden na vstup všech stromů v lese (stejné) I index třı́dy i, do které vektor patřı́ je vybrán na základě nejčastějšı́ho výsledku (stejné) Metody Počı́tačového Viděnı́ (MPV) - Machine learning 26 / 47 Vliv velikosti lesa: Metody Počı́tačového Viděnı́ (MPV) - Machine learning 27 / 47 Vliv hloubky stromů, zastavovacı́ podmı́nka: Metody Počı́tačového Viděnı́ (MPV) - Machine learning 28 / 47 Umělá neuronová sı́t’ - Artifical Neural Network (ANN) I I I vzorem je chovánı́ odpovı́dajı́cı́ch biologických struktur primárně navrženy k řešenı́ lineárně neseparovatelných problémů řešenı́ je nalezeno pomocı́ transformace problému do prostoru, ve kterém již existuje adekvátnı́ lineárnı́ řešenı́ Metody Počı́tačového Viděnı́ (MPV) - Machine learning 29 / 47 I základnı́m prvkem neuronové sı́tě je model neuronu, na jehož vstup je přiveden vektor x a výstupem je pak jedna hodnota I např. 1 (je-li x ∈ ω1 ) či 0 (je-li x ∈ ω2 ) → takovýto model se pak nazývá perceptron - 1957 Frank Rosenblatt I neuronová sı́t’ složena jen z perceptronů, se nazývá perceptronová sı́t’ Metody Počı́tačového Viděnı́ (MPV) - Machine learning 30 / 47 I xi jsou vstupy neuronu I wi jsou synaptické váhy I bi je práh neuronu I fi je přenosová (aktivačnı́) funkce neuronu I yi je výstup neuronu Metody Počı́tačového Viděnı́ (MPV) - Machine learning 31 / 47 I váha wi vyjadřuje uloženı́ zkušenostı́ do neuronu ... čı́m je vyššı́ hodnota, tı́m je daný vstup důležitějšı́ I v biologickém neuronu práh bi označuje prahovou hodnotu aktivace neuronu I výstup neuronu je dán přenosovou funkcı́ ... může být vedle zmı́něného 1/0 (binárnı́ - aktivačnı́) i spojitý I výstup jednoho neuronu je vždy dán jako: y =f( N X (wi xi ) + b) (6) i=1 Metody Počı́tačového Viděnı́ (MPV) - Machine learning 32 / 47 Přenosová funkce: I Skoková funkce f (a) = I 1 pro a > 0 0 pro a < 0 (7) Sigmoida (nejčastěji použı́vaná) f (a) = 1 1 + exp (−λa) (8) 1 + exp (−λa) 1 − exp (−λa) (9) kde λ je parametr sklonu. I Hyperbolický tangens f (a) = Metody Počı́tačového Viděnı́ (MPV) - Machine learning 33 / 47 Vı́cevrstvé sı́tě: I topologie sı́tě je určena spojenı́m jednotlivých neuronů, tedy výstupu jednoho neuronu na vstup jiných neuronů I jsou ověřeny topologie, které toto spojenı́ majı́ v tzv. vrstvách Metody Počı́tačového Viděnı́ (MPV) - Machine learning 34 / 47 I I poslednı́ vrstva, která určuje výstup sı́tě se nazývá výstupnı́ ostatnı́ vrstvy jsou skryté Metody Počı́tačového Viděnı́ (MPV) - Machine learning 35 / 47 I napřı́klad dvouvrstvá perceptronová sı́t’ s jednı́m výstupem může provádět klasifikaci do dvou třı́d Metody Počı́tačového Viděnı́ (MPV) - Machine learning 36 / 47 I I napřı́klad dvouvrstvá perceptronová sı́t’ s jednı́m výstupem může provádět klasifikaci do dvou třı́d každý perceptron ve skryté vrstvě představuje jednu klasifikačnı́ nadrovinu (přı́mku pro dimenzi 2) Metody Počı́tačového Viděnı́ (MPV) - Machine learning 36 / 47 I I I napřı́klad dvouvrstvá perceptronová sı́t’ s jednı́m výstupem může provádět klasifikaci do dvou třı́d každý perceptron ve skryté vrstvě představuje jednu klasifikačnı́ nadrovinu (přı́mku pro dimenzi 2) potom ... lineárně neseparovatelné prvky trénovacı́ množiny je možné bezchybně rozdělit do dvou třı́d Metody Počı́tačového Viděnı́ (MPV) - Machine learning 36 / 47 Učenı́ neuronové sı́tě: I opět nejčastěji jde o učenı́ s učitelem, vycházı́me tedy z nějaké trénovacı́ množiny I trénovacı́ množina obsahuje N dvojic (y (i), x (i)), pro i = 1, 2, . . . , N I x (i) představuje i-tý vektor trénovacı́ množiny a y (i) určuje jeho přı́slušnost do jedné předem daných třı́d I v jednotlivých iteracı́ch se výstup neuronové sı́tě ŷ (i) lišı́ od požadovaného y (i) Metody Počı́tačového Viděnı́ (MPV) - Machine learning 37 / 47 I cı́lem je nastavit synaptické váhy tak, aby rozdı́l mezi aktuálnı́m výstupem ŷ (i) a požadovaným výstupem y (i) byl minimálnı́ I nejčastěji se použı́vá kritérium nejmenšı́ch čtverců N E (i) = 1X (y (i) − ŷ (i))2 2 (10) i=1 I existuje mnoho algoritmů pro trénovaná ANN, vždy se jedná o optimalizačnı́ úlohu, často založenou na principu poklesu gradientu (Gradient Descent Algorithm) Metody Počı́tačového Viděnı́ (MPV) - Machine learning 38 / 47 Algoritmus zpětného šı́řenı́ - Backpropagation Algorithm I pro nastavenı́ (naučenı́) vı́cevrstvé perceptronové sı́tě I princip založen na výpočtu gradientu ztrátové funkce v závislosti všech vah v sı́ti I optimalizačnı́ algoritmus pak postupně upravuje váhy tak, aby minimalizoval ztrátovou funkci Metody Počı́tačového Viděnı́ (MPV) - Machine learning 39 / 47 1. náhodné nastavenı́ všech vah a prahů v sı́ti a je zvolena konstanta učenı́, µ 2. spočtena odezva sı́tě na trénovacı́ množinu ... ŷ 3. zjištěn vliv (∆wijl ) jednotlivých vah a prahů v sı́ti na pokles chybové funkce ∂J ∆wijl = −µ l , (11) ∂wij wijl je váha spoje od j-tého neuronu v l − 1-té vrstvě sı́tě do i-tého neuronu v l-té vrstvě, J chybová funkce vliv spočten zvlášt’ pro neurony ve skrytých vrstvách (zpětná propagace chyby) a zvlášt’ pro výstupnı́ vrstvu 4. aktualizace váhy wijl (nova) = wijl (stara) + ∆wijl , (12) Body 2 až 4 se opakujı́ pro všechny trénovacı́ vzorky a sleduje se pokles chyby E Metody Počı́tačového Viděnı́ (MPV) - Machine learning 40 / 47 Konvolučnı́ neuronové sı́tě - Convolutional Neural Networks - CNN I I I I I CNN jsou vhodné pro klasifikaci obrazových dat topologie a funkcionalita klasifikace je založena na běžných ANN princip je v logickém uspořádanı́ vstupnı́ho vektoru, vstupem jsou přı́mo pixely nějakého obrázku (pevně daný rozměr) a dále mechanismus redukce množstvı́ neuronů (tvz. max-pooling ) → redukce početu spojů (vah) do dalšı́ vrstvy (tzn. počtu pixelů) výstupnı́ vrstva má jen málo neuronů - např. počet odpovı́dajı́cı́ počtu třı́d Metody Počı́tačového Viděnı́ (MPV) - Machine learning 41 / 47 Architektura konvolučnı́ neuronové sı́tě; velikost konvolučnı́ch jader je např. 3 × 3, hodnota posunu je nastavena na 1 a klasifikace probı́há do čtyř třı́d Vstupní vrstva obraz (29x29 px) Konvoluční vrstva konv. obrazy (15x15 px) Metody Počı́tačového Viděnı́ (MPV) - Machine learning Vrstva max-poolingu mapy (5x5 px) Konvoluční vrstva - Klasifikační vrstva plně propojená konv. obrazy (1x1 px) 42 / 47 Konvolučnı́ vrstva I počet neuronů v konvolučnı́ vrstvě je dán počtem a velikostı́ tzv. konvolučnı́ch jader (význam konvolučnı́ho jádra je stejný jako v klasickém ZDO) I každé konvolučnı́ jádro produkuje odezvu v daném posunutı́ (v překladu to jsou výstupy podmnožiny neuronů této vrstvy formujı́cı́ obrázek po konvoluci) I vzniká velmi velká expanze počtu neuronů (vah a prahů) v této vrstvě I ... však velikost posunu zmenšuje velikost ”obrázku”odezvy konvoluce I ... ale sdı́lenı́ přı́slušných vah jednotlivých konvolučnı́ch jader pro všechny posuny ve vstupnı́m obrázku značně zmenšuje počet neznámých parametrů sı́tě Metody Počı́tačového Viděnı́ (MPV) - Machine learning 43 / 47 Redukce počtu neuronů ve skrytých vrstvách: Max-pooling I I I I představuje mechanismus podvzorkovánı́ vstupnı́ho (konvolučnı́ho) obrazu do dalšı́ vrstvy urychluje konvergenci sı́tě a vede k nalezenı́ robustnějšı́ch obrazových přı́znaků princip založen na detekci maxim v nepřekrývajı́cı́ch se regionech vstupnı́ho obrazu - velikost regionu rovna velikosti konvolučnı́ho jádra do dalšı́ vrstvy tedy postupuje z daného regionu daného konvolučnı́ho obrazu pouze jedno vybrané maximum Metody Počı́tačového Viděnı́ (MPV) - Machine learning 44 / 47 Výstupnı́ - klasifikačnı́ vrstva I obsahuje přesně tolik neuronů, kolik je klasifikačnı́ch třı́d I plně propojená ... na vstup každého jejı́ho neuronu jsou přivedeny všechny výstupy (konvolučnı́ obrazy) vrstvy předešlé Učenı́ sı́tě I CNN se učı́ obdobným způsobem jako učenı́ klasické neuronové sı́tě I rozdı́l je pouze, že nedocházı́ k aktualizaci vah, ale jsou upravovány společně (vázaně) váhy jednotlivých konvolučnı́ch jader I princip konvoluce (tedy topologie) předurčuje sı́ti, jak má vstupnı́ data modelovat (zapamatovat) a podmı́nka současně umožňuje sı́t’ natrénovat Metody Počı́tačového Viděnı́ (MPV) - Machine learning 45 / 47 Ukázka klasifikace CNN nad databázı́ ImageNet, 1,2 mil. obrázků a 1000 třı́d, CNN 65 mil. parametrů a 650 tis. neuronů (Krizhevsky a kol. 2012) Metody Počı́tačového Viděnı́ (MPV) - Machine learning 46 / 47 Ukázka podobnosti výstupů k trénovacı́m datům: Metody Počı́tačového Viděnı́ (MPV) - Machine learning 47 / 47
Podobné dokumenty
4IT420 ZA´ KLADY NEUROVEˇD
Jeden ECTS kredit odpovı́dá 26 hodinám studijnı́ zátěže průměrného studenta.
(počet hodin přednášek týdně / počet hodin cvičenı́ týdně)
České akustické společnosti ročník 17, číslo 4 prosinec 2011 Obsah
(l-ové či r-ové hlásky), jejichž akustické vlastnosti „prosakují“ do okolních hlásek. S nepřesným umístěním hláskové
hranice se také často setkáváme při přechodech ze znělé
hlásky na neznělou a obr...
1 Kybernetika v historii plzenského vysokého školstv´ı 3 2 Studijn´ı
Bakalářské studium poskytuje základnı́ stupeň vysokoškolského vzdělánı́ v řı́zenı́ procesů technického i netechnického charakteru, v návrhu řı́dicı́ch systémů a v aplikacı́ch uměl...
Vyuºití evolu£ních technik v léka°°ské diagnostice
chybného rozhodnutı́ člověka při určovánı́ diagnózy či vyloučit nákladná vyšetřenı́ dı́ky optimálnı́mu využitı́ dostupných informacı́. Pokročilejšı́ schopnostı́ některých takovy...
Aplikace softcomputingu
2.1 Fuzzy IF-THEN pravidla . . . . .
2.2 Fuzzy transformace . . . . . . . .
2.3 Takagi-Sugeno pravidla . . . . . .
2.4 Evolučnı́ algoritmy . . . . . . . .
2.4.1 Stochastické algoritmy pro
2.4.2 E...
Support vector machine
optimálnı́ separujı́cı́ nadroviny.
• Support vector machines zobecňujı́ přı́stup na lineárně
neseparabilnı́, překrývajı́cı́ se třı́dy.
OpenAlt Konvoluční neuronové sítě
4. Spočítat derivace vah a biasů z aktivací předešlé vstvy a
derivací následující vrstvy
A, P
Může-li jistý prováděný pokus vykázat konečný počet n
různých výsledků (hovořı́me o nich jako o elementárnı́ch
jevech), které jsou stejně možné a jestliže m z těchto
výsledku...
Dynamické obrazy.
Neformálně: levá strana rovnice optického toku říká, jak se mění obrazová data v čase, zatímco
pravá strana jak se tatáž data změní se změnou polohy. Rovnítko ve vztahu reprezentuje intuitivní
fakt...
Modelován´ı elastických vln ve vrstevnatém prostˇred´ı
tloušt’ka vrstvy) a byl předmětem úsilı́ mnoha výzkumů po dvě desetiletı́. Přı́činou problému je
špatná podmı́něnost matice šı́řenı́, která je vyvolána kombinacı́ jak klesajı́cı́ch...