2 Sztuczne sieci neuronowe Sztuczna sieć neuronowa (NN ang. Neural Network) to bardzo uproszczon model rzeczwistego biologicznego sstemu nerwowego. Sztuczną sieć neuronową można zdefiniować jako zespolon zbiór wielu elementarnch jednostek obliczeniowch, zwanch neuronami, uporządkowanch w ten sposób, ab razem mogł wkonać zadan problem numerczn. Najważniejszą instrukcją neuronu jest funkcja aktwacji, która definiuje relację pomiędz sgnałami przesłanmi do neuronu, a jego reakcja w postaci sgnału wjściowego. 3 Model neuronu drzewo dendrtów akson Biologiczn neuron Ciało komórki snaps W mózgu ludzkim: 0 neuronów 0 5 połączeń (t) x 2 (t).. x n(t) wejścia wagi połączeń w w 2 w n w 0 + funkcja aktwacji neuronu f(u) n u(t)= Σ x iwi + w 0 =f(u)= dla u > 0 i= 0 dla u 0 (t) wjście
0 Cech charakterstczne biologicznego układu nerwowego wsoki stopień równoległości przesłu impulsów; umiejętność radzenia sobie z informacją niepełną, zaszumioną lub niespójną; małe rozmiar i małe zużcie energii; elastczność działania przejawiająca się, jako proces uczenia, czli umiejętność dostosowwania się do zmiennch stuacji bez potrzeb zaprogramowania jego działania; duża odporność na uszkodzenia i obumieranie części komórek. Zalet sztucznch sieci neuronowch Zdolność nauki sieci (adaptacjność) na podstawie przedstawionch przkładów. Analogia do człowieka uczącego się na podstawie doświadczeń i powtarzania informacji, np. nauka alfabetu Zdolność uogólniania (samoorganizacji) przez sieć neuronową zjawisk (klasfikacji) na podstawie przedstawianch w trakcie nauki przkładów. Analogia do kojarzenia przez człowieka faktów, np. podział pewnch obiektów, zjawisk na zbliżone do siebie grup Zdolność do interpretacji zjawisk i zależności o którch informacje są niekompletne lub zawierają błęd. 2
2 Zalet sztucznch sieci neuronowch Równoległość przetwarzania informacji, gwarantująca bardzo szbkie działanie sieci neuronowej. Np. komputer neuronow wkorzstwan w sstemach rozpoznawania mow i przetwarzania obrazów wkonuje 20-tera operacji na sekundę. Niski koszt budow neurokomputera w powiązaniu z jego szbkością przetwarzania informacji. Komputer tradcjn ma zazwczaj jeden lub kilka bardzo silnch, ale dość drogich procesorów, natomiast neurokomputer to zestaw wielu bardzo prostch procesorów (neuronów) i równocześnie bardzo tanich. 3 Zalet sztucznch sieci neuronowch Odporność na uszkodzenia układów. Neurokomputer w przpadku utrat części połączeń (neuronów) niekoniecznie musi funkcjonować błędnie. Wnika to ze znacznego zmasowania liczb elementów przetwarzającch informację. 3
4 Zastosowania sztucznch sieci neuronowch Klasfikacja (kojarzenie danch). Na podstawie danch uczącch opisującch zdarzenia mogące podlegać klasfikacji, sieć ucz się przporządkowwania zdarzeń do danej klas. Wkrwanie grup (analiza danch) i wdobwanie cech. Zdolność do wkrwania grup umożliwia np. separację sgnału właściwego od szumów (filtracja sgnałów), a wdobwanie cech redukcję wmiaru danch (kompresja danch). 5 Zastosowania sztucznch sieci neuronowch Aproksmacja. Na podstawie znajomości niektórch punktów aproksmowanej krzwej sieć ucz się kształtu wkresu całej funkcji, nabierając zdolności do uogólnień. Predkcja. Zdolność do prognozowania danch wjściowch (przszłch zdarzeń) na podstawie nauczonch danch wejściowch skorelowanch z odpowiadającmi im danmi wjściowmi. Optmalizacja. Zdolność do rozwiązwania większości zadań z zakresu optmalizacji (minimalizacja zadanch funkcji kosztów), w tm również kombinatorcznej. 4
6 Zastosowania sztucznch sieci neuronowch Układ sterujące. Na podstawie nauczonch danch opisującch prawidłowe reakcji układu sterującego na określone stuacje, sieć zdolna jest w sposób automatczn interpretować bieżącą stuację i odpowiednio do niej zareagować. Rozpoznawanie i odtwarzanie obrazów. Sieć nauczona na odpowiednio dużej liczbie przkładów jest w stanie rozpoznać obraz i przpisać go do danej grup. Pamięć. Sieć neuronową można wkorzstać jako pamięć dla określonch danch. 7 Funkcja aktwacji Funkcja liniowa = f(u)=u Funkcja sigmoidalna unipolarna u = f ( u) = βu + e (t) f(u) Funkcja progowa unipolarna i bipolarna wagi dla upołączeń > 0 funkcja aktwacji dla u > 0 neuronu = = 0 dla u 0 dla u 0 (t) w w 0 x 2 (t) w 2 (t) - + u -f(u) u.. x n(t) - - w n wejścia Funkcja sigmoidalna bipolarna βu βu e e = tgh( βx) = βu βu e + e wjście - u - u - - 5
8 Metod uczenia Pod pojęciem uczenia neuronów (sieci) rozumie się wmuszanie na nich (na niej) określonego reagowania na zadane sgnał wejściowe Trb uczenia: uczenie z nauczcielem (supervised learning) oprócz sgnałów wejściowch tworzącch wektor x znane są również pożądane sgnał wjściowe neuron d i tworzące wektor d, a dobór wag neuronu musi bć przeprowadzon w taki sposób, ab aktualn sgnał wjściow neuronu i bł najbliższ wartości zadanej d i. x Sieć neuronowa W obliczanie odległości ρ( d,) pożądana odpowiedź d 9 Metod uczenia uczenie bez nauczciela (unsupervised learning). W tm przpadku pożądane wartości d i sgnału wjściowego neuronu nie są znane. Dobór wag odbwa się wted albo prz wkorzstaniu korelacji sgnałów uczącch (metod hebbowskie) bądź z wkorzstaniem konkurencji neuronów (strategia Winner Takes All WTA lub Winner Takes Most WTM) x Sieć neuronowa W Algortm doboru wag 6
22 Modele neuronów - perceptron Reguła perceptronu Jeśli wartość i równa się wartości zadanej d i, wówczas wagi w ij pozostają niezmienione. Jeśli wartość i = 0, a odpowiadająca mu wartość zadana d i =, wówczas uaktualnianie wag odbwa się zgodnie ze wzorem: w ij (k +) = w ij (k) + x j. Jeśli wartość i =, a odpowiadająca mu wartość zadana d i = 0, wówczas uaktualnianie wag odbwa się zgodnie ze wzorem: w ij (k +) = w ij (k) x j. N ui = wij x j j= 0 i = f ( ui ) = 0 Para ucząca: x, d i E = k = p ( k) ( k) ( i di ) Metoda uczenia: z nauczcielem, bezgradientowa dla ui > 0 dla ui 0 Reguła Widrowa-Hoffa wij ( k + ) = wij ( k) + wij wij = x j ( d ) i i 2 27 E 20 Modele neuronów neuron sigmoidaln 5 0 0.8 0.2 0.06 5 0 0 5 E=f(w,w2) 0.24 βu dwij = ηδ i x j dt - E E 0 5 20 Uaktualnianie wag neuronu sigmoidalnego wij ( k + ) = wij ( k) ηδix j lub η ( 0,) = f ( u) = + e df ( u) = βf ( u) ( f ( u) ) du βu βu e e = tgh( βu) = βu βu e + e df ( u) = β du 2 ( f ( u )) E = ( ) 2 i d i 2 N i = f ( ui ) = f wij x j j = 0 de df ( ui ) j E = = ei x j dwij dui df ( ui ) δ i = ei dui de E = dw je = δi x j ei = i di 7
40 Sztuczne sieci neuronowe Sieć jednokierunkowa jednowarstwowa Sieć jednokierunkowa wielowarstwowa Sieć komórkowa Sieć rekurencjna 4 Sieć neuronowa jednokierunkowa jednowarstwowa Neuron ułożone w jednej warstwie działają niezależnie od siebie możliwości sieci są ograniczone do możliwości pojednczch neuronów, czli klasfikacji sgnałów liniowo separowalnch (patrz perceptron) Dobór wag następuje w procesie uczenia, czli dla danego wejściowego wektora uczącego x dopasowanie sgnałów wjściowch i do wartości zadanch d i. Miarą dopasowania jest funkcja celu, która prz p wektorach uczącch (x, d) zdefiniowana jest jako: p M ( k) ( k) 2 E = ( i di ) 2 k = i = 8
42 Sieć neuronowa jednokierunkowa jednowarstwowa Ograniczenia zastosowań sieć dwuwarstwowa w x 2 w 0 w w 2 w 2 x w w 20 w w 2 0 w w 22 2 u =0 u 2 =0 x x 2 x 0 0 x 2 0 0 d 0 0 43 Sieć neuronowa jednokierunkowa wielowarstwowa Sieć wielowarstwową tworzą neuron ułożone w wielu warstwach, prz czm oprócz warstw wejściowej i warstw wjściowej istniej co najmniej jedna warstwa ukrta. Celem uczenia sieci jest określenie wartości wag w ij (k) wszstkich warstw sieci w taki sposób, ab prz zadanm wektorze wejściowm x uzskane na wjściu wartości sgnałów i odpowiadał z dostateczną dokładnością wartościom zadanm d i Schemat sieci o jednej warstwie ukrtej N () v i = f w i x j () j = 0 K (2) k = f wki vi i= 0 k K N (2) () f wki f w ij x j i = 0 j = 0 (3) = (2) 9
47 Algortm propagacji wstecznej. Pobranie ze zbioru uczącego par wektorów x, d (wejścieoczekiwane wjście). 2. Analiza sieci w zwkłm kierunku przepłwu sgnałów Schemat sieci o jednej warstwie ukrtej Dla sgnałów wejściowch sieci równch elementom wektora x otrzmuje się wartości sgnałów wjściowch neuronów warstw ukrtch oraz warstw wjściowej. Wznacza się sgnałów błędu wjścia sieci jako różnicę wartości aktualnej (element wektora ) i wartości oczekiwanej (element wektora d) Oblicza się pochodne funkcji aktwacji w poszczególnch warstwach 48 Algortm propagacji wstecznej 3. Utworzenie sieci propagacji wstecznej przez odwrócenie kierunku przepłwu sgnałów, zastąpienie funkcji aktwacji przez ich pochodne przłożenie na błm wjściu (obecnie wejściu) Schemat sieci o jednej warstwie wznaczonch wcześniej sgnałów ukrtej błędu wjścia. Dla tak skonstruowanej sieci obliczenie sgnałów błędu przeniesienia do węzłów poszczególnch wag 4. Adaptacja wag na podstawie wników uzskanch w punkcie 2 i 3 5. Powższe kroki należ powtórzć dla wszstkich par wektorów uczącch x, d. 6. Proces należ kontnuować do spełnienia warunków zatrzmania algortmu gd norma gradientu spadnie poniżej pewnej granic ε określającej dokładność procesu uczenia. 0
66 Aproksmacja.. Na podstawie znajomości niektórch punktów aproksmowanej krzwej sieć ucz się kształtu wkresu całej funkcji, nabierając zdolności do uogólnień. Np. na podstawie danch pomiarowch sieć może generalizować przebieg funkcji w n-wmiarowej przestrzeni (np. oporu ruchu pojazdu od jego prędkości, prędkości i kierunku wiatru, rodzaju podłoża, kąta nachlenia jezdni). 67 Rozpoznanie i klasfikacja wzorców. Ekstrakcja cech np. w przpadku rozpoznawania figur dwuwmiarowch dane dotczące kształtu figur są prz wkorzstanie transformacji Fouriera przetwarzane w sposób uniezależniając obraz od skali, przesunięcia i rotacji (deskrptor wzorców). 2. Następnie określona liczba k najbardziej znaczącch składników transformacji podawana jest na sieć neuronową wielowarstwową. Liczba węzłów wejściowch jest równa liczbie deskrptorów Fouriera branch pod uwagę w klasfikacji, a liczba neuronów wjściowch równa liczbie klas (np. trójkąt, kwadrat, koła lub samolot, czołgi, samochod).
68 Kompresja danch. Kompresja tpu stratnego. Sieć z jedną warstwą ukrtą charakterzująca się tm, że: liczna neuronów wjściowch jest równa liczbie węzłów wejściowch n. Odpowiada ona np. liczbie pikseli fragmentu obrazu poddawanemu kompresji, którego stopnie szarości tworzą składowe wektora wejściowego x liczba neuronów q w warstwie ukrtej jest mniejsza od liczb neuronów wjściowch. Wobec q<n warstwa ukrta zawiera mniejszą liczbę informacji od warstw wejściowej. Warstwa wejściowa i warstwa ukrta stanowią kompresję danch, a warstwa ukrta i wjściowa dekompresję. wektor sgnałów warstw ukrtej (sgnał skompresowane: 69 Kompresja danch () h = W x wektor sgnałów wjściowch (sgnał zdekompresowane) ) (2) (2) () x = W h = W W x 2
70 Identfikacja obiektów dnamicznch f ( x( k), u( )) ( x( )) x ( k + ) = k ( k) = g k Problem identfikacji: zbudowanie modelu obiektu dnamicznego określenie jego parametrów, ab odpowiedzi obiektu (k) i jego modelu (k) na to samo wmuszenie bł równe z określoną tolerancją. ( k) ( k) ε Źródło: S. Osowski Sieci neuronowe do przetwarzania informacji 7 Identfikacja obiektów dnamicznch. Wkorzstanie sieci neuronowej sigmoidalnej wielowarstwowej 2. Wkorzstanie sgnałów opóźnionch sstemu dnamicznego jako sgnałów wejściowch sieci. Źródło: S. Osowski Sieci neuronowe do przetwarzania informacji 3
72 Predkcja Prognozowanie szeregów czasowch na podstawie cech procesu podlegającego predkcji. Np. prognozowanie wskaźników giełdowch na podstawie danch o gospodarce, stuacji politcznej, standardowch zachowań inwestorów, dotchczasowe ogólnch trendów na giełdzie. Danmi do uczenia są wskaźniki giełdowe, gospodarcze, politczne z okresów poprzednich ujęte w postaci ciągów czasowch. 73 Predkcja Prognozowanie szeregów czasowch na podstawie cech procesu podlegającego predkcji. Prognozowanie obciążeń godzinnch sstemu elektroenergetcznego (Metod sztucznej inteligencji w elektroenergetce. P. Helt i inni, Wd. Pol. Warszawskiej). Rozwiązanie: sieć z dwoma warstwami ukrtmi uczona metodą propagacji wstecznej o: 0 wejściach (tp dnia (), obciążenia o godz. t oraz t- w trzech poprzednich dniach (6), o godz. t- tego samego dnia (), 5 oraz 0 neuronach w warstwach ukrtch, neuronie wjściowm. Wnik działania sieci : średni błąd predkacji,29% 4
74 Diagnostka i detekcja Na podstawie danch mierzalnch np. prądów, napięć, moc - oraz ewentualnie ich wstępnego przetworzenia (np. określenie amplitud harmonicznch i ich rzędu w przebiegu prądu zasilania silnika) można prowadzić prz pomoc odpowiednio wtrenowanej sieci neuronowej diagnostkę prac urządzeń technicznch oraz detekcję zakłóceń. 75 Diagnostka i detekcja Przkład: detekcja uszkodzeń transformatora (Metod sztucznej inteligencji w elektroenergetce. P. Helt i inni, Wd. Pol. Warszawskiej). sieć neuronowa z jedną warstwą ukrtą sgnał wejściowe (0) - temperatura transformatora, prąd stron pierwotnej i wtórnej transformatora, prąd różnicow stron pierwotnej i wtórnej, prędkość przepłwu i poziom oleju w kadzi, neuron warstw wjściowej - 7 identfikujące 7 rodzajów stanu awarjnego transformatora: przeciążenie, 3 rodzaje zwarć, nadmiern przrost temperatur z sgnalizacją lub włączeniem, stan normaln, 8 neuronów w warstwie ukrtej. 5
76 Sterowanie i optmalizacja Sterowanie urządzeniem technicznm prz optmalizacji określonego wskaźnika jakości sterowania. Przkład: optmalizacja nastawień baterii kondensatorów w elektroenergetcznch sieciach rozdzielczch (Metod sztucznej inteligencji w elektroenergetce. P. Helt i inni, Wd. Pol. Warszawskiej). Obiekt sterowania: rozległa sieć, którą podzielono na 6 podsieci. W różnch miejscach sieci znajduje się 6 baterii kondensatorów do kompensacji moc biernej, każda bateria ma 4 poziom regulacji moc biernej. 77 Sterowanie i optmalizacja Cel: Takie sterowanie bateriami kondensatorów w zależności od aktualnch i prognozowanch obciążeń, ab zmaksmalizować oszczędności uzskane dzięki optmalizacji nastawień baterii kondensatorów dane z optmalizacji analitcznej stanowił wzorce uczące. Rozwiązanie: Dwa etap prac sieci neuronowej: prognozowanie profili obciążenia każdej podsieci: dla każdej podsieci sieć neuronowa o 4 wejściach(p, Q, V, nc) i 24 neuronach w warstwie ukrtej, sterowanie każdej kondensatorów: dla każdej baterii sieć 6- wejściowa (profil obciążenia każdej podsieci) o 32 neuronach w warstwie ukrtej i 4 neuronach wjściowch (4 stopnie regulacji moc baterii). 6