MSI AiR w5 2004


Metody sztucznej inteligencji Uczenie (si) na podstawie Politechnika Zlska obserwacji Katedra Podstaw Konstrukcji Maszyn Rok akademicki 2002/2003 WykBad 5 MateriaBy dydaktyczne (na prawach rkopisu) dla studentw WydziaBu Mechanicznego Technologicznego MSI-w5/1 MSI-w5/2 GBwna idea Oglny model systemu wnioskowania (agenta) uczcego si (1) " Percepcje s wykorzystywane nie tylko do wyboru odpowiedniej akcji, lecz tak|e do Z powikszania zdolno[ci systemu wnioskowania Krytyka Sensory r (agenta) do dziaBania w przyszBo[ci (uczenia si) Sprz|. o zwrotne d " Uczenie si zachodzi jako wynik interakcji Zmiany Element Element o pomidzy systemem wnioskowania (agentem) uczcy si dziaBajcy w Wiedza i otoczeniem Cele i uczenia s " Jest wiele form uczenia, od zapamitywania do Generator Efektory k problemw tworzenia zBo|onych teorii Agent o MSI-w5/3 MSI-w5/4 Oglny model (systemu wnioskowania) Oglny model (systemu wnioskowania) agenta uczcego si (2) agenta uczcego si (3) " Element uczcy si - odpowiada za dokonywanie " Dostpne sprz|enia zwrotne: ulepszeD  uczenie nadzorowane (agent zna zarwno " Element dziaBajcy - odpowiada za wybr percepcje, jak i wynik ich klasyfikacji) zewntrznych dziaBaD  uczenie ze wzmocnieniem (agent jest nagradzany " Krytyka - dostarcza elementowi uczcemu si lub karany, w zale|no[ci od wyniku akcji; informacji o tym, jak dobrze dziaBa agent klasyfikacja nie jest agentowi znana) " Generator problemw - sugeruje akcje, ktre bd  uczenie nienadzorowane (klasyfikacja nieznana) prowadzi do nowych i informatywnych do[wiadczeD " Rola wiedzy podstawowej - uczenie zwiksza nieznacznie wiedz posiadan przez agenta MSI-w5/5 MSI-w5/6 Indukcja drzew decyzyjnych Cechy drzewa decyzyjnego " Jeden z najprostszych algorytmw uczenia " Obiekty s opisane przez zbiory ich cech maszynowego " Drzewo zwraca klasyfikacj (decyzj) " Aatwe do wdro|enia TAK/NIE (mog by przypadki wieloklasowe - bardziej oglne) " Drzewo reprezentuje funkcj Boolowsk MSI-w5/7 MSI-w5/8 Budowa drzewa decyzyjnego PrzykBad - czy czeka na stolik? " Alternate: w pobli|u " Price: zakres cen " Ka|dy wewntrzny wzeB odpowiada testowi jest inna restauracja? " Raining: czy pada? dotyczcemu warto[ci jakiego[ atrybutu " Bar: czy w restauracji " Reservation: czy zarezer- " Ka|dej krawdzi wychodzcej z danego wzBa jest bar gdzie mo|na wowali[my wcze[niej? przyporzdkowana jest jedna warto[ atrybutu poczeka? " Type: rodzaj restauracji -  wzBowego " Fri/Sat: Pitek/Sobota chiDska, wBoska, Burger. " Li[ciom przyporzdkowane s warto[ci " Hungry: jeste[ gBodny? " WaitEstimate: szacowa- Boolowskie, zwracane je[li osignito dany " Patrons: ile jest ludzi w ny czas oczekiwania w li[ restauracji? min. MSI-w5/9 MSI-w5/10 Indukcja drzew decyzyjnych Czy czeka na stolik? ze zbioru przykBadw W tym drzewie nie Patrons? wykorzystano wszyst- " PrzykBad opisywany jest przez warto[ci None Some Full kich atrybutw!! atrybutw (warunku) oraz przez warto[ No Yes WaitEstimate? atrybutu decyzyjnego 0-10 >60 30-60 10-30 No Alternate? Hungry? Yes " PrzykBady tworz zbir trenujcy No Yes No Yes " Brzytwa Ockhama (XIV w.): Reservation? Fri/Sat? Yes Alternate? Pluralitas non est ponenda sine neccesitate No Yes No Yes No Yes Najbardziej prawdopodobna jest Bar? Yes No Yes Yes Raining? najprostsza spo[rd hipotez zgodnych ze No Yes No Yes MSI-w5/11 MSI-w5/12 No Yes No Yes wszystkimi obserwacjami Algorytm indukcji drzew decyz. Uwagi dotyczce indukcji drzew function DECISION-TREE-LEARNING(examples,attributes,default) returns a decision tree inputs: examples, zbir przykBadw " Podstawowy problem - wybr attributes, zbir atrybutw default, warto[ domy[lna dla atrybutu decyzyjnego " Indukcja niezupeBna (nie mamy wszystkich if examples is empty then return default mo|liwych przykBadw) else if all examples have the same classification then return the classification else if attributes is empty then return MAJORITY-VALUE(examples) Oznacza to, |e else dane maj te same " Programy realizujce uczenie maszynowe best ! CHOOSE-ATTRIBUTE(attributes,examples) opisy, lecz nale| dziaBaj bardzo szybko i efektywnie tree ! a new decision tree with root test best do r|nych klas; for each value vi of best do rozstrzyga gBoso- " Drzewa decyzyjne mog by bardzo examplesi ! {elements of examples with best = vi} wanie subtree ! DECISION-TREE-LEARNING(examplesi,attributes-best, rozbudowane - czsto si je przycina kosztem MAJORITY-VALUE(examples)) add a branch to tree with label vi and subtree subtree nieco gorszej sprawno[ci klasyfikacji end MSI-w5/13 MSI-w5/14 return tree Ocena sprawno[ci algorytmu uczenia (1) Ocena sprawno[ci algorytmu uczenia (2) " Ilo[ informacji [bity] zawartej w poprawnej " Zgromadz liczny zbir przykBadw odpowiedzi, gdy zbir trenujcy zawiera p " Podziel go na rozBczne zbiory: zbir trenujcy przykBadw pozytywnych i n negatywnych: i zbir testowy p n p p n n I ( , ) = - log2 - log2 p + n p + n p + n p + n p + n p + n " Stosujc zbir trenujcy jako przykBady, " Ilo[ informacji dostpna po testowaniu atrybutu A: uzyskaj indukcyjnie hipotez H v pi + ni pi ni " Stosujc przykBady testowe, okre[l jaka ich PozostaBo(A) = I ( , ) " p + n pi + ni pi + ni i=1 cz[ jest poprawnie klasyfikowana przez H Atrybut A dzieli zbir E na " Przyrost ilo[ci informacji: podzbiory E1,..., Ev ; pi, ni " Powtarzaj te kroki dla zbiorw trenujcych to liczby przykBadw pozyty- p n Pr zyrost(A) = I ( , ) -i negatywnych w tym PozostaBo(A) r|nych wielko[ci, losowo wybieranych p + n pwnych + n MSI-w5/15 MSI-w5/16 podzbiorze Zwikszenie mo|liwo[ci Niektre problemy zastosowania drzew decyzyjnych " Brakujce dane (nie zapisane; zbyt " BBdne dane (np. sprzeczne przykBady - kosztowne ich uzyskanie) takie same warto[ atrybutw warunku, r|ne warto[ci atrybutu decyzyjnego) " Atrybuty wielowarto[ciowe  drzewo klasyfikuje bBdnie " Atrybuty o warto[ciach cigBych " Nadmierne dopasowanie (rzeczywistych) - wymagana dyskretyzacja  zbyt szczegBowy klasyfikator, du|o bBdw dla  unseen examples " Rada - PRZYCINANIE DRZEWA MSI-w5/17 MSI-w5/18 Podstawowe pytanie Odpowiedz intuicyjna " Ka|da hipoteza, ktra jest powa|nie bBdna, Skd wiadomo, |e algorytm uczenia zostanie na pewno znaleziona z wysokim pozwoliB utworzy teori, ktra prawdopodobieDstwem jedynie dla maBej liczby przykBadw, poniewa| to prowadziBoby do bdzie poprawna? bBdnych przewidywaD " Wniosek: Jest nieprawdopodobne, |eby hipoteza zgodna z wystarczajco licznym zbiorem trenujcym, byBa powa|nie bBdna " Uczenie PAC (Probably Approximately Correct) MSI-w5/19 MSI-w5/20 Ile potrzeba przykBadw (1)? Ile potrzeba przykBadw (2)? " X - zbir wszystkich mo|liwych " BBd (h r|ne od aproksymowanej funkcji f): przykBadw h " H " D  rozkBad prawdopodobieDstwa, z ktrego error(h) = P{h(x) `" f (x) | x wylosowane z D} losuje si przykBady " Hipoteza jest w przybli|eniu poprawna, je[li: " H - zbir mo|liwych hipotez error(h) d" ,  - maBa liczba " f" H  prawdziwa funkcja, ktr staramy " Gdy -dopuszczalne prawdop. bBdnej hipotezy: si przybli|y za pomoc hipotezy h" H 1 1 ln m e" + ln H " m - liczba przykBadw w zbiorze   trenujcym MSI-w5/21 MSI-w5/22 Podsumowanie (1) Podsumowanie (2) " Zdolno[ uczenia si systemu wnioskowania (agenta) jest istotna ze wzgldu na dziaBanie w nieznanym " Uczenie si jakiegokolwiek skBadnika elementu [rodowisku dziaBajcego mo|e by interpretowane jako " W systemie wnioskowania (agencie) uczcym si mo|na wyr|ni: uczenie si aproksymacji funkcji  element dziaBajcy, odpowiedzialny za wybr akcji " Uczenie si aproksymacji funkcji na podstawie  element uczcy (si), odpowiedzialny za modyfikowanie przykBadw nazywa si uczeniem indukcyjnym elementu dziaBajcego " Mo|liwe s r|ne formy uczenia, ze wzgldu na: " Drzewa decyzyjne s skutecznym [rodkiem element dziaBajcy, sprz|enia zwrotne oraz dostpn uczenia si zdeterminowanych funkcji Boola wiedz MSI-w5/23 MSI-w5/24 Podsumowanie (3) " Brzytwa Ockhama sugeruje wybr najprostszej hipotezy pasujcej do Uczenie w sieciach neuronowych obserwowanych przykBadw " Okre[lenie najwikszego przyrostu informacji umo|liwia znalezienie prostych drzew decyzyjnych " Osigi algorytmu uczenia indukcyjnego okre[la si za pomoc Bcznego bBdu klasyfikacji MSI-w5/25 MSI-w5/26 Sieci neuronowe -geneza Jak dziaBa mzg? " Reprezentuje zBo|one (np. nieliniowe) funkcje " SkBada si z neuronw (komrek nerwowych) " Sieci zBo|one z prostych elementw " Neurony poBczone pomidzy sob poprzez wykonujcych operacje arytmetyczne synapsy " Szczeglnie u|yteczne w przypadku " SygnaBy pomidzy neuronami: skomplikowanych funkcji wielu zmiennych,  propagowane poprzez reakcje elektrochemiczne ktre:  przekazywane, gdy potencjaB elektryczny danego neuronu przekroczy odpowiedni prg  maj wyj[cia o warto[ciach rzeczywistych  maj wiele wej[ obci|onych szumem  mog by wzmacniane lub tBumione przez synapsy MSI-w5/27 MSI-w5/28 Budowa neuronu Mzg : komputer wzmocnienie Komputer (1994r) Mzg ludzki Liczba jednostek 1 CPU; 105 bramek 1011 neuronw wej[cia Pojemno[ pamici RAM 109 bitw; 1011 neuronw; Dysk 1010 bitw 1014 synaps Czas trwania cyklu [s] 10-8 10-3 wyj[cie Pasmo [bity/s] 109 1014 Liczba neuronw 105 1014 DBugo[ wypustek komrki nerwowej jest okoBo aktualizowanych/s 100 razy wiksza od [rednicy komrki. MSI-w5/29 MSI-w5/30 Sie neuronowa Jednostka (neuron) " Posiada zbir poBczeD wej[ciowych " Wiele wzBw (jednostek) " Posiada zbir poBczeD wyj[ciowych " PoBczenia midzy nimi " Ma poziom aktywacji " PoBczeniom przyporzdkowane wagi " GBwna idea: ka|da jednostka przeprowadza samodzielnie (lokalnie) obliczenia, bazujc na wej[ciach od swoich ssiadw, lecz bez potrzeby globalnego sterowania zespoBem neuronw jako caBo[ci MSI-w5/31 MSI-w5/32 Algorytm budowy sieci Jednostka sieci (neuron) wagi funkcja aktywacji " Okre[l:  liczb potrzebnych neuronw  ich rodzaj  sposb poBczenia neuronw pomidzy sob " Zainicjuj pocztkowe warto[ci wag wyj[cie " Trenuj sie (modyfikujc wagi), u|ywajc odpowiedniego algorytmu zastosowanego do zbioru przykBadw trenujcych ini = " aj = Wi "ai Wa|ona suma wej[ "Wj,i j MSI-w5/33 MSI-w5/34 PrzykBady funkcji aktywacji Reprezentowanie funkcji logicznych 1, if x e" t +1, if x e" 0 1 sigmoid(x) = stept (x) = sign(x) = 1+ e-x 0, if x < t -1, if x < 0 Zastosowanie funkcji aktywacji step powoduje, |e n n neurony mog dziaBa jak logiczne bramki. ai = stept ( " aj ) = step0( " aj ) "Wj,i "Wj,i j=1 j=0 gdzie W0,i = t, a0 = -1 MSI-w5/35 MSI-w5/36 Prosta sie neuronowa Struktury sieci neuronowych z propagacj w przd " Sieci feed-forward (nierekurencyjne)  Skierowany graf acykliczny  Neurony zwykle organizowane w warstwy  Poza warto[ciami wag brak wewntrznego stanu (bez pamici)  DziaBaj szybko, Batwo je zaprogramowa " Sieci rekurencyjne (mzg ludzki!!)  Maj stan wewntrzny a5Dwa wej[cia (I1 i I a4) = g(W3,5 " a3 +W4,52"), dwa neurony (H1 i H2) w warstwie  Zaawansowany aparat matematyczny  niekiedy dBugo trzeba czeka na stabilizacj wyj[cia ukrytej i jeden neuron (O5) na wyj[ciu sieci. = g(W3,5 " g(W1,3 " a1 +W2,3 " a2)+W4,5 " g(W1,4 " a1 +W2,4 " a2)) MSI-w5/37 MSI-w5/38 Perceptrony Liniowa separowalno[ " Mog reprezentowa zBo|one funkcje logiczne " Zastpuj zBo|one binarne drzewa decyzyjne (perceptron o n wej[ciach mo|na zastpi drzewem " Np. XOR nie jest liniowo separowalny decyzyjnym o 2n " Istnieje algorytm, ktry umo|liwia nauczenie ka|dej wzBach) liniowo separowalnej funkcji, gdy jest dostatecznie du|o przykBadw trenujcych MSI-w5/39 MSI-w5/40 Liniowa separacja w przestrzeni 3D Oglny algorytm uczenia sieci function NEURAL-NETWORK-LEARNING(examples) returns network network ! sie z losowo przyjtymi wagami repeat for each e in examples do O ! NEURAL-NETWORK-OUTPUT(network, e) T ! zaobserwowane warto[ci wyj[ciowe dla e zaktualizuj wagi w network bazujc na e, O, T end until wszystkie przykBady poprawnie sklasyfikowane lub osignite kryterium stop return network O - warto[c wyj[ciowa sieci, T - warto[ poprawna Reprezentuje funkcj minimalizacji MSI-w5/41 MSI-w5/42 ReguBa uczenia perceptronu " Uczenie polega na aktualizacji wag " Okre[la si bBd predykcji: Err = T - O Porwnanie zastosowania perceptronw i drzew gdy > 0, zwikszy O; gdy < 0, zmniejszy O decyzyjnych " UdziaB j-tego neuronu wej[ciowego w (a) Perceptron lepszy w uczeniu funkcji majoryzujcej wyj[ciu = Wj Ij dla 11 wej[, " ReguBa uczenia ( - prdko[ uczenia): (b) Drzewa decyzyjne lepsze w uczeniu predykatw Wj ! Wj + Ij Err WillWait (przykBad oczekiwania na stolik w restauracji) MSI-w5/43 MSI-w5/44 Dwuwarstwowa sie neuronowa nierekurencyjna dla zadania Wsteczna propagacja bBdu (1)  oczekiwanie na stolik w restauracji " Najbardziej popularna metoda uczenia NN Neuron wyj[ciowy " Bazuje na algorytmie uczenia perceptronu " Istota polega na odpowiednim rozdzielaniu Neurony ukryte bBdu proporcjonalnie do wag sieci " W wyra|eniu na aktualizacj wag uwzgldnia si gradient funkcji aktywacji Neurony wej[ciowe MSI-w5/45 MSI-w5/46 Wsteczna propagacja bBdu (2) Algorytm wstecznej propagacji bBdu Je[li dla i-tego wyj[cia Erri = Ti - Oi , to: " Oblicz warto[ci " dla neuronw wyj[ciowych stosujc uzyskany bBd 2 Wj,i ! Wj,i + " aj " Erri " g (ini) " Zaczynajc od warstwy wyj[ciowej, powtarzaj 2 Niech "i = Erri " g (ini). Wtedy : dla ka|dej warstwy sieci, dopki nie zostanie Wj,i ! Wj,i + " aj " "i osignita pierwsza warstwa ukryta: gdzie :  Propaguj warto[ci " do poprzedzajcej warstwy 2 " = g (inj)"Wj,i " "i . j i  Aktualizuj wagi poBczeD pomidzy obiema Dla warstwy wejsciowej: warstwami Wk , j !Wk , j + " Ik " " . MSI-w5/47 MSI-w5/48 j Powierzchnia bBdw dla gradientu spadku Dyskusja (1) w przestrzeni wag " SN s reprezentacj opart na atrybutach i nie pozwalaj na wyra|anie logicznych zale|no[ci (w odr|nieniu od drzew decyzyjnych), " Wydajno[ obliczeniowa SN zale|y od czasu, ktry jest potrzebny na trenowanie sieci, w celu jej dopasowania do danego zbioru przykBadw, " SN pozwalaj na generalizacj problemw, co czyni je przydatnymi w rozwizywaniu wielu zadaD [wiata rzeczywistego. Kiedy w1=a i w2=b bBd dla danego zbioru danych trenujcych jest minimalny MSI-w5/49 MSI-w5/50 PrzykBady zastosowaD Dyskusja (2) " Wymowa pisanych angielskich tekstw " SN nie s czuBe na szum na wej[ciu poniewa| realizowana przez komputer (NETtalk 1987). dziaBaj na zasadzie nieliniowej regresji, Litera  k odpowiada dzwikowi [k], ale litera  c " SN s czarnymi skrzynkami (s nieprzezroczyste); odpowiada tak|e [k] (cat) lub [s] nie mo|na uzyska odpowiedzi na pytanie: (cent).  dlaczego dane wyj[cie jest poprawne? , " Rozpoznawanie pisma odrcznego. " SN nie umo|liwiaj oceny jaka wiedza a priori stosowane do odczytywania adresw na jest najlepsza do ich nauczenia, co jest efektem kopertach (VLSI, 1989). ich nieprzezroczysto[ci. (Problem mo|e by " Sterowanie pojazdem poruszajcym si po usunity w sieciach przekonaD) autostradzie (ALVINN, 1993) MSI-w5/51 MSI-w5/52 Podsumowanie (1) Podsumowanie (2) " Sie neuronowa to model obliczeniowy o niektrych " Nierekurencyjne sieci wielowarstwowe o wBasno[ciach podobnych do mzgu odpowiednim stopniu zBo|ono[ci mog " Zachowanie si sieci okre[lone jest przez jej reprezentowa dowoln funkcj topologi " Algorytm uczenia ze wsteczn propagacj " Perceptron to rodzaj sieci jednowarstwowej, ktra bBdu umo|liwia uczenie nierekurencyjnych mo|e reprezentowa tylko funkcje liniowo sieci wielowarstwowych: separowalne  Jest zbie|ny do lokalnie optymalnego rozwizania " Dla danych separowalnych liniowo, reguBa uczenia  U|yty z powodzeniem w wielu zastosowaniach perceptronu poprzez modyfikacj wag sieci umo|liwia bezbBdne dopasowanie do danych MSI-w5/53 MSI-w5/54

Wyszukiwarka