6. Perceptron Rosenblatta 6-1 Krótka historia perceptronu Rosenblatta 6-2 Binarne klasyfikatory liniowe 6-3 Struktura perceptronu Rosenblatta 6-4 Perceptron Rosenblatta a klasyfikacja 6-5 Perceptron jednowarstwowy: uczenie 6-6 Modyfikacje algorytmu uczenia 6-7 Funkcja kosztu dla perceptronu Rosenblatta 6-8 Algorytm kieszeniowy Gallanta 6-9 Istnienie uniwersalnego dwuwarstwowego perceptronu Rosenblatta 6-10 Warstwa ukryta: kodowanie 6-11 Maszyny liniowe 6-12 Maszyna liniowa a perceptron 6-13 Uczenie jednowarstwowej maszyny liniowej 19 maja 2004 6. Perceptron Rosenblatta 6-0
Krótka historia perceptronu Rosenblatta Frank Rosenblatt(Cornell U.) 1958 uniwersalna maszyna do rozpoznawania i klasyfikacji wzorców sztuczny mózg, histeryczna reakcja mediów hardware: Mark I (1960) matryca 20 20 fotodiod, każda losowo łączona z 40 neuronami warstwy ukrytej 512 neuronów warstwy ukrytej 8 neuronów wyjściowych, silniki sterujące potencjometrami wag Rosenblatt Principles of Neurodynamics, 1962 Minsky i Papert(MIT) Perceptrons, 1969... większość publikacji jest bez wartości naukowej perceptron jednowarstwowy tylko klasyfikacja liniowa pozostało: connectionism, architektury warstwowe, obliczenia równoległe, uczenie wag 19 maja 2004 6. Perceptron Rosenblatta 6-1
Binarne klasyfikatory liniowe funkcjadecyzyjnad(u)=w T u+b funkcja klasyfikująca 1 jeśliw T u+b<0 l(u)= 1 jeśliw T u+b>0 margines funkcyjny obrazu u względem hiperpłaszczyzny H(w, b) > 0 poprawna klasyfikacja u f (u)=(w T u+b)l(u) <0 błędnaklasyfikacjau margines geometryczny obrazu u względem hiperpłaszczyzny H(w, b) odległość opatrzona znakiem przy niepoprawnej klasyfikacji g (u)= f(u) w = d ( u,h(w,b) ) d ( u,h(w,b) ) poprawnaklasyfikacjau błędnaklasyfikacjau 19 maja 2004 6. Perceptron Rosenblatta 6-2
Struktura perceptronu Rosenblatta jednowarstwowy perceptron Rosenblatta neuron dwuwartościowy (aktywny- nieaktywny) typowa funkcja aktywacji: sign dwuwarstwowy perceptron Rosenblatta wejścia:obrazyu R n (warstwansensorów) warstwa ukryta(asocjacyjna): wagi stałe warstwa wyjściowa(odpowiedzi): wagi adaptowane 19 maja 2004 6. Perceptron Rosenblatta 6-3
Perceptron Rosenblatta a klasyfikacja perceptronjakofunkcjaklasyfikująca(wejście:obrazy R n,wyjście:{ 1,1}) problem reprezentacji: czy rodzina funkcji wytwarzanych przez perceptron Rosenblatta jest wystarczająco bogata, by rozwiązać dowolny problem klasyfikacji? dla zadanego skończonego zbioru obrazów jednowarstwowy perceptron Rosenblatta może zrealizować dowolną klasyfikację liniową dla zadanego skończonego zbioru obrazów istnieje dwuwarstwowy perceptron Rosenblatta, którego wagi warstwy wyjściowej można tak dobrać, by realizować dowolne klasyfikacje binarne tych obrazów 19 maja 2004 6. Perceptron Rosenblatta 6-4
Perceptron jednowarstwowy: uczenie prezentacjaobrazówzezbioruuczącegou L : ciąguczący {( u(t),y (t) ),t=1,...,n } gdziey (t)=l(u(t)) wyjściepożądane epoka jednokrotna prezentacja wszystkich N obrazów ze zbioru treningowego w losowej kolejności modyfikacjawag w(t+1)=w(t)+ w(t) dowolne wagi początkowe w(0), korekcja wag w przypadku błędnej klasyfikacji 0 jeżeliy w T u>0 (klasyfikacjapoprawna) w= y u jeżeliy w T u 0 (klasyfikacjabłędna) =usign ( y y ) po skończonej liczbie korekcji sieć klasyfikuje prawidłowo wagi prawidłowo klasyfikujące nie są jednoznaczne 19 maja 2004 6. Perceptron Rosenblatta 6-5
Modyfikacje algorytmu uczenia zróżnicowanie współczynników szybkości uczenia µ: korekcjawprzypadkubłędnejklasyfikacji(y (w T u+b)<0) w=µul(u) b=µr 2 l(u) gdzier=max UL u tw.[novikoff] dla liniowo rozdzielnego zbioru uczącego o hiperpłaszczyźnie decyzyjnejh(w,b )liczbakorekcjijestniewiększaniż 4R2 gdzie 2 g oznacza geometryczny margines hiperpłaszczyzny decyzyjnej g = inf d ( u,h(w,b ) ) u U L współczynnikuczeniamożezmieniaćsięwczasie0<µ min <µ(t)<µ max korekcjabezwzględna powtarzaniekorekcjidlakażdegou i ażdopoprawnej klasyfikacjiu i 19 maja 2004 6. Perceptron Rosenblatta 6-6
Funkcja kosztu dla perceptronu Rosenblatta obrazy źle klasyfikowane przez hiperpłaszczyznę decyzyjną U(w, b) U L (w,b)={u U L (w,b):l(u)(b+w T u)<0} koszt błędnej klasyfikacji Q(w,b)= w d(u i,u(w,b))= (b+w T u i )sign(yi y i ) u i U L (w,b) u i U L Q(w)różniczkowalnazwyjątkiemNhiperpłaszczyzn{(w,b):u T iw+b=0}wr n+1 gradient dq(w) = u dw i U i L usign(yi y i ), metoda największego spadku z obliczeniem gradientu raz na epokę w(t+n)=w(t)+µ dq(w) dw =w(t)+µ u(t)sign ( y (t) y(t) ) t T k identyczna z algorytmem Rosenblatta z korekcją wag raz na epokę metoda największego spadku z chwilową aproksymacją gradientu w(t+1)=w(t)+µ d Q(w) dw =w(t)+µu(t)sign( y (t) y(t) ) identyczna z algorytmem Rosenblatta 19 maja 2004 6. Perceptron Rosenblatta 6-7
Algorytm kieszeniowy Gallanta waga wkieszeni w G (t) odpowiada najdłuższej w chwili t serii identycznych wag wagaoptymalnaw minimalizuje prawdopodobieństwo błędnej klasyfikacji jeżeli U L jestskończony wagi w(t) są losowe niezależne o identycznych rozkładach, to Plimw G (t)=w P{w G (t)=w } t 1 19 maja 2004 6. Perceptron Rosenblatta 6-8
Istnienie uniwersalnego dwuwarstwowego perceptronu Rosenblatta zbióruczącyu L ={u 1,...u N },u i R n warstwa ukryta: 2N neuronów dlakażdegoobrazuu i określićhiperpłaszczyzny H(v i,β i),h(v i,β i)ineuronyi,i,aby u i U (v i,β i) U + (v i,β i) u j U + (v i,β i) U (v i,β i),j i wyjścianeuronówukrytychdlawejściau i x i =0, x i =1 neuron wyjściowy x j =x j dlaj i w i =1,w i = 1jeżeliu i U w i = 1,w i =1jeżeliu i U + (w j x j +w j x j =0dlaj i) b=0 jakwyznaczyćv i,β i,β i konstrukcja nieefektywna: więcej neuronów ukrytych niż obrazów treningowych zła generalizacja dla praktycznych problemów 19 maja 2004 6. Perceptron Rosenblatta 6-9
Warstwa ukryta: kodowanie kodowaniewybranychobrazów Nwybranychobrazów,h=2N wymaga znajomości obrazów a zakłócenia? kodowaniezupełne wszystkieobrazybinarne,h=n 2 n nierealizowalnie duża warstwa ukryta dla rzeczywistych zadań kodowanie losowe warstwa ukryta o zadanej wielkości h wybrana losowo tylkon h+1obrazówklasyfikowanychpoprawnie tylko N = 2(h + 1) obrazów(pojemność liniowa) klasyfikowanych poprawnie z prawdopodobieństwem 0.5 kodowanie adaptacyjne najlepsze, ale wymaga adaptacji warstwy ukrytej 19 maja 2004 6. Perceptron Rosenblatta 6-10
Maszyny liniowe funkcjawta: R c R c ( winnertakesall ) 1 jeżeliz k >z j dlawszystkichj k WTA k (z 1,...,z c )= 0 w przeciwnym przypadku warstwaukrytax=1(vu) warstwawyjściowa:y=wta(wx) R c 1 jeżeliwk T y k = x>wt j xdlawszystkichj k 0 w przeciwnym przypadku część liniowa: funkcja decyzyjna, wyjście: funkcja przynależności χ 19 maja 2004 6. Perceptron Rosenblatta 6-11
Maszyna liniowa a perceptron maszyna liniowa z dwoma wyjściami 1 jeżeliw 1 x>w 2 x y 1 = 0 wprzeciwnymprzypadku =1(wT x) y 2 =1 y 1 jestrównoważnaperceptronowiowektorzewagwyjściowychw=w 1 w 2 a zatem może realizować dowolną binarną klasyfikację liniową maszyna liniowa z c wyjściami jest równoważna perceptronowi utworzonemu dla n c wymiarowej przestrzeni obrazów zawierającej N c razy więcej obrazów. maszyna liniowa o c wyjściach może realizować dowolną liniową klasyfikację na c klas 19 maja 2004 6. Perceptron Rosenblatta 6-12
Uczenie jednowarstwowej maszyny liniowej klasyfikacja liniowa skończonego zbioru obrazów na c klas każdy obraz pojawia wielokrotnie, w skończonych odstępach wagi początkowe dowolne algorytmkorekcjiwag W(t)=sign ( y (t) y(t) ) u T (t) dla obrazów klasyfikowanych poprawnie W(t) = 0 dla obrazów klasyfikowanych błędnie u(t) dla k = l(u(t)) (klasa właściwa) w k (t)= u(t) dlak=wta ( Wu(t) ) (klasawygrywająca) 0 dla pozostałych k wagi są prawidłowe po skończonej liczbie korekcji dla c = 2 algorytm identyczny z algorytmem Rosenblatta 19 maja 2004 6. Perceptron Rosenblatta 6-13