SN... 1 DZIEJE BADA¼ NAD SIECIAMI NEURONOWYMI - równoleg»y sposób przetwarzania informacji - 1957 : Perceptron, Cornell Aeronautical Laboratory (uk»ad elektromechaniczny do rozpoznawania znaków) 8 komórek, 512 po» cze½, szybkoñƒ 10 3 prze» cze½ na sekund - 1960 : Adaline, Uniwersytet Stanforda 8 modeli neuronów o 128 po» czeniach, szybkoñƒ 10 4 po» cze½ na sekund - zahamowanie bada½ na pocz tku lat 70-tych za spraw prac Minskiego i Paperta wykazuj cych ograniczony zakres zastosowa½ sieci liniowych - 1970 : Avalanche, Uniwersytet w Bostonie do rozpoznawania mowy i sterowania robota - 1970 : Cerebellatron, Massachusets, do sterowania robota - 1977: Brain State in a Box, Uniw. Browna, przeszukiwanie bazy danych - 1978: Neocognitron zbudowany przez Fukushim, rozpoznawanie znaków wielka liczba elementów i po» cze½, odczytywa» dowolne znaki, równieó zniekszta»cone - 1978: Adaptive Resonance Theory do rozpoznawania sygna»ów radaru, sonaru - 1980: uk»ady scalone modeli komórek nerwowych - sieci ze sprz óeniami zwrotnymi, poszukiwanie stanu równowagi w dynamicznym procesie iteracyjnym ( 1982, AT&T), wykorzystywane do odtwarzania obrazów z ich fragmentów).
SN... 2
SN... 3 SIE NEURONOWA Pierwowzorem jest mózg ludzki: 1400cm 3, powierzchnia 2000cm 2 (kula o tej samej obj. 600cm 2 ) Masa mózgu 1,5 kg, gruboñƒ kory mózgowej 3mm, 10 10 komórek nerwowych i 10 12 komórek glejowych. Liczba po» cze½ ok. 10 15, przec. dystans 0,01 do 1 mm. Impulsy o cz stotl. 1-100Hz, czas trwania 1-2ms, napi cie 100mV, szybkoñƒ propagacji 1-100m/s. Szacowana szybkoñƒ pracy mózgu: 10 operacji 10 15 synaps 100Hz = 10 18 operacji/s (najszybszy komputer 10 10 ). Typowa reakcja jest wykonywana w nie wi cej nió 100 krokach. PojemnoÑci informacyjne kana»ów szacuje si na: wzrok 100Mb/s, dotyk 1Mb/s, s»uch 15kb/s, w ch 1kb/s, smak 100b/s. Sieƒ neuronowa jest bardzo uproszczonym modelem mózgu. Wi budowanych sieci ma struktur warstwow : kszoñƒ wspó»czeñnie
SN... 4 ZASTOSOWANIA SIECI NEURONOWYCH - diagnostyka uk»adów elektronicznych - badania psychiatryczne - prognozy gie»dowe - prognozowanie sprzedaóy - poszukiwania ropy naftowej - intepretacja bada½ biologicznych - prognozy cen - analiza bada½ medycznych - planowanie remontów maszyn - prognozowanie post pów w nauce - typowania na wyñcigach konnych - analiza problemów produkcyjnych - optymalizacja dzia»alnoñci handlowej - analiza spektralna - optymalizacja utylizacji odpadów - dobór surowców - selekcja celów Ñledztwa w kryminalistyce - dobór pracowników - sterowanie procesów przemys»owych - kontrola bagaóu na lotniskach (sieƒ SNOOPE, 1988) - analiza sygna»ów sonarowych (f-ma Bendix Aerospace) - czytanie pisma, równieó japo½skiego (NestorWriter) - synteza mowy (NETtalk) - weryfikacja podpisów - konwersja, filtracja, aproksymacja i transformacja (Fouriera) - automatyka (uk»ady regulacji), robotyka i teoria sterowania (uk»ady samoucz ce si ) - informatyka (pami ci asocjacyjne dwukierunkowe BAM, modele pami ci biologicznej)
SN... 5 WAòNIEJSZE KIERUNKI ZASTOSOWA¼ 1. Predykcja Opiera si na zdolnoñci przewidywania sygna»ów wyjñciowych bez koniecznoñci stawiania w sposób jawny hipotez o naturze zwi zku pomi dzy danymi wej Ñciowymi, a przewidywanymi wynikami. - ocena zdolnoñci kredytowych przedsi biorstw - prognozy ekonomiczne - gra na gie»dzie 2. Klasyfikacja i rozpoznawanie podmiotów gospodarczych Moóna traktowaƒ jako predykcj stanu przedsi biorstwa 3. Kojarzenie danych Klasyczne komputery gromadz c wielkie zbiory nie s w stanie ich kojarzyƒ lub wnioskowaƒ 4. Analiza danych Szukanie zwi zków nie tylko przyczynowych, ale i incydentalnych. Przez to nowe mo óliwoñci analiz ekonomicznych i gry rynkowej. Ustalanie przyczyn niepowodze½. 5. Filtracja sygna»ów W telekomunikacji, w diagnostyce medycznej... Filtry danych gospodarczych 6. Optymalizacja Zw»aszcza sieci Hopfielda nadaj si do poszukiwania rozwi za½ prowadz cych do optymalnych decyzji gospodarczych. Optymalizacja statyczna, dynamiczna i kombinatoryczna.
SN... 6 WºAÐCIWOÐCI SIECI NEURONOWYCH Sieci z jednokierunkowymi po» czeniami ( feedforward ) Sieci ze sprz óeniami zwrotnymi ( Hopfielda ) Zdolnoу sieci do adaptacji i samoorganizacji Zmniejszona wraóliwoñƒ na uszkodzenia elementów Praca równoleg»a (jak w systemach wspó»bieónych) Zamiast projektowaƒ algorytm, stawia si sieci zadania i automatycznie, zgodnie z za»oóon strategi zmienia po» czenia i wspó»czynniki wagowe. Sieƒ wi c programuje si sama, ale wymaga to czasem nawet setek tysi cy iteracji. LINIOWE SIECI NEURONOWE Rys.3. Pojedynczy element sieci Sygna»y x i y mog przyjmowaƒ wartoñci z pewnego przedzia»u, np. z dok»adnoñci do funkcji skaluj cej moóna zapisaƒ: x i 0 [-1, 1] y 0 [-1, 1] Zaleónoу y= f(x 1, x 2,..., x n ) w najprostszym przypadku jest liniowa: Wspó»czynniki w i zwane s wagami synaptycznymi i podlegaj modyfikacji w trakcie procesu uczenia. Element opisany powy ószym równaniem liniowym jest mi dzy innymi zdolny do rozpoznawania sygna»ów wejñciowych.
SN... 7 Zestaw sygna»ów wejñciowych tworzy wektor: Równowaónie moóna zapisaƒ X = [x 1, x 2,..., x n ] T oraz W = [w 1, w 2,..., w n ] T y = W C X lub y = W T X Neuron rozpoznaje wi c sygna»y wejñciowe podobne do jego wag. Gdy dodatkowo X i W s znormalizowane: 2 X 2 = X T X = 1 2 W 2 = W T W = 1 sygna» wyjñciowy neuronu moóna wyznaczyƒ jako y = cos n, gdzie n = k t pomi dzy X i Y
SN... 8 WARTSTWA NEURONÓW JAKO NAJPROSTSZA SIEˆ Kaódy neuron ma ten sam zestaw sygna»ów wejñciowych X = [x 1, x 2,..., x n ] T, natomiast kaódy ma swój w»asny wektor wag W (m) = [w 1 (m), w 2 (m),..., w n (m) ] T, m = 1, 2,..., k. Sygna» wyjñciowy neuronu moóna wyznaczyƒ ze wzoru Maksymalny jest sygna» na tym neuronie, którego wektor wag W (m) najbardziej przypomina X Sygna» wyjñciowy warstwy neuronów wynosi Y = [y 1, y 2,..., y n ] T i moóna go wyznaczyƒ mnoó c Y = W k X gdzie: Macierz W k zadaje odwzorowanie liniowe sygna»u X 0 U n w sygna» Y 0 U k. Odwzorowanie to moóe byƒ dowolne. Moóna je równieó traktowaƒ jako filtracj.
SN... 9 UCZENIE POJEDYNCZEGO NEURONU Aby umoóliwiƒ uczenie, neuron musi posiadaƒ procesor zmiany wag i detektor b» du. Taki neuron nazywany jest ADALINE ( ADAptive LINear Element). Za»óómy, óe zadanie stawiane ADALINE polega na tym, by sygna» y by» zwi zany z sygna»ami X : y = f ( X ). Funkcja f nie musi by ƒ podana jawnie, wystarczy dla kaódego X podaƒ wartoñƒ z stanowi c ó danie odnoñnie sygna»u wyjñciowego y : z = f ( X ). Rys.6. Neuron z procesorem wag i detektorem b» du Algorytm uczenia Widrowa i Hoffa DELTA zak»ada podawanie dodatkowo wartoñci z. Detektor b» du wyznacza * = z - y, które koryguje wektor wag W tak, by neuron lepiej realizowa» Nowy wektor wag W ' obliczany jest ze wzoru: y = f( X ). W ' = W + 0 * X 0 jest wspó»czynnikiem decyduj cym o szybkoñci uczenia. Uzasadnienie: za»óómy, óe * > 0, tzn. z > y (sygna» by» zbyt ma»y, czyli k t pomi dzy X i W zbyt duóy). òeby y by» maksymalny, trzeba uzgodniƒ kierunki X i W. Nowy wektor W ' = W + X jest zawsze bliószy X nió poprzedni W. Czyli uczenie nakazuje dodawanie fragmentu wektora X, co zapobiega zbyt gwa»townym obrotom wektora W przy kaódym napotkanym b» dzie. Przy * < 0 nast puje oddalanie W od X.
SN... 10 PROCES UCZENIA SIECI Ci g ucz cy ma struktur : Czyli regu»a DELTA: U = << X (1), z (1) >, << X (2), z (2) >,..., << X (N), z (N) >> gdzie: W (j+1) = W + 0 * X * = z - y y = W C X Pocz tkowy wektor wag W (1) powinien mieƒ sk»adowe wybrane losowo. Nie naleóy przyjmowaƒ jednakowych wartoñci dla wszystkich sk»adowych. Celem procesu uczenia jest minimalizacja funkcji (jak w metodzie najmniejszych kwadratów): Przy zastosowaniu metody gradientowej dla i-tej sk»adowej wektora W : WartoÑci 0 zaleó od j i tworz ci g <0 (1), 0 (2), 0 (3),..., >. Na podst. teorii aproksymacji musi on spe»niaƒ warunki : Moóe to byƒ np. ci g : 0 maleje szybko ze wzrostem j i szybkoñƒ uczenia moóe maleƒ lub wr cz zatrzymywaƒ si.
SN... 11 Proponuje si wartoñci ci gu obliczane ze wzoru: 8 jest pewn ustalon wartoñci zwykle z przedzia»u <0.1, 1 >. W praktyce cz sto wybiera si ustalone 0, niezaleóne od j. Zbyt duóe : niezbieónoñƒ algorytmu, zbyt ma»e : nieefektywny proces uczenia. Proces uczenia moóna potraktowaƒ jako gradientow minimalizacj funkcji b» du dla kroku j Poniewaó Q = 1/2 (z - y ) 2 : Ostatecznie otrzymuje si formu» uczenia neuronu typu ADALINE )w i = 0 * x i Funkcja Q jest unimodalna wi c proces uczenia jest zbieóny.
SN... 12 UCZENIE SIECI ELEMENTÓW LINIOWYCH Dobierana jest w tym wypadku macierz W k, a ci g ucz cy ma postaƒ: U = << X (1), Z (1) >, << X (2), Z (2) >,..., << X (N), Z (N) >> gdzie : Z - k-elementowe zestawy wymaganych odpowiedzi sieci na wymuszenia X. Jest to sieƒ typu ManyADALINE. Sieƒ wielowarstwowa MADALINE ma takie same w»asnoñci jak jednowarstwowa. Formu»a uczenia ma postaƒ macierzow : W k (j+1) = W k + 0 ( Z - Y ) ( X ) T Wymiar macierzy poprawek )W k [k n] Uczenie sieci moóna porównaƒ do filtracji adaptacyjnej. Mog one byƒ uóyte do zada½ typowych dla sieci neuronowych, np. do pami ci adresowanych kontekstowo lub asocjacyjnych. Inne zadania to np. filtr nowoñci - wyñwietlaj cy na ekranie fragmenty sceny ulegaj ce zmianie. UCZENIE BEZ NAUCZYCIELA unsupervised learning lub hebbian learning Waga w i (m) i-tego wejñcia m-tego neuronu wzrasta podczas prezentacji wektora X : w i (m)(j+1) = w i (m) + 0 x i y m, gdzie Taka sieƒ jest autoasocjacyjna. Sieƒ moóe grupowaƒ podobne pobudzenia. Jest ona zdolna równieó do rozpoznawania obiektów nie pokazanych wcze Ñniej. Liczba neuronów w sieci k musi byƒ wi ksza nió liczba rozróónianych klas obiektów.
SN... 13 WARIANTY UCZENIA Przyrostowe samouczenie (differential hebbian learning) : (m)(j+1) (m) (j-1) (j-1) w i = w i + 0 [( x i - x i )( y m - y m )] Gwiazda wejñƒ (instar training) (wybieranie ucz cego si neuronu) : w (m)(j+1) i = w (m) i + 0 ( x i - w (m) i ) Empiryczna regu»a dla wyboru 0 : 0 = 0.1-8 j, 8 na tyle ma»e, by stale 0 > 0. Metoda stosowana w przypadku, gdy trzeba nauczyƒ sieƒ rozpoznawania sygna»u X Gwiazda wyjñƒ (outstar) w i (m)(j+1) = w i (m) + 0 ( y m - w i (m) ) i jest ustalone, a m jest zmienne. Regu»a dla wyboru 0 jest podobna : 0 = 1-8 j Metoda stosowana przy uczeniu sieci wytwarzania okre Ñlonego wzorca zachowa½ Y w odpowiedzi na sygna» inicjuj cy. Uczenie z dyskryminacj oraz Technika uczenia wed»ug zmodyfikowanego algorytmu Hebba w i (m)(j+1) = w i (m) + 0 x i * y m * ) Ten wzór pozwala wy» cznie na zwi kszanie wag. Alternatywna wersja pozwala na zmniejszanie wag wejñƒ nieaktywnych (regu»a Hebb/Anti-Hebb) : Dalsze poszerzenie daje wzór Hopfielda : w i (m)(j+1) = w i (m) + 0 x i * ( 2y m * - 1), y m * 0 {0,1} w i (m)(j+1) = w i (m) + 0 x i * ( 2x i * - 1)( 2y m * - 1)
SN... 14 Uczenie z rywalizacj (competitive learning) Formu»a jak przy uczeniu instar w i (m*)(j+1) = w i (m*) + 0 ( x i * - w i (m*) ) dodatkowo: wektor wejñciowy X jest normalizowany : 2 X 2 = 1, czyli Numer poddawanego treningowi neuronu nie jest przypadkowy, lecz taki, którego sygna» wyjñciowy y m* jest najwi kszy. Oznacza to, óe neurony rywalizuj ze sob i wygrywa ten, który uzyska» najwi ksze y m*. Uczeniu podlega tylko ten zwyci ski neuron. Czyli efektem jest jeszcze lepsze dostosowanie jego wektora wag W (m*)(j+1) do rozpoznawania obiektów podobnych do X. Inne neurony b d uczone przy pokazie innych obiektów. Regu»a uczenia Kohonena polega dodatkowo na uporz dkowaniu neuronów. Uczeniu podlega nie jeden neuron, lecz równieó neurony z nim s siaduj ce: gdzie np.: w i (m)(j+1) = w i (m) + 0 h(m, m * ) ( x i * - w i (m) ) h(m, m * ) moóe byƒ wyraóone za pomoc innych funkcji, wybranych funkcji. Dwuwymiarowa odmiana sieci Kohonena - uczenie z uwzgl dnieniem dwuwymiarowego s siedztwa. Sieci te mog odwzorowywaƒ struktur dwuwymiarowego obiektu.
SN... 15 Uczenie z forsowaniem Forsowanie poprawnych rozwi za½ bez wzgl du na to, co robi sieƒ. Istotne przyñpieszenie procesu uczenia. Odmiany: metoda autoasocjacji: w i (m)(j+1) = w i (m) + 0 x i z m metoda przyrostowej autoasocjacji w i (m)(j+1) = w i (m) + 0 ( x i - x i (j-1) )( z m - z m (j-1) ) metoda zblióania wag do wektora odpowiedzi w i (m)(j+1) = w i (m) + 0 ( z m - w i (m) ) Wprowadzaj c podobnie jak poprzednio moóna podaƒ trzy kolejne regu»y uczenia: w i (m)(j+1) = w i (m) + 0 x i * z m * w i (m)(j+1) = w i (m) + 0 x i * (2 z m * - 1) w i (m)(j+1) = w i (m) + 0 x i * (2 x i * - 1)(2 z m * - 1) Wybór regu»y jest podyktowany jej przydatnoñci w konkretnym zadaniu. Przydatnoу t moóna cz sto okreñliƒ jedynie na drodze eksperymentu.
SN... 16 PRZYSPIESZANIE PROCESU UCZENIA Wi kszoñƒ opisanych metod daje wynik dopiero po prezentacji duóej (nawet setki tysi cy) liczby pokazów. Jedn z metod przyspieszenia jest dobór 0 omówiony przedtem. Inn metod jest wprowadzenie do wzoru na korekt wektora wag sk»adnika "bezw»adnoñci" w postaci tak zwanego momentum, np. w nast puj cy sposób: W k (j+1) = W k + 0 1 ( Z - Y ) [ X ] T + 0 2 M gdzie momentum M wyliczane jest ze wzoru M = W k - W k (j-1) Daje to polepszenie nie tylko szybkoñci uczenia, lecz i stabilnoñci procesu. Moóna wtedy bezpiecznie zwi kszyƒ wspó»czynnik 0. DoÑwiadczenie pokazuje, óe dobre wyniki procesu uczenia daje 0 1 = 0.9 oraz 0 2 = 0.6. Czasami stosuje si zmniejszanie wartoñci 0 w kolejnych krokach j pozostawiaj c sta»e 0 1 /0 2. Nast pna technika zwi kszaj ca szybkoñƒ - ograniczenie procesu do duóych poprawek. Regu»a uczenia zawiera wtedy dodatkowy parametr 0 3 : 0 3 powinien na pocz tku uczenia przyjmowaƒ wartoñƒ 0.2, a nast pnie maleƒ do zera. Metoda przyñpieszania wyk»adniczego Inne waóenie sk»adników koryguj cych wektor wag: W k (j+1) = W k + 0 1 {(1-0 2 )( Z - Y ) [ X ] T + 0 2 (W k - W k (j-1) )} Randomizacja zbioru ucz cego <X, Z > Raczej nie wybieraƒ cyklicznie, moóna mieszaƒ pokazy w kaódym cyklu Technika kumulowania b» dów: podzia» ci gu ucz cego j na odcinki o d»ugoñci 0 4, praktycznie 30 # 0 4 # 50, ponumerowanie tych odcinków indeksami j * i obliczanie w kaódym z nich skumulowanego b» du : Nowe wartoñci wag : W k (j*+1) = W k (j*) + S (j*), s one wprowadzane jedynie w momentach j = 0 4 j *, j * = 1,2,...