1 / 36

KIP

KIP. Sztuczne sieci neuronowe (SSN). Sieć neuronowa – definicja.

Download Presentation

KIP

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. KIP Sztuczne sieci neuronowe (SSN)

  2. Sieć neuronowa – definicja • Jest to struktura fizyczna lub program składające się z elementów zwanych neuronami, pomiędzy którymi wymieniana jest informacja. Zaprojektowana jest tak by działaniem przypominać funkcjonowanie mózgu człowieka. Jej celem jest przetworzenie danych wejściowych w użyteczne sygnały wyjściowe. Umiejętność tę sieć zdobywa w procesie uczenia.

  3. Podstawowe zalety sieci neuronowych • Sieci nie trzeba programować – nauczenie wykonywania określonych zadań nie wymaga znania natury fizycznej procesu • Obliczenia w sieciach neuronowych wykonywane mogą być równolegle (dotyczy sprzętowych sieci neuronowych lub komputerów wieloprocesorowych)

  4. Dziedziny zastosowań SSN • Predykcja, czyli przewidywanie sygnałów wyjściowych na podstawie danych wzorcowych • Klasyfikacja i rozpoznawanie. • Kojarzenie danych. • Analiza danych . • Filtracja sygnałów. • Optymalizacja.

  5. Przykładowe zastosowania praktyczne SSN • Systemy rozpoznawania, mowy, obrazu – np. w celu identyfikacji osób • Systemy diagnostyczne – klasyfikacja stanów dynamicznych maszyn • Systemy telekomunikacyjne – optymalizacja połączeń • Systemy informatyczne – kompresja, selekcja danych, dynamiczne programowanie bez użycia standardowych algorytmów sekwencyjnych.

  6. Planowanie – sieci interpretują zjawiska stochastyczne, przewidywanie notowań giełdowych, trendów w gospodarce oraz zjawisk socjologicznych. • Systemy decyzyjne – pomagają podjąć decyzje, jeżeli dysponujemy zbyt małą ilością danych wejściowych • Sterowanie i regulacja – nowoczesne systemy sterowania, z silnie nieliniowymi zależnościami w obiektach regulacji. Planowanie trajektorii manipulatorów i kontrola nad prawidłowością ich odwzorowania. • Analiza stanów naprężeń w konstrukcjach maszyn

  7. Sztuczny neuron • struktura oparta o budowę neuronu mózgu człowieka

  8. w0 w1 w2 w3 wn x1 x2  e x3 y (e) xn Sztuczny neuron • Budowa sztucznego neuronu wg. McCullocha i Pittsa (1943)

  9. Przetwarzanie informacji w neuronie • Neuron otrzymuje wiele sygnałów wejściowych i wysyła jeden sygnał wyjściowy • Z każdym wejściem związana osobna waga • Sygnał po wejściu mnożony jest przez wagę i taki podawany jest do dalszych obliczeń. Waga może wzmocnić, stłumić lub nawet zmienić znak sygnału • Zmodyfikowane sygnały są sumowane dając łączne pobudzenie neuronu(e) • Do takiej sumy dokłada się czasem sygnał dodatkowy (w0), nazywane progiem (bias) • Utworzony wyżej sygnał może być od razu sygnałem wyjściowym (ADALINE – ADAptive LINear Element) lub przetwarzany specjalną funkcją stanowiąca charakterystykę neuronu

  10. neuron neuron neuron neuron neuron neuron neuron neuron neuron Przykładowa struktura SSN Sygnały wejściowe warstwa wejściowa pierwsza warstwa ukryta neuron neuron neuron ..................................................... n-ta warstwa ukryta warstwa wyjściowa Sygnały wyjściowe

  11. Warstwy ukryte SSN • Są narzędziem pomagającym warstwie wyjściowej w znalezieniu poprawnego rozwiązania • Są dodatkową strukturą przetwarzająco dane • Pośredniczą między wejściem a wyjściem sieci • Pozwalają rozwiązywać bardziej skomplikowane problemy, których nie może rozwiązać sieć jednowarstwowa

  12. Klasy struktur SSN • Struktury nie zawierające sprzężeń zwrotnych (feedforward), kierunek przepływy sygnału jest ściśle określony od wejścia do wyjścia • Struktury ze sprzężeniem zwrotnym, tzw. sieci Hopfielda, sygnały z wyjścia są podawane na wejście, tworzą skomplikowane pętle.

  13. Liniowe SSN • Nazywana MADLINE (Many ADALINEs) • Neurony sieci mają charakterystykę liniową, czyli sygnał wyjściowy y neuronu o n wejściach daje się obliczyć wzorem: • Neuron liniowy wyróżnia wektory wejść podobnych do własnego wektora wag • Wartości sygnałów wyjściowych nie są ograniczone

  14. Liniowe SSN • Sieci liniowe nadają się do rozwiązywania zadań polegające na znalezieniu liniowego odwzorowania zbioru wejściowego X na wyjściowy Y • Sieci liniowe wykorzystuje się do: • Identyfikacji w oparciu o zestaw cech • Filtracji sygnałów • Transformacji sygnałów

  15. Nieliniowe SSN • W sieciach nieliniowych pobudzenie (stanowiące wyjście w przypadku neuronu liniowego) jest modyfikowane za pomocą specjalnie dobranych funkcji • Funkcja (e) jest funkcją nieliniową

  16. Nieliniowe SSN • Cechą wspólną większości stosowanych funkcji jest ograniczenie sygnału wyjściowego do zakresu <0, 1> (funkcja unipolarna) lub <-1, 1> (funkcja bipolarna). Często stosowane są następujące funkcje: • Tangens hiperboliczny

  17. Nieliniowe SSN • Funkcja signum: 1 0 e -1

  18. Nieliniowe SSN • Zmodyfikowana funkcja signum: 1 e -1

  19. Nieliniowe SSN • Funkcja skoku jednostkowego: 1 0 e

  20. Nieliniowe SSN • Funkcja perceptronowa: 0 e

  21. Nieliniowe SSN • Funkcja BSB (Brain State in a Box): 1 0 e -1

  22. Etapy pracy SSN • Uczenie sieci – ustalają się wartości wag w poszczególnych neuronach • Egzamin – przy ustalonych wagach sieć generuje odpowiedzi dla zadanych danych wejściowych i porównuje się z pożądanymi odpowiedziami. • Praktyczne wykorzystanie - wykorzystuje się zdolność do uogólniania czyli sieć potrafi znaleźć rozwiązanie także dla danych wejściowych nie prezentowanych w trakcie uczenia

  23. Uczenie sieci • Uczenie z nauczycielem • Samouczenie (samoadaptacja) sieci (uczenie sieci bez nauczyciela)

  24. Uczenie sieci z nauczycielem • Na wejście sieci podaje się dane • Sieć przetwarza je i generuje wynik przy aktualnym zestawie wag • Wynik porównuje się z rozwiązaniem oczekiwanym • W zależności od popełnionego błędu koryguje się poszczególne wagi • Zestawów par: dane wejściowe – oczekiwane wyniki powinno być jak najwięcej.

  25. Uczenie sieci z nauczycielem • Zmiany wag neuronów wyznacza się za pomocą różnych tzw. reguł • Podstawową jest tzw. reguła delta • Wartość wyjściowa z neuronu porównywana jest z pożądaną przez nauczyciela i obliczana jest różnica miedzy nimi  • Sygnał błędu wykorzystywany jest przez neuron do korygowania wag (posiadanej wiedzy) • Wagi zmieniają się tym bardziej im większa jest  • Wagi związane z wejściami o dużych wartościach zmieniają się znacznie • Wpływ  na zmianę wektora wag koryguje współczynnik uczenia h.

  26. Uczenie sieci z nauczycielem Zmiana współczynnika i-tej wagi neuronu w j-tymkroku nauczania: Gdzie: W sieciach liniowych i nieliniowych gdzie funkcja modyfikująca nie ma pochodnej w miejsce d/de wstawia się 1

  27. Uczenie sieci z nauczycielem • Momentum - sposób na zwiększenie szybkości uczenia • Umożliwia uwzględnienie przy zmianie wag wartości błędów popełnianych w krokach wcześniejszych h2 = 0..1, zwykle 0,9

  28. Uczenie sieci z nauczycielem Przebieg zmian współczynników wag w trakcie uczeniabez momentum (niebieski) i z momentum (czerwony)

  29. Uczenie sieci z nauczycielem • Uczenie warstw ukrytych • Nie jest znany rzeczywisty błąd popełniany przez neurony z warstw ukrytych • Błąd szacuje się na zasadzie propagacji wstecznej (backpropagation)błędu popełnianego przez neurony warstwy wyjściowej. Oszacowanie polega na zsumowaniu błędów poszczególnych neuronów pomnożonych przez wagi połączeń miedzy rozpatrywanym neuronem a neuronami warstwy wyjściowej

  30. Uczenie sieci z nauczycielem Warstwa wyjściowa k3 k1 k2 kn wm(kn)(j) Waga neuronu kn na wejściu od neuronu m Warstwa ukryta m Błąd neuronu m w kroku j:

  31. Uczenie sieci z nauczycielem • Zmianę i –tej wagi oblicza się ze wzoru

  32. Uczenie sieci • Uczenie bez nauczyciela (hebbian learning) • Opracowane przez Donalda O. Hebba • Na wejście sieci podaje się dane • Nie podaje się pożądanych wyników • Sieć modyfikuje wagi tak, że uczy się rozpoznawać klasy powtarzających się sygnałów wejściowych, rozpoznaje typowe wzorce sygnałów. • Zbiór danych wejściowych powinny być prezentowany sieci w zmiennej kolejności

  33. Samouczenie się SSN • Na początku procesu wszystkie neurony mają przypadkowe wagi • Pod wpływem pokazywanych ciągów danych wejściowych neurony określają swoje sygnały wyjściowe • Na podstawie sygnałów wejściowych i wyjściowych następuje korekta wag: • Jeżeli sygnał wyjściowy był pozytywny to wagi zmieniają się tak, by zbliżyć się do sygnałów wejściowych • Jeżeli sygnał wyjściowy był negatywny to wagi zmieniają się przeciwnie

  34. Samouczenie się SSN • Dle m-tego neuronu i-ta waga zmienia się następująco • Po wielu prezentacjach i korektach wag neurony specjalizują się w rozpoznawaniu klas występujących w sygnałach wejściowych

  35. Uczenie sieci z konkurencją (WTA) • Dotyczy sieci jednowarstwowych, w których wszystkie neurony otrzymują ten sam sygnał wejściowy • Modyfikacja WTA sposobu uczenia sieci polega na zmianie wartości wag tylko tego neuronu, który najsilniej zareagował na dany sygnał wejściowy • W przypadku sieci samouczących powoduje to wzrost skuteczności i ekonomiczności uczenia • W przypadku sieci liniowych pozwala na uzyskanie od sieci bardziej jednoznacznych odpowiedzi

  36. SSN podsumowanie • SSN dzielimy ze względu • Stopień skomplikowania: • Jednowarstwowe • Wielowarstwowe (z warstwami ukrytymi) • Rodzaj neuronu: • Liniowe • Nieliniowe • Sposób uczenia • Uczone z nauczycielem • Samouczące się • Sposób przetwarzania informacji • Feedforward • Sieci rekurencyjne

More Related