Pobieranie prezentacji. Proszę czekać

Pobieranie prezentacji. Proszę czekać

© Kazimierz Duzinkiewicz, dr hab. inż. Katedra Inżynierii Systemów Sterowania 1 Metody sztucznej inteligencji - Technologie rozmyte i neuronowe 2015/2016.

Podobne prezentacje


Prezentacja na temat: "© Kazimierz Duzinkiewicz, dr hab. inż. Katedra Inżynierii Systemów Sterowania 1 Metody sztucznej inteligencji - Technologie rozmyte i neuronowe 2015/2016."— Zapis prezentacji:

1 © Kazimierz Duzinkiewicz, dr hab. inż. Katedra Inżynierii Systemów Sterowania 1 Metody sztucznej inteligencji - Technologie rozmyte i neuronowe 2015/2016 Sieci neuronowe - podstawy Metody sztucznej inteligencji Automatyka i Robotyka - studia stacjonarne II stopnia Wykład 2 - 2015/2016 Kazimierz Duzinkiewicz, dr hab. Inż. Katedra Inżynierii Systemów Sterowania Sztuczne sieci neuronowe - podstawy

2 © Kazimierz Duzinkiewicz, dr hab. inż. Katedra Inżynierii Systemów Sterowania 2 Metody sztucznej inteligencji - Technologie rozmyte i neuronowe 2015/2016 Sieci neuronowe - podstawy Sztuczne sieci neuronowe Czym są obecnie: Sieci neuronowe są prostymi modelami naśladującymi funkcje biologicznego centralnego systemu nerwowego w zakresie przetwarzania informacji Struktura: neurony, warstwy, powiązania Parametry: wagi powiązań pomiędzy neuronami, progi pobudzeń neuronów W sieci neuronowej sposób przetwarzania informacji jest „zakodowany” strukturą sieci i jej parametrami nazywanymi wagami i progami

3 © Kazimierz Duzinkiewicz, dr hab. inż. Katedra Inżynierii Systemów Sterowania 3 Metody sztucznej inteligencji - Technologie rozmyte i neuronowe 2015/2016 Sieci neuronowe - podstawy Krótki opis neuronu biologicznego Mózg składa się z 10 10 - 10 11 neuronów (komórek nerwowych) wielu różnych typów, bardzo mocno ze sobą powiązanych  Centralnym elementem neuronu jest ciało komórki czyli soma, w którym znajduje się jądro. Z ciałem komórki połączonych jest bardzo dużo włókien  Długie o nieregularnych kształtach włókna – dendryty (wejścia). Z ciałem komórki związanych jest zwykle 10 3 – 10 4 dendrytów W ciele komórki realizowane są prawie wszystkie logiczne funkcje neuronu

4 © Kazimierz Duzinkiewicz, dr hab. inż. Katedra Inżynierii Systemów Sterowania 4 Metody sztucznej inteligencji - Technologie rozmyte i neuronowe 2015/2016 Sieci neuronowe - podstawy Dendryty łączą neuron z innymi neuronami. Dendryty, albo otrzymują sygnały z innych neuronów albo są połączone z wyjściem macierzystego neuronu przez specjalne złącza zwane synapsami  Połączone z ciałem komórki, jedno, długie włókno – akson (wyjście) Akson jest zwykle mocno rozgałęziony na mniejsze włókna tworzące drzewko wyjściowe aksonu.  Początkowa część aksonu wzgórek aksonu, gdzie sygnał wytworzony przez neuron jest zamieniany na ciąg impulsów propagowanych bez osłabiania wzdłuż wszystkich gałęzi drzewka aksonu

5 © Kazimierz Duzinkiewicz, dr hab. inż. Katedra Inżynierii Systemów Sterowania 5 Metody sztucznej inteligencji - Technologie rozmyte i neuronowe 2015/2016 Sieci neuronowe - podstawy  Na końcach rozgałęzień aksonu znajdują się synapsy. Synapsy spełniają rolę interfejsów łączących aksony neuronów z wypustkami wejściowymi dendrytów. Akson typowego neuronu może mieć kilka tysięcy synaps z innymi neuronami. Synapsy są zdolne zmieniać lokalny potencjał dendrytu w kierunku dodatnim lub ujemnym – mieć naturę pobudzającą lub tłumiącą Gromadzenie informacji w neuronie skoncentrowane jest w jego połączeniach synaptycznych – dokładnie w ich układzie i siłach

6 © Kazimierz Duzinkiewicz, dr hab. inż. Katedra Inżynierii Systemów Sterowania 6 Metody sztucznej inteligencji - Technologie rozmyte i neuronowe 2015/2016 Sieci neuronowe - podstawy Więcej o biologicznym neuronie i centralnych systemach nerwowych: Dodatek 1

7 © Kazimierz Duzinkiewicz, dr hab. inż. Katedra Inżynierii Systemów Sterowania 7 Metody sztucznej inteligencji - Technologie rozmyte i neuronowe 2015/2016 Sieci neuronowe - podstawy Cybernetyczny model neuronu Układ MISO

8 © Kazimierz Duzinkiewicz, dr hab. inż. Katedra Inżynierii Systemów Sterowania 8 Metody sztucznej inteligencji - Technologie rozmyte i neuronowe 2015/2016 Sieci neuronowe - podstawy Porównanie komputera klasycznego (von Neumanna) i neuronowego: Dodatek 2

9 © Kazimierz Duzinkiewicz, dr hab. inż. Katedra Inżynierii Systemów Sterowania 9 Metody sztucznej inteligencji - Technologie rozmyte i neuronowe 2015/2016 Sieci neuronowe - podstawy Jak postrzegane są sztuczne sieci neuronowe?  Narzędzie badania pojedynczych komórek nerwowych lub jej fragmentów, zwłaszcza synaps, aksonów i dendrytów.  Narzędzie służące wyjaśnieniu przy ich pomocy zasad funkcjonowania naturalnych fragmentów systemu nerwowego  Nowa technologia obliczeniowa (paradygmat obliczeniowy)  Struktura matematyczna (model), posiadająca zdolność uczenia się i wykorzystywania wyników uczenia

10 © Kazimierz Duzinkiewicz, dr hab. inż. Katedra Inżynierii Systemów Sterowania 10 Metody sztucznej inteligencji - Technologie rozmyte i neuronowe 2015/2016 Sieci neuronowe - podstawy Aspekty na których skupimy nasze zainteresowanie sztucznymi sieciami neuronowymi w tym przedmiocie  Klasyfikacja obiektów (stanów, wzorców, ….) Przetwarzanie danych i ekstrakcja cech Przestrzeń rozważań Wektor cech i wyznaczniki (etykiety) klas Projektowanie klasyfikatora Sieć neuronowa z zadaniu klasyfikacji – faza uczenia Obserwowane cechy Klasyfikator Etykiety klas Sieć neuronowa z zadaniu klasyfikacji – faza uogólniania Dobra sieć: sieć, która dobrze uogólnia tzn. dobrze klasyfikuje wzorce, których nie widziała w procesie uczenia, a nie tylko dobrze klasyfikuje wzorce, które nauczyła się dobrze klasyfikować w procesie uczenia

11 © Kazimierz Duzinkiewicz, dr hab. inż. Katedra Inżynierii Systemów Sterowania 11 Metody sztucznej inteligencji - Technologie rozmyte i neuronowe 2015/2016 Sieci neuronowe - podstawy  Modelowanie obiektów Dobra sieć: sieć, która dobrze uogólnia tzn. daje dobre wartości wyjść dla wartości wejść, na które nie odpowiadała w procesie uczenia, a nie tylko daje dobre wartości wyjść dla wartości wejść na które odpowiadała w procesie uczenia

12 © Kazimierz Duzinkiewicz, dr hab. inż. Katedra Inżynierii Systemów Sterowania 12 Metody sztucznej inteligencji - Technologie rozmyte i neuronowe 2015/2016 Sieci neuronowe - podstawy Definicja sieci neuronowej (szersza wersja w Dodatek 3) Kiedy będziemy mówić o sieciach neuronowych, będziemy rozumieli, że mówimy o sztucznych sieciach neuronowych. Nie ma powszechnie akceptowanej definicji sieci neuronowych. Większość ludzi działających w tej dziedzinie jest w stanie zgodzić się, że: Sieć neuronowa jest siecią wielu prostych procesorów (jednostek, neuronów, …), z których każdy dysponuje lokalną pamięcią o małej pojemności. Procesory są powiązane kanałami komunikacyjnymi (połączeniami, …), które przenoszą dane, zakodowane w jakiś wybrany sposób. Procesor działa w oparciu tylko o swoje lokalne dane i sygnały wejściowe, jakie otrzymuje poprzez połączenia.

13 © Kazimierz Duzinkiewicz, dr hab. inż. Katedra Inżynierii Systemów Sterowania 13 Metody sztucznej inteligencji - Technologie rozmyte i neuronowe 2015/2016 Sieci neuronowe - podstawy Kto rozwijał sztuczne sieci neuronowe -ważniejsze fakty Patrz: Dodatek 4

14 © Kazimierz Duzinkiewicz, dr hab. inż. Katedra Inżynierii Systemów Sterowania 14 Metody sztucznej inteligencji - Technologie rozmyte i neuronowe 2015/2016 Sieci neuronowe - podstawy Obszary zastosowań sieci neuronowych Patrz: Dodatek 5

15 © Kazimierz Duzinkiewicz, dr hab. inż. Katedra Inżynierii Systemów Sterowania 15 Metody sztucznej inteligencji - Technologie rozmyte i neuronowe 2015/2016 Sieci neuronowe - podstawy Cechy charakteryzujące sieć neuronową – przez co definiujemy sieć neuronową Sieć neuronowa jest charakteryzowana przez: 1. funkcje według których neuron reaguje na docierające do niego pobudzenia, nazywane funkcjami pobudzania (propagacji) i funkcjami aktywacji; 2. strukturę połączeń pomiędzy neuronami, nazywaną architekturą sieci; 3. metodę określania wag tych połączeń, nazywaną algorytmem uczenia.

16 © Kazimierz Duzinkiewicz, dr hab. inż. Katedra Inżynierii Systemów Sterowania 16 Metody sztucznej inteligencji - Technologie rozmyte i neuronowe 2015/2016 Sieci neuronowe - podstawy Model pojedynczego neuronu Rozróżnimy dwa rodzaje neuronów:  neurony statyczne,  neurony dynamiczne, Model neuronu statycznego (stosowany w ciągłych i dyskretnych sieciach statycznych oraz w dyskretnych sieciach dynamicznych) Model neuronu statycznego o numerze k

17 © Kazimierz Duzinkiewicz, dr hab. inż. Katedra Inżynierii Systemów Sterowania 17 Metody sztucznej inteligencji - Technologie rozmyte i neuronowe 2015/2016 Sieci neuronowe - podstawy Opis matematyczny neuronu o numerze k: Pobudzenie neuronu o numerze k: Odpowiedź neuronu o numerze k: Na przykład:

18 © Kazimierz Duzinkiewicz, dr hab. inż. Katedra Inżynierii Systemów Sterowania 18 Metody sztucznej inteligencji - Technologie rozmyte i neuronowe 2015/2016 Sieci neuronowe - podstawy Inny model neuronu statycznego o numerze k (rozszerzona przestrzeń wejść i progów)

19 © Kazimierz Duzinkiewicz, dr hab. inż. Katedra Inżynierii Systemów Sterowania 19 Metody sztucznej inteligencji - Technologie rozmyte i neuronowe 2015/2016 Sieci neuronowe - podstawy Opis matematyczny neuronu o numerze k: Pobudzenie neuronu o numerze k: Odpowiedź neuronu o numerze k: Na przykład:

20 © Kazimierz Duzinkiewicz, dr hab. inż. Katedra Inżynierii Systemów Sterowania 20 Metody sztucznej inteligencji - Technologie rozmyte i neuronowe 2015/2016 Sieci neuronowe - podstawy Uproszczone przedstawienie modelu neuronu statycznego o numerze k lub

21 © Kazimierz Duzinkiewicz, dr hab. inż. Katedra Inżynierii Systemów Sterowania 21 Metody sztucznej inteligencji - Technologie rozmyte i neuronowe 2015/2016 Sieci neuronowe - podstawy Używane są również inne symboliczne przedstawienia neuronu w postaci: Zwykła przestrzeń wejść i progów Rozszerzona przestrzeń wejść i progów

22 © Kazimierz Duzinkiewicz, dr hab. inż. Katedra Inżynierii Systemów Sterowania 22 Metody sztucznej inteligencji - Technologie rozmyte i neuronowe 2015/2016 Sieci neuronowe - podstawy Model neuronu dynamicznego (stosowany w ciągłych sieciach dynamicznych) Rekurencja zewnętrzna Rekurencja wewnętrzna (własna) Sprzężenie zwrotne wewnętrzne (własne) Przedstawienie schematyczne Rekurencja wewnętrzna (własna) Rekurencja zewnętrzna Przedstawienie symboliczne

23 © Kazimierz Duzinkiewicz, dr hab. inż. Katedra Inżynierii Systemów Sterowania 23 Metody sztucznej inteligencji - Technologie rozmyte i neuronowe 2015/2016 Sieci neuronowe - podstawy Funkcje pobudzania g(.) (k - numer neuronu, j - numer wejścia neuronu) 1. Funkcja sumy Więcej funkcji pobudzania – patrz: Dodatek 6

24 © Kazimierz Duzinkiewicz, dr hab. inż. Katedra Inżynierii Systemów Sterowania 24 Metody sztucznej inteligencji - Technologie rozmyte i neuronowe 2015/2016 Sieci neuronowe - podstawy Funkcje aktywacji f(.) – pojedynczych neuronów 1. Funkcja przekaźnikowa unipolarna (niesymetryczna) 2. Funkcja przekaźnikowa bipolarna (symetryczna)

25 © Kazimierz Duzinkiewicz, dr hab. inż. Katedra Inżynierii Systemów Sterowania 25 Metody sztucznej inteligencji - Technologie rozmyte i neuronowe 2015/2016 Sieci neuronowe - podstawy 3. Funkcja liniowa 4. Funkcja sigmoidalna logarytmiczna unipolarna (niesymetryczna)

26 © Kazimierz Duzinkiewicz, dr hab. inż. Katedra Inżynierii Systemów Sterowania 26 Metody sztucznej inteligencji - Technologie rozmyte i neuronowe 2015/2016 Sieci neuronowe - podstawy 5. Funkcja sigmoidalna tangensa hiperbolicznego bipolarna (symetryczna) 6. Funkcja Gaussa (Radial Basis)

27 © Kazimierz Duzinkiewicz, dr hab. inż. Katedra Inżynierii Systemów Sterowania 27 Metody sztucznej inteligencji - Technologie rozmyte i neuronowe 2015/2016 Sieci neuronowe - podstawy Więcej funkcji aktywacji patrz: Dodatek 7

28 © Kazimierz Duzinkiewicz, dr hab. inż. Katedra Inżynierii Systemów Sterowania 28 Metody sztucznej inteligencji - Technologie rozmyte i neuronowe 2015/2016 Sieci neuronowe - podstawy Przybornik Neural Network w środowisku MATLAB/Simulink Neuron z pojedynczym wejściem bez progu Neuron z pojedynczym wejściem z progiem Funkcja pobudzania: zawsze funkcja sumy Funkcja aktywacji: mogą być różne

29 © Kazimierz Duzinkiewicz, dr hab. inż. Katedra Inżynierii Systemów Sterowania 29 Metody sztucznej inteligencji - Technologie rozmyte i neuronowe 2015/2016 Sieci neuronowe - podstawy Neuron z wieloma wejściami Uproszczone przedstawienie neuronu z wieloma wejściami

30 © Kazimierz Duzinkiewicz, dr hab. inż. Katedra Inżynierii Systemów Sterowania 30 Metody sztucznej inteligencji - Technologie rozmyte i neuronowe 2015/2016 Sieci neuronowe - podstawy Funkcje aktywacji dla pojedynczych neuronów Algorytm: >> n=1 n = 1 >> a = hardlim(n) a = 1 >> Przykłady: >> n= -1 n = >> a=hardlim(n) a = 0 >> a) b)

31 © Kazimierz Duzinkiewicz, dr hab. inż. Katedra Inżynierii Systemów Sterowania 31 Metody sztucznej inteligencji - Technologie rozmyte i neuronowe 2015/2016 Sieci neuronowe - podstawy Więcej funkcji aktywacji przybornika Neural Network – Dodatek 8

32 © Kazimierz Duzinkiewicz, dr hab. inż. Katedra Inżynierii Systemów Sterowania 32 Metody sztucznej inteligencji - Technologie rozmyte i neuronowe 2015/2016 Sieci neuronowe - podstawy Warstwa neuronów Układ neuronów nie powiązanych ze sobą (wyjścia neuronów nie są połączone z wejściami innych neuronów warstwy) do których docierają sygnały z tych samych źródeł (neurony pracują równolegle) Przedstawienie I b (l) k g j w k1 w (l) k2 w (l) kj w (l) km 1 g j g j y (l-1) m k- ty neuron sieci y (l -1) 1 y (l -1) 2 y (l -1) j y (l) k

33 © Kazimierz Duzinkiewicz, dr hab. inż. Katedra Inżynierii Systemów Sterowania 33 Metody sztucznej inteligencji - Technologie rozmyte i neuronowe 2015/2016 Sieci neuronowe - podstawy najczęściej Warstwa neuronów – c.d.

34 © Kazimierz Duzinkiewicz, dr hab. inż. Katedra Inżynierii Systemów Sterowania 34 Metody sztucznej inteligencji - Technologie rozmyte i neuronowe 2015/2016 Sieci neuronowe - podstawy Inne przedstawienie (II) Warstwa neuronów – c.d. (rozszerzona przestrzeń wejść i wag)

35 © Kazimierz Duzinkiewicz, dr hab. inż. Katedra Inżynierii Systemów Sterowania 35 Metody sztucznej inteligencji - Technologie rozmyte i neuronowe 2015/2016 Sieci neuronowe - podstawy Warstwa neuronów – c.d. najczęściej

36 © Kazimierz Duzinkiewicz, dr hab. inż. Katedra Inżynierii Systemów Sterowania 36 Metody sztucznej inteligencji - Technologie rozmyte i neuronowe 2015/2016 Sieci neuronowe - podstawy Przedstawienie I Opis matematyczny neuronu o numerze k w warstwie l: Pobudzenie neuronu o numerze k: Odpowiedź neuronu o numerze k: Najczęściej: Struktura opisu nie zmieniła się w stosunku do opisu pojedynczego neuronu

37 © Kazimierz Duzinkiewicz, dr hab. inż. Katedra Inżynierii Systemów Sterowania 37 Metody sztucznej inteligencji - Technologie rozmyte i neuronowe 2015/2016 Sieci neuronowe - podstawy Opis matematyczny neuronu o numerze k w warstwie l: Pobudzenie neuronu o numerze k: Odpowiedź neuronu o numerze k: Najczęściej: Struktura opisu nie zmieniła się w stosunku do opisu pojedynczego neuronu Przedstawienie II

38 © Kazimierz Duzinkiewicz, dr hab. inż. Katedra Inżynierii Systemów Sterowania 38 Metody sztucznej inteligencji - Technologie rozmyte i neuronowe 2015/2016 Sieci neuronowe - podstawy Jednowarstwowa sieć neuronowa z R sygnałami wejściowymi i S neuronami w warstwie Macierz wag: Wektor progów: Przybornik Neural Network w środowisku MATLAB/Simulink

39 © Kazimierz Duzinkiewicz, dr hab. inż. Katedra Inżynierii Systemów Sterowania 39 Metody sztucznej inteligencji - Technologie rozmyte i neuronowe 2015/2016 Sieci neuronowe - podstawy Jednowarstwowa sieć neuronowa z R sygnałami wejściowymi i S neuronami w warstwie Wektor wejść: Wektor wyjść:

40 © Kazimierz Duzinkiewicz, dr hab. inż. Katedra Inżynierii Systemów Sterowania 40 Metody sztucznej inteligencji - Technologie rozmyte i neuronowe 2015/2016 Sieci neuronowe - podstawy Jednowarstwowa sieć neuronowa z R sygnałami wejściowymi i S neuronami w warstwie – uproszczone przedstawienie

41 © Kazimierz Duzinkiewicz, dr hab. inż. Katedra Inżynierii Systemów Sterowania 41 Metody sztucznej inteligencji - Technologie rozmyte i neuronowe 2015/2016 Sieci neuronowe - podstawy Funkcje aktywacji f(.) – warstwy neuronów 1. Funkcja współzawodnictwa

42 © Kazimierz Duzinkiewicz, dr hab. inż. Katedra Inżynierii Systemów Sterowania 42 Metody sztucznej inteligencji - Technologie rozmyte i neuronowe 2015/2016 Sieci neuronowe - podstawy a = compet(n) Przykłady: a) b) >> n=[0; 1; -0.5; 0.5] n = 0 1.0000 -0.5000 0.5000 >> a=compet(n) a = (2,1) 1 >> >> n=[1; 1; 1; 1;] n = 1 >> a=compet(n) a = (1,1) 1 >> Przybornik Neural Network w środowisku MATLAB/Simulink Algorytm:

43 © Kazimierz Duzinkiewicz, dr hab. inż. Katedra Inżynierii Systemów Sterowania 43 Metody sztucznej inteligencji - Technologie rozmyte i neuronowe 2015/2016 Sieci neuronowe - podstawy Więcej warstwowych funkcji aktywacji przybornika Neural Network – Dodatek 9

44 © Kazimierz Duzinkiewicz, dr hab. inż. Katedra Inżynierii Systemów Sterowania 44 Metody sztucznej inteligencji - Technologie rozmyte i neuronowe 2015/2016 Sieci neuronowe - podstawy Struktury sieci neuronowych Architektury sztucznych sieci neuronowych mogą być ogólnie podzielone na trzy duże kategorie: (i) sieci jednokierunkowe (jedno lub wielowarstwowe) (ii) sieci ze sprzężeniem zwrotnym (rekurencyjne) (iii) sieci komórkowe

45 © Kazimierz Duzinkiewicz, dr hab. inż. Katedra Inżynierii Systemów Sterowania 45 Metody sztucznej inteligencji - Technologie rozmyte i neuronowe 2015/2016 Sieci neuronowe - podstawy Struktury sieci neuronowych – c.d. (i) sieci jednokierunkowe (jedno lub wielowarstwowe) (a) jednowarstwowe (b) wielowarstwowe x y L x y L1L2 L3  przepływ sygnałów od źródeł do warstwy neuronów wyjściowych

46 © Kazimierz Duzinkiewicz, dr hab. inż. Katedra Inżynierii Systemów Sterowania 46 Metody sztucznej inteligencji - Technologie rozmyte i neuronowe 2015/2016 Sieci neuronowe - podstawy Przykłady i terminologia: (a) sieć jednowarstwowa (b) sieć wielowarstwowa we1 we2 we3 we4 n1 n2 n3 n4 wy1 wy2 wy3 wy4 Warstwa wejściowa węzłów źródłowych Warstwa neuronów wyjściowych we1 we2 we3 we4 we5 we6 we7 we8 we9 we10 n1 n2 n3 n4 n5 n6 wy1 wy2 Warstwa neuronów ukrytych Warstwa neuronów wyjściowych Warstwa wejściowa węzłów źródłowych Struktury sieci neuronowych – c.d.

47 © Kazimierz Duzinkiewicz, dr hab. inż. Katedra Inżynierii Systemów Sterowania 47 Metody sztucznej inteligencji - Technologie rozmyte i neuronowe 2015/2016 Sieci neuronowe - podstawy (ii) sieci ze sprzężeniem zwrotnym (rekurencyjne) x L1 y L2 L3 + -   w sieci występuje co najmniej jedna pętla sprzężenia zwrotnego – sygnał wyjściowy z warstwy dalszej jest kierowany do wejść tej samej lub wcześniejszych warstw Struktury sieci neuronowych – c.d.

48 © Kazimierz Duzinkiewicz, dr hab. inż. Katedra Inżynierii Systemów Sterowania 48 Metody sztucznej inteligencji - Technologie rozmyte i neuronowe 2015/2016 Sieci neuronowe - podstawy Wyjścia Wejścia Operator opóźnienia jednostkowego Przykłady i terminologia:  w sieci mogą występować pętle samo – sprzężenia zwrotnego Operator opóźnienia jednostkowego Wyjścia Struktury sieci neuronowych – c.d.

49 © Kazimierz Duzinkiewicz, dr hab. inż. Katedra Inżynierii Systemów Sterowania 49 Metody sztucznej inteligencji - Technologie rozmyte i neuronowe 2015/2016 Sieci neuronowe - podstawy (iii) sieci komórkowe  regularnie rozmieszczone przestrzennie neurony zwane komórkami  każda komórka powiązana bezpośrednio z wszystkimi komórkami swego najbliższego sąsiedztwa (przyległymi)  powiązania pomiędzy komórkami są dwukierunkowe Struktury sieci neuronowych – c.d.

50 © Kazimierz Duzinkiewicz, dr hab. inż. Katedra Inżynierii Systemów Sterowania 50 Metody sztucznej inteligencji - Technologie rozmyte i neuronowe 2015/2016 Sieci neuronowe - podstawy Przybornik Neural Network w środowisku MATLAB/Simulink Wejścia i warstwy  Rozróżnia się macierze wag dla: połączeń wejścia i pierwszej warstwy neuronów – wagi wejść (IW), oraz połączeń miedzy warstwami neuronów – wagi warstw (LW)  W oznaczeniach macierzy wag używa się indeksów dla wskazania źródła – drugi indeks i celu – pierwszy indeks połączeń z którymi macierz jest związana  Warstwa węzłów źródłowych nazywa się wejściem sieci

51 © Kazimierz Duzinkiewicz, dr hab. inż. Katedra Inżynierii Systemów Sterowania 51 Metody sztucznej inteligencji - Technologie rozmyte i neuronowe 2015/2016 Sieci neuronowe - podstawy Sieci wielowarstwowe  Sieć może mieć kilka warstw  Z każą warstwą związane są: macierz wag W, wektor progów b, oraz wektor wyjść a  Przyporządkowanie tych obiektów warstwom określone jest górnymi indeksami Przybornik Neural Network w środowisku MATLAB/Simulink

52 © Kazimierz Duzinkiewicz, dr hab. inż. Katedra Inżynierii Systemów Sterowania 52 Metody sztucznej inteligencji - Technologie rozmyte i neuronowe 2015/2016 Sieci neuronowe - podstawy Sieci wielowarstwowe Pokazana sieć ma: R 1 wejść, S 1 neuronów w pierwszej warstwie, S 2 neuronów w drugiej warstwie, S 3 neuronów w trzeciej warstwie, Stałe wejście równe 1 jest przypisane progom dla każdego neuronu Przybornik Neural Network w środowisku MATLAB/Simulink

53 © Kazimierz Duzinkiewicz, dr hab. inż. Katedra Inżynierii Systemów Sterowania 53 Metody sztucznej inteligencji - Technologie rozmyte i neuronowe 2015/2016 Sieci neuronowe - podstawy Przybornik Neural Network w środowisku MATLAB/Simulink Sieci wielowarstwowe – c.d.  Wyjście każdej warstwy jest wejściem warstwy następnej Warstwa ukryta 1 Warstwa ukryta 2 Warstwa wyjściowa Warstwa wejściowa

54 © Kazimierz Duzinkiewicz, dr hab. inż. Katedra Inżynierii Systemów Sterowania 54 Metody sztucznej inteligencji - Technologie rozmyte i neuronowe 2015/2016 Sieci neuronowe - podstawy Przybornik Neural Network w środowisku MATLAB/Simulink Sieci wielowarstwowe – c.d. Na przykład: warstwa 2 może być analizowana jako sieć jednowarstwowa z S 1 wejściami, S 2 neuronami (wyjściami) oraz macierzą wag W 2 o wymiarach S 2 x S 1 i wektorem progów b 2 o wymiarach S 2 x 1, wejście do tej sieci określone jest wektorem a 1, a jej wyjście stanowi wektor a 2 Wyjście warstwy 3 – wyjście sieci: a 3 = y

55 © Kazimierz Duzinkiewicz, dr hab. inż. Katedra Inżynierii Systemów Sterowania 55 Metody sztucznej inteligencji - Technologie rozmyte i neuronowe 2015/2016 Sieci neuronowe - podstawy Sieci wielowarstwowe – bardziej złożone struktury  Identyfikacja warstwy przez: wspólny wektor sygnałów wejściowych neuronów, wspólną funkcję aktywacji

56 © Kazimierz Duzinkiewicz, dr hab. inż. Katedra Inżynierii Systemów Sterowania 56 Metody sztucznej inteligencji - Technologie rozmyte i neuronowe 2015/2016 Sieci neuronowe - podstawy Metody uczenia sieci neuronowych W korzystaniu z sieci neuronowej można wyróżnić dwa etapy:  etap uczenia – w oparciu o przedstawiane sieci dane, sieć uczy się realizować zadanie dla którego została zbudowana  etap uogólniania – sieć realizuje zadanie dla którego została zbudowana dla danych które są jej przedstawiane Powinniśmy mieć miary oceny jakości każdego z tych etapów

57 © Kazimierz Duzinkiewicz, dr hab. inż. Katedra Inżynierii Systemów Sterowania 57 Metody sztucznej inteligencji - Technologie rozmyte i neuronowe 2015/2016 Sieci neuronowe - podstawy Metody uczenia sieci neuronowych Ile istnieje metod uczenia dla sieci neuronowych? Jakie? Istnieje obecnie bardzo wiele metod uczenia sieci neuronowych. Nikt dokładnie nie wie ile. Można powiedzieć, że każdego tygodnia proponowane są nowe (lub co najmniej odmiany istniejących metod) Podstawowy podział metod uczenia to rozróżnienie pomiędzy uczeniem z nadzorem (supervised learning) i bez nadzoru (unsupervised learning) Wiele ze znanych metod jest związanych z określonymi topologiami (klasami) sieci

58 © Kazimierz Duzinkiewicz, dr hab. inż. Katedra Inżynierii Systemów Sterowania 58 Metody sztucznej inteligencji - Technologie rozmyte i neuronowe 2015/2016 Sieci neuronowe - podstawy Metody uczenia sieci neuronowych – c.d.  W uczeniu z nadzorem występuje “nauczyciel”, który w fazie uczenia sieci, “mówi” sieci jak dobrze ona działa (uczenie z ukierunkowywaniem - reinforcement learning) lub jakie powinno być prawidłowe zachowanie sieci (uczenie z całkowitym nadzorem - fully supervised learning)   W uczeniu bez nadzoru sieć jest samodzielna (autonomiczna): Patrzy na dane, które są jej prezentowane, znajduje pewne cechy zbioru danych i uczy się odzwierciedlać te cechy na swoim wyjściu. Czym są dokładnie te cechy, które sieć może nauczyć się rozpoznawać zależy od konkretnego modelu sieci i metody uczenia. Zwykle, sieć uczy się pewnych zwięzłych reprezentacji danych.

59 © Kazimierz Duzinkiewicz, dr hab. inż. Katedra Inżynierii Systemów Sterowania 59 Metody sztucznej inteligencji - Technologie rozmyte i neuronowe 2015/2016 Sieci neuronowe - podstawy  Posiadany pewien zbiór wektorów (wzorców) wejściowych sieci o liczebności Q, które zamierzamy wykorzystać w procesie uczenia sieci realizacji zadania – wektory te będziemy nazywać uczącymi wzorcami wejściowymi. Możemy z posiadanych wektorów utworzyć macierz wzorców wejściowych uczących P(atterns) Proces uczenia z pełnym nadzorem

60 © Kazimierz Duzinkiewicz, dr hab. inż. Katedra Inżynierii Systemów Sterowania 60 Metody sztucznej inteligencji - Technologie rozmyte i neuronowe 2015/2016 Sieci neuronowe - podstawy Proces uczenia z pełnym nadzorem – c.d.  Dla każdego wzorca wejściowego uczącego posiadamy wektor wyjściowy sieci jakim powinna ona odpowiedzieć na dany wzorzec wejściowy - wektor ten nazywamy wzorcem wyjściowym docelowym. Z wektorów tych możemy utworzyć macierz wzorców wyjściowych docelowych T(argets) Macierze P oraz T nazywamy zbiorami uczącymi - ich elementami są kolumny wzorców wejściowych oraz wzorców wyjściowych docelowych.

61 © Kazimierz Duzinkiewicz, dr hab. inż. Katedra Inżynierii Systemów Sterowania 61 Metody sztucznej inteligencji - Technologie rozmyte i neuronowe 2015/2016 Sieci neuronowe - podstawy Proces uczenia z pełnym nadzorem – c.d.  Faktycznie sieć na każdy z wzorców wejściowych odpowiada wektorem wyjściowym, który będziemy nazywać wzorcem wyjściowym rzeczywistym – z wektorów tych możemy utworzyć macierz wzorców rzeczywistych A(nswers)

62 © Kazimierz Duzinkiewicz, dr hab. inż. Katedra Inżynierii Systemów Sterowania 62 Metody sztucznej inteligencji - Technologie rozmyte i neuronowe 2015/2016 Sieci neuronowe - podstawy Proces uczenia z pełnym nadzorem – c.d.  Wektory z wejściowego zbioru uczącego są przedstawiane sieci w pewnej kolejności  Jeżeli wyjście sieci jest poprawne, to znaczy wzorzec rzeczywisty jest równy wzorcowi docelowemu, nie dokonywane są żadne zmiany wartości wag i progów  Jeżeli wyjście sieci nie jest poprawne, to znaczy wzorzec rzeczywisty nie jest równy wzorcowi docelowemu, wagi i progi są modyfikowane przy użyciu odpowiedniej reguły uczenia w taki sposób, aby minimalizować występujące różnice Zmiany wag i progów dokonuje się na ogół przyrostowo, wprowadzając małe poprawki dla każdej pary uczącej z którą związana jest błędna odpowiedź Można zmiany wag i progów wykonywać grupowo, wprowadzając poprawki po pokazaniu sieci całego zestawu uczącego

63 © Kazimierz Duzinkiewicz, dr hab. inż. Katedra Inżynierii Systemów Sterowania 63 Metody sztucznej inteligencji - Technologie rozmyte i neuronowe 2015/2016 Sieci neuronowe - podstawy Proces uczenia z pełnym nadzorem – c.d.  Pełne przejście przez wszystkie wzorce uczące nazywane jest epoką uczenia  Jeżeli takie pełne przejście zbioru uczącego zajdzie bez pojawienia się błędu lub pewna miara wszystkich pojawiających się błędów jest wystarczająco mała, uczenie uznaje się za zakończone - możemy wówczas powiedzieć, że zbiór uczący jest,,znany" sieci lub "znany" z zadowalającą dokładnością  Jeżeli takie pełne przejście zbioru uczącego zajdzie z pojawieniem się błędu lub pewna miara wszystkich pojawiających się błędów nie jest wystarczająco mała, uczenie jest kontynuowane – rozpoczynamy kolejną epokę uczenia

64 © Kazimierz Duzinkiewicz, dr hab. inż. Katedra Inżynierii Systemów Sterowania 64 Metody sztucznej inteligencji - Technologie rozmyte i neuronowe 2015/2016 Sieci neuronowe - podstawy Proces uczenia z pełnym nadzorem – c.d. Proces uczenia pod nadzorem można zawrzeć w następujących trzech fazach:  FAZA 1 PREZENTACJI: Przedstawianie sieci kolejnych wzorców wejściowych uczących i obliczanie rzeczywistych wzorców wyjściowych sieci  FAZA 2 SPRAWDZENIA: Stwierdzenie, czy wszystkie rzeczywiste wzorce wyjściowe są równe odpowiednim wzorcom wyjściowym docelowym lub o ile, według pewnej miary, różnią się od nich - zakończenie procesu uczenia, jeżeli miara błędów odpowiedzi jest zadowalająco mała lub po przekroczeniu pewnej maksymalnej liczby epok  FAZA 3 UCZENIA: Modyfikacja wag i stałych progowych za pomocą odpowiedniej reguły uczenia perceptronu i powrót do fazy 1

65 © Kazimierz Duzinkiewicz, dr hab. inż. Katedra Inżynierii Systemów Sterowania 65 Metody sztucznej inteligencji - Technologie rozmyte i neuronowe 2015/2016 Sieci neuronowe - podstawy Dwie podstawowe strategie uczenia 1. Podejście partiowe (wsadowe) (batch approach): Wagi i progi są modyfikowane po pokazaniu sieci całego zbioru uczącego (po kolejnych epokach) 2. Podejście przyrostowe) (incremental approach): Wagi i progi są modyfikowane po pokazaniu sieci każdego kolejnego wzorca uczącego

66 © Kazimierz Duzinkiewicz, dr hab. inż. Katedra Inżynierii Systemów Sterowania 66 Metody sztucznej inteligencji - Technologie rozmyte i neuronowe 2015/2016 Sieci neuronowe - podstawy Sprawdzenie zdolności uogólniania sieci  Po zakończeniu procesu uczenia możemy podawać na wejście sieci wzorce nie pochodzące z uczącego zbioru wejściowego, to znaczy nie będące uczącym wzorcem wejściowym – w ten sposób możemy badać, czy sieć efektywnie uogólnia rozwiązywanie zadania, którego się uczyła na przykładach  Jeżeli tak, to na podany na wejście wzorzec powinna ona odpowiedzieć wzorcem wyjściowym równym lub bliskim wzorcowi docelowemu, który odpowiada wzorcowi wejściowemu bliskiemu podanemu  Jeżeli nie, to na podany na wejście wzorzec sieć odpowie wzorcem wyjściowym odległym od wzorca docelowego, który odpowiada wzorcowi wejściowemu bliskiemu podanemu

67 © Kazimierz Duzinkiewicz, dr hab. inż. Katedra Inżynierii Systemów Sterowania 67 Metody sztucznej inteligencji - Technologie rozmyte i neuronowe 2015/2016 Sieci neuronowe - podstawy Koniec materiału prezentowanego podczas wykładu Dziękuję za uczestnictwo w wykładzie i uwagę

68 © Kazimierz Duzinkiewicz, dr hab. inż. Katedra Inżynierii Systemów Sterowania 68 Metody sztucznej inteligencji - Technologie rozmyte i neuronowe 2015/2016 Sieci neuronowe - podstawy Dodatek 1 Centralny system nerwowy organizmów żywych i neuron biologiczny

69 © Kazimierz Duzinkiewicz, dr hab. inż. Katedra Inżynierii Systemów Sterowania 69 Metody sztucznej inteligencji - Technologie rozmyte i neuronowe 2015/2016 Sieci neuronowe - podstawy Dodatek 1:Centralny system nerwowy i neuron biologiczny Centralny system nerwowy (neurony) Narządy sensoryczne Narządy motoryczne

70 © Kazimierz Duzinkiewicz, dr hab. inż. Katedra Inżynierii Systemów Sterowania 70 Metody sztucznej inteligencji - Technologie rozmyte i neuronowe 2015/2016 Sieci neuronowe - podstawy Zalety biologicznych systemów nerwowych:   Odporność na uszkodzenia  Elastyczność – zdolność poprawiania jakości rozwiązywania zadań przez proces uczenia  Zdolność przetwarzania informacji rozmytej, zaszumionej, niespójnej, losowej  Równoległość przetwarzania  Nieduże wymiary, zwartość, małe zużycie energii Paradygmat przetwarzania neuronowego pozostaje w opozycji do znanego paradygmatu przetwarzania klasycznych komputerów, wprowadzonego przez von Neumanna, opartego na sekwencyjnym wykonywaniu zaprogramowanych instrukcji, który jest do dzisiaj podstawą działania prawie wszystkich systemów komputerowych (liczących) Paradygmat przetwarzania neuronowego Dodatek 1:Centralny system nerwowy i neuron biologiczny

71 © Kazimierz Duzinkiewicz, dr hab. inż. Katedra Inżynierii Systemów Sterowania 71 Metody sztucznej inteligencji - Technologie rozmyte i neuronowe 2015/2016 Sieci neuronowe - podstawy Krótki opis neuronu biologicznego Mózg składa się z 10 10 - 10 11 neuronów (komórek nerwowych) wielu różnych typów, bardzo mocno ze sobą powiązanych  Centralnym elementem neuronu jest ciało komórki czyli soma, w którym znajduje się jądro. Z ciałem komórki połączonych jest bardzo dużo włókien  Długie o nieregularnych kształtach włókna – dendryty (wejścia). Z ciałem komórki związanych jest zwykle 10 3 – 10 4 dendrytów W ciele komórki realizowane są prawie wszystkie logiczne funkcje neuronu Dodatek 1:Centralny system nerwowy i neuron biologiczny

72 © Kazimierz Duzinkiewicz, dr hab. inż. Katedra Inżynierii Systemów Sterowania 72 Metody sztucznej inteligencji - Technologie rozmyte i neuronowe 2015/2016 Sieci neuronowe - podstawy Dendryty łączą neuron z innymi neuronami. Dendryty, albo otrzymują sygnały z innych neuronów albo są połączone z wyjściem macierzystego neuronu przez specjalne złącza zwane synapsami  Połączone z ciałem komórki, jedno, długie włókno – akson (wyjście) Akson jest zwykle mocno rozgałęziony na mniejsze włókna tworzące drzewko wyjściowe aksonu.  Początkowa część aksonu wzgórek aksonu, gdzie sygnał wytworzony przez neuron jest zamieniany na ciąg impulsów propagowanych bez osłabiania wzdłuż wszystkich gałęzi drzewka aksonu Dodatek 1:Centralny system nerwowy i neuron biologiczny

73 © Kazimierz Duzinkiewicz, dr hab. inż. Katedra Inżynierii Systemów Sterowania 73 Metody sztucznej inteligencji - Technologie rozmyte i neuronowe 2015/2016 Sieci neuronowe - podstawy  Na końcach rozgałęzień aksonu znajdują się synapsy. Synapsy spełniają rolę interfejsów łączących aksony neuronów z wypustkami wejściowymi dendrytów. Akson typowego neuronu może mieć kilka tysięcy synaps z innymi neuronami. Synapsy są zdolne zmieniać lokalny potencjał dendrytu w kierunku dodatnim lub ujemnym – mieć naturę pobudzającą lub tłumiącą Gromadzenie informacji w neuronie skoncentrowane jest w jego połączeniach synaptycznych – dokładnie w ich układzie i siłach Dodatek 1:Centralny system nerwowy i neuron biologiczny

74 © Kazimierz Duzinkiewicz, dr hab. inż. Katedra Inżynierii Systemów Sterowania 74 Metody sztucznej inteligencji - Technologie rozmyte i neuronowe 2015/2016 Sieci neuronowe - podstawy Dodatek 2 Porównanie komputera klasycznego (von Neumann) i neuronowego

75 © Kazimierz Duzinkiewicz, dr hab. inż. Katedra Inżynierii Systemów Sterowania 75 Metody sztucznej inteligencji - Technologie rozmyte i neuronowe 2015/2016 Sieci neuronowe - podstawy Porównanie przetwarzania klasycznego komputera i komputera neuronowego (neurokomputera) Cecha neuronowe Przetwarzanie klasyczne Przygotowanie przetwarzania Postać danych wejściowych Sposób wprowadzania wiedzy Wybór architektury sieci i reprezentatywnych wzorców Opracowanie algorytmu Przez naukę Cyfrowa Cyfrowa lub analogowa Przez programowanie Struktura przetwarzania Przetwarzanie sekwencyjne (szeregowe) Przetwarzanie równoległe Cechy obliczeń Arytmetyka wysokiej dokładności Proste przekształcenia nieliniowe o niewielkiej dokładności Przechowywanie algorytmu przetwarzania Zblokowane pamięci ROM i RAM Architektura sieci i rozproszone wartości wag i progów Przechowywanie danych Zblokowane pamięci RAM Sygnały w sieci

76 © Kazimierz Duzinkiewicz, dr hab. inż. Katedra Inżynierii Systemów Sterowania 76 Metody sztucznej inteligencji - Technologie rozmyte i neuronowe 2015/2016 Sieci neuronowe - podstawy Element przetwarzaj- ący Rozmiar elementu Pobór mocyPrędkość przetwarza- nia Sposób przetwarza- nia Tolerancja uszkodzeń UczenieInteligencja 10 14 synaps 10 -6 m30W100Hzrównoległytak zwykle 10 8 tranzystor- ów 10 -6 m30W10 9 Hzszeregowyniew małym stopniu (jeszcze) nie Porównanie przetwarzania komputerowego i neuronowego

77 © Kazimierz Duzinkiewicz, dr hab. inż. Katedra Inżynierii Systemów Sterowania 77 Metody sztucznej inteligencji - Technologie rozmyte i neuronowe 2015/2016 Sieci neuronowe - podstawy Dodatek 3: Definicje sztucznych sieci neuronowych

78 © Kazimierz Duzinkiewicz, dr hab. inż. Katedra Inżynierii Systemów Sterowania 78 Metody sztucznej inteligencji - Technologie rozmyte i neuronowe 2015/2016 Sieci neuronowe - podstawy [Tadeusiewicz R. Sieci neuronowe, 1993] Sieć neuronowa jest bardzo uproszczonym modelem mózgu. Składa się ona z dużej liczby (od kilkuset do kilkudziesięciu tysięcy) elementów przetwarzających informację. Elementy te nazywane są neuronami, chociaż w stosunku do rzeczywistych komórek nerwowych ich funkcje są bardzo uproszczone, by nie powiedzieć - sprymityzowane. Neurony są powiązane w sieć za pomocą połączeń o parametrach (tak zwanych wagach) modyfikowanych w trakcie tak zwanego procesu uczenia. Topologia połączeń oraz ich parametry stanowią program działania sieci, zaś sygnały pojawiające się na jej wyjściach, w odpowiedzi na określone sygnały wejściowe, są rozwiązaniami stawianych jej zadań Dodatek 2: Definicje sieci neuronowych

79 © Kazimierz Duzinkiewicz, dr hab. inż. Katedra Inżynierii Systemów Sterowania 79 Metody sztucznej inteligencji - Technologie rozmyte i neuronowe 2015/2016 Sieci neuronowe - podstawy [Hecht-Nielsen R. Neurocomputing, 1989] Sieć neuronowa jest równoległą, rozproszoną strukturą przetwarzania informacji składającą się z elementów przetwarzających (które mogą posiadać lokalną pamięć i mogą wykonywać lokalne operacje przetwarzania informacji) wzajemnie powiązanych poprzez jednokierunkowe kanały sygnałowe zwane połączeniami. Każdy element przetwarzający posiada pojedyncze wyjście sygnałowe, które rozgałęzia się (“rozkłada się wachlarzem”) na tyle równorzędnych połączeń ile potrzeba; każde rozgałęzienie przenosi ten sam sygnał - sygnał wyjściowy elementu przetwarzającego. Sygnał wyjściowy elementu przetwarzającego może być jakiegokolwiek pożądanego matematycznego typu. Przetwarzanie informacji, które zachodzi w każdym elemencie przetwarzającym może być zdefiniowane arbitralnie z ograniczeniem, że musi być ono całkowicie lokalne; to znaczy musi ono zależeć tylko od bieżącej wartości sygnału wejściowego dochodzącego do elementu przetwarzającego przez oddziaływujące połączenia i od wartości przechowywanych w lokalnej pamięci elementu przetwarzającego Dodatek 2: Definicje sieci neuronowych

80 © Kazimierz Duzinkiewicz, dr hab. inż. Katedra Inżynierii Systemów Sterowania 80 Metody sztucznej inteligencji - Technologie rozmyte i neuronowe 2015/2016 Sieci neuronowe - podstawy Inne definicje zaczerpnięte z literatury: [Cichocki A. & Umbehauen R. Neural Networks for Optimization and Signal Processing, 1994] (...) sztuczna sieć neuronowa jest układem przetwarzania informacji lub sygnałów złożonym z dużej liczby prostych elementów przetwarzających, nazywanych sztucznymi neuronami lub prościej węzłami, które są wzajemnie połączone przez bezpośrednie powiązanie nazywane połączeniem i które współdziałają ze sobą realizując równoległe przetwarzanie rozproszone w celu rozwiązania pożądanego zadania obliczeniowego Dodatek 2: Definicje sieci neuronowych

81 © Kazimierz Duzinkiewicz, dr hab. inż. Katedra Inżynierii Systemów Sterowania 81 Metody sztucznej inteligencji - Technologie rozmyte i neuronowe 2015/2016 Sieci neuronowe - podstawy [DARPA Neural Network Study, 1988] (…) sieć neuronowa jest systemem złożonym w wielu prostych elementów przetwarzających działających równolegle i którego funkcja jest zdeterminowana przez strukturę sieci, siłę powiązań i przetwarzanie realizowane w elementach przetwarzających lub węzłach [Haykin, S., Neural Networks:A Comprehensive Foundation, 1994] Sieć neuronowa jest w pełni równoległym rozproszonym procesorem posiadającym naturalną zdolność do gromadzenia wiedzy eksperymentalnej i wykorzystywania jej. Przypomina on mózg pod dwoma względami: 1. Wiedza jest pozyskiwana przez sieć poprzez proces uczenia. 2. Siły połączeń międzyneuronowych, znane jako wagi synaptyczne są wykorzystywane do gromadzenia wiedzy Dodatek 2: Definicje sieci neuronowych

82 © Kazimierz Duzinkiewicz, dr hab. inż. Katedra Inżynierii Systemów Sterowania 82 Metody sztucznej inteligencji - Technologie rozmyte i neuronowe 2015/2016 Sieci neuronowe - podstawy [Zurada, J.M., Introduction to Artificial Neural Systems, 1992] Sztuczne sieci neuronowe albo sieci neuronowe są fizycznymi systemami komórkowymi, które mogą pozyskiwać, gromadzić i wykorzystywać wiedzę eksperymentalną [Nigrin, A., Neural Networks for Pattern Recognition,1993] Sieć neuronowa jest obwodem złożonym w z bardzo dużej liczby prostych elementów przetwarzających wzorowanych na neuronach. Każdy element działa jedynie w oparciu o lokalną informację. Ponadto każdy element działa asynchronicznie; to znaczy nie ma ogólnosystemowego zegara Dodatek 2: Definicje sieci neuronowych

83 © Kazimierz Duzinkiewicz, dr hab. inż. Katedra Inżynierii Systemów Sterowania 83 Metody sztucznej inteligencji - Technologie rozmyte i neuronowe 2015/2016 Sieci neuronowe - podstawy Dodatek 4 Kto rozwijał sztuczne sieci neuronowe - ważniejsze fakty

84 © Kazimierz Duzinkiewicz, dr hab. inż. Katedra Inżynierii Systemów Sterowania 84 Metody sztucznej inteligencji - Technologie rozmyte i neuronowe 2015/2016 Sieci neuronowe - podstawy  Lata 40 XX wieku: Początek sieci neuronowych Sztuczne sieci neuronowe swój początek wywodzą z badań nad modelami matematycznymi działania biologicznej komórki nerwowej Dodatek 4:Kto rozwijał sztuczne sieci neuronowe - ważniejsze fakty

85 © Kazimierz Duzinkiewicz, dr hab. inż. Katedra Inżynierii Systemów Sterowania 85 Metody sztucznej inteligencji - Technologie rozmyte i neuronowe 2015/2016 Sieci neuronowe - podstawy  Neurony McCulloch’a-Pitts’a W roku 1943 Warren McCulloch i Walter Pitts zaproponowali pierwszy prosty model matematyczny neuronu w postaci dwuwartościowego elementu progowego. Neuron McCullocha i Pittsa oblicza sumę ważoną sygnałów wejściowych od innych neuronów i daje na wyjściu 1 (zapłon) lub 0 (spoczynek) w zależności od tego, czy suma ta jest większa, czy mniejsza od pewnej wartości progowej Schemat modelu neuronu McCullocha i Pittsa Model działania neuronu McCullocha i Pittsa Funkcja aktywacji McCullocha i Pittsa Dodatek 4:Kto rozwijał sztuczne sieci neuronowe - ważniejsze fakty

86 © Kazimierz Duzinkiewicz, dr hab. inż. Katedra Inżynierii Systemów Sterowania 86 Metody sztucznej inteligencji - Technologie rozmyte i neuronowe 2015/2016 Sieci neuronowe - podstawy  Reguła Hebba W roku 1949 Donald Hebb, psycholog, opierając się na dużej liczbie obserwacji sformułował regułę, którą uznaje się dzisiaj powszechnie za pierwszą regułę uczenia sztucznych sieci neuronowych. Reguła ta, dająca się w uproszczeniu sprowadzić do stwierdzenia, że jeżeli dwa neurony były aktywne jednocześnie to siła połączenia pomiędzy nimi powinna wzrosnąć, stanowi podstawę wielu używanych obecnie reguł uczenia sieci neuronowych Dodatek 4:Kto rozwijał sztuczne sieci neuronowe - ważniejsze fakty

87 © Kazimierz Duzinkiewicz, dr hab. inż. Katedra Inżynierii Systemów Sterowania 87 Metody sztucznej inteligencji - Technologie rozmyte i neuronowe 2015/2016 Sieci neuronowe - podstawy Dodatek 4:Kto rozwijał sztuczne sieci neuronowe - ważniejsze fakty

88 © Kazimierz Duzinkiewicz, dr hab. inż. Katedra Inżynierii Systemów Sterowania 88 Metody sztucznej inteligencji - Technologie rozmyte i neuronowe 2015/2016 Sieci neuronowe - podstawy  Lata 50. i 60.: Pierwszy złoty wiek sieci nueronowych Dzisiaj sieci neuronowe zwykło się postrzegać jako alternatywę (lub uzupełnienie) klasycznego przetwarzania opartego na zasadach sformułowanych przez John’a von Neumann’a. W latach 50. von Neumann był żywo zainteresowany problemami modelowania mózgu  Perceptron W latach 1957 i 1958 został opracowany i pomyślnie wykonany w Cornell Aeronautical Laboratory, przez Franka Rosenblatta i Charlesa Wightmana pierwszy neurokomputer - Mark I Perceptron. Od tej konstrukcji wzięta została nazwa sieci o odpowiadającej jej strukturze. Rosenblatt i Wightman wykorzystali model McCulloch’a- Pitts’a i zaproponowali metodę uczenia sieci złożonej z neuronów o progowych funkcjach aktywacji Dodatek 4: Kto rozwijał sztuczne sieci neuronowe - ważniejsze fakty

89 © Kazimierz Duzinkiewicz, dr hab. inż. Katedra Inżynierii Systemów Sterowania 89 Metody sztucznej inteligencji - Technologie rozmyte i neuronowe 2015/2016 Sieci neuronowe - podstawy „Poprawne” wyjście (dostarczane podczas uczenia) Układ wprowadzania obrazu Matryca sensorów obrazu Szafa modułów par silnik - potencjometr Tablica łączeniowa Dodatek 4:Kto rozwijał sztuczne sieci neuronowe - ważniejsze fakty

90 © Kazimierz Duzinkiewicz, dr hab. inż. Katedra Inżynierii Systemów Sterowania 90 Metody sztucznej inteligencji - Technologie rozmyte i neuronowe 2015/2016 Sieci neuronowe - podstawy Cel działania neurokomputera Mark I Perceptron Przestrzeń rozważań U – zbiór wszystkich elementów, które znajdują się w kręgu naszych zainteresowań, np. zbiór wszystkich dużych liter drukowanych Neurokomputer Mark I Perceptron został zbudowany dla rozwiązywania zadania klasyfikacji: Czy wskazany element pewniej przestrzeni rozważań należy do pewnego zbioru, czy też nie należy? Dodatek 4:Kto rozwijał sztuczne sieci neuronowe - ważniejsze fakty

91 © Kazimierz Duzinkiewicz, dr hab. inż. Katedra Inżynierii Systemów Sterowania 91 Metody sztucznej inteligencji - Technologie rozmyte i neuronowe 2015/2016 Sieci neuronowe - podstawy Przykład: interesuje nas czy pokazywana litera należy do zbioru liter „C”? – przykład klasyfikacji do dwóch zbiorów Niech: Litery „C” zapisywane w matrycach 4x4 – czy należą do zbioru liter „C”?... TAK NIE TAK? Dodatek 4:Kto rozwijał sztuczne sieci neuronowe - ważniejsze fakty

92 © Kazimierz Duzinkiewicz, dr hab. inż. Katedra Inżynierii Systemów Sterowania 92 Metody sztucznej inteligencji - Technologie rozmyte i neuronowe 2015/2016 Sieci neuronowe - podstawy W jaki sposób pokazujemy sieci litery ze zbiorów C i nieC? Wejścia do sieci neuronowej: wektory 16 bitowe jedynek (1) i zer (0)   Dodatek 4:Kto rozwijał sztuczne sieci neuronowe - ważniejsze fakty

93 © Kazimierz Duzinkiewicz, dr hab. inż. Katedra Inżynierii Systemów Sterowania 93 Metody sztucznej inteligencji - Technologie rozmyte i neuronowe 2015/2016 Sieci neuronowe - podstawy Tak Zewnętrzny obraz rozwiązywania zadania Sieć neuronowa Dodatek 4:Kto rozwijał sztuczne sieci neuronowe - ważniejsze fakty

94 © Kazimierz Duzinkiewicz, dr hab. inż. Katedra Inżynierii Systemów Sterowania 94 Metody sztucznej inteligencji - Technologie rozmyte i neuronowe 2015/2016 Sieci neuronowe - podstawy Jak można opisać zadanie klasyfikacji? Badamy pewien zbiór obiektów (przestrzeń rozważań) – w naszym przykładzie: zbiór dużych liter drukowanych Każdy z obiektów zbioru charakteryzujemy za pomocą n atrybutów lub cech x i, takich jak na przykład ciężar, wysokość, gęstość czy częstotliwość – w naszym przykładzie: 16 atrybutów przyjmujących wartości ze zbioru {0,1} i określanych, czy pole o numerze k (k=1,2,....., 16) w obszarze zapisu litery jest zajęte zapisem litery czy też nie Każdy z elementów przestrzeni rozważań X może być przedstawiony jako punkt n - wymiarowej przestrzeni tych atrybutów – w naszym przykładzie: jest to przestrzeń 16 wymiarowa x n x 1 Dodatek 4:Kto rozwijał sztuczne sieci neuronowe - ważniejsze fakty

95 © Kazimierz Duzinkiewicz, dr hab. inż. Katedra Inżynierii Systemów Sterowania 95 Metody sztucznej inteligencji - Technologie rozmyte i neuronowe 2015/2016 Sieci neuronowe - podstawy Jak można opisać zadanie klasyfikacji? – c.d. x n x 1 Potrafimy (my ludzie) rozróżniać elementy różnych zbiorów przestrzeni rozważań – w naszym przykładzie potrafimy wskazać, które z pokazywanych liter należą do zbioru dużych liter C drukowanych (klasa 1) a które nie należą (klasa 0) Duże litery C Potrafimy znaleźć w n – wymiarowej przestrzeni atrybutów obiektów rozważań hiperpłaszczyznę, która rozdziela interesujący nas zbiór i pozostałe elementy przestrzeni rozważań – w naszym przykładzie: potrafimy znaleźć hiperpłaszczyznę rozdzielającą zbiór dużych liter C drukowanych od innych liter Klasa 1 Klasa 0 Hiperpłaszczyzna rozdzielająca Równanie hiperpłaszczyzny rozdzielającej Dodatek 4:Kto rozwijał sztuczne sieci neuronowe - ważniejsze fakty Nie (Duże litery C)

96 © Kazimierz Duzinkiewicz, dr hab. inż. Katedra Inżynierii Systemów Sterowania 96 Metody sztucznej inteligencji - Technologie rozmyte i neuronowe 2015/2016 Sieci neuronowe - podstawy Jak można opisać zadanie klasyfikacji? – c.d. Hiperpłaszczyzna rozdzielająca – miejsce geometryczne punktów przestrzeni atrybutów obiektów przestrzeni rozważań dla którego: Możemy policzyć: x n x 1 Klasa 1 Klasa 0  x1x1 w1w1 xnxn wnwn n y 0 Dodatek 4:Kto rozwijał sztuczne sieci neuronowe - ważniejsze fakty

97 © Kazimierz Duzinkiewicz, dr hab. inż. Katedra Inżynierii Systemów Sterowania 97 Metody sztucznej inteligencji - Technologie rozmyte i neuronowe 2015/2016 Sieci neuronowe - podstawy Jak można opisać zadanie klasyfikacji? – c.d. Zadanie klasyfikacji: znaleźć taki zbiór wag lub modyfikowalnych współczynników, że wyjście perceptronu jest 1, jeżeli wektor wzorca (sygnał wejściowy) należy do klasy 1, a 0, jeżeli wektor wzorca należy do klasy 0 W jaki sposób zadanie to realizowane jest za pomocą perceptronu? Wartości wag są pamiętane przez perceptron i modyfikowane przez niego zgodnie z regułą uczenia perceptronu. Reguła uczenia perceptronu działa podczas procesu uczenia, kiedy perceptronowi pokazywana jest sekwencja wektorów wzorców (kolejno po jednym). Każdorazowo, kiedy pokazywany jest perceptronowi wektor x (jako element zbioru uczącego), otrzymuje on również informację do której klasy on należy (do klasy 1 czy 0). W przebiegu każdego ciągu uczącego (nazywanego też epoką uczenia) reguła uczenia modyfikuje wektor wag w zgodnie z równaniem: We wzorze tym y jest prawidłowym numerem klasy wzorca wejściowego x, a y’ jest wyjściem perceptronu (numerem klasy)określonym przez aktualne wartości wag Dodatek 4:Kto rozwijał sztuczne sieci neuronowe - ważniejsze fakty

98 © Kazimierz Duzinkiewicz, dr hab. inż. Katedra Inżynierii Systemów Sterowania 98 Metody sztucznej inteligencji - Technologie rozmyte i neuronowe 2015/2016 Sieci neuronowe - podstawy Kilka danych o Mark I Perceptron  8 komórek nerwowych,  512 połączeń (struktura połączeń zadawana była losowo),  szybkość działania – około 10 3 przełączeń na sekundę Dodatek 4:Kto rozwijał sztuczne sieci neuronowe - ważniejsze fakty

99 © Kazimierz Duzinkiewicz, dr hab. inż. Katedra Inżynierii Systemów Sterowania 99 Metody sztucznej inteligencji - Technologie rozmyte i neuronowe 2015/2016 Sieci neuronowe - podstawy  Adaline i Madaline Niewiele później po Mark I Perceptron, powstała ciekawa konstrukcja neurokomputera zbudowana jako sieć uczących się elementów elektro­ chemicznych nazywanych Adaline od ADAptive LInear NEuron. Zbudowana została w 1960 roku przez Bernarda Widrowa i jego studenta Marciana (Teda) Hoffa z Uniwersytetu Stanforda. Cała sieć nazywana była od nazwy elementu Madaline (Many Adaline). Widrow i Hoff do uczenia zbudowanej sieci zastosowali nową metodę uczenia nazywaną od ich nazwisk metodą Widrow’a i Hoff’a lub metodą delty lub metodą LMS Kilka danych o Madaline Bernard Widrow Marcian Hoff  8 komórek nerwowych,  128 połączeń,  szybkość działania – około 10 4 przełączeń na sekundę Dodatek 4:Kto rozwijał sztuczne sieci neuronowe - ważniejsze fakty

100 © Kazimierz Duzinkiewicz, dr hab. inż. Katedra Inżynierii Systemów Sterowania 100 Metody sztucznej inteligencji - Technologie rozmyte i neuronowe 2015/2016 Sieci neuronowe - podstawy  Lata 70.: Lata ciszy Pomimo niewątpliwych sukcesów lat sześćdziesiątych nieznajomość efektywnych metod uczenia sieci o więcej niż jedna warstwie uniemożliwiała ich zastosowanie w bardziej złożonych zadaniach. W połowie lat sześćdziesiątych stało się jasne, że era pierwszych sukcesów w dziedzinie sieci neuronowych została zamknięta. W roku 1969 Marvin Minsky i Seymour Pappert - rzecznicy systemów ekspertowych - opublikowali książkę: Minsky M., Papert S., Perceptrons, MIT Press, Cambridge 1969 w której zaatakowali istniejący stan badań nad sieciami neuronowymi, określając go jako bezwartościowy. Minsky i Papert wykazali, że kilka elementarnych zadań nie można wykonać na jednowarstwowym perceptronie. Jednak wielu obecnych liderów w dziedzinie sztucznych sieci neuronowych nie zraziło się tą krytyką i dalej prowadziło badania Dodatek 4:Kto rozwijał sztuczne sieci neuronowe - ważniejsze fakty

101 © Kazimierz Duzinkiewicz, dr hab. inż. Katedra Inżynierii Systemów Sterowania 101 Metody sztucznej inteligencji - Technologie rozmyte i neuronowe 2015/2016 Sieci neuronowe - podstawy  Kohonen We wczesnych latach siedemdziesiątych (1972) powstały pierwsze prace Teuvo Kohonen’a wykonane na Helsinki University of Technology dotyczące sieci neuronowych pamięci asocjacyjnych (skojarzeniowych). Rozwinięte później (lata osiemdziesiąte) w tzw. samo-organizujące się odwzorowania cech, były one wykorzystywane do rozpoznawania mowy (słowa fińskie i japońskie), rozwiązania problemu komiwojażera oraz komponowania muzyki  Anderson Prace nad sieciami pamięci asocjacyjnych prowadził też w tym czasie James Anderson w Brown University Dodatek 4:Kto rozwijał sztuczne sieci neuronowe - ważniejsze fakty

102 © Kazimierz Duzinkiewicz, dr hab. inż. Katedra Inżynierii Systemów Sterowania 102 Metody sztucznej inteligencji - Technologie rozmyte i neuronowe 2015/2016 Sieci neuronowe - podstawy  Carpenter Wspólnie z Stephen’em Grossberg’iem Gail Carpenter rozwinęli na początku lat osiemdziesiątych (1985-1990) teorię samo- organizujących się sieci neuronowych nazywaną teorią rezonansu adaptacyjnego (Adaptive Resonance Theory - ART). Sieci teorii rezonansu adaptacyjnego dla wejść binarnych (ART1) oraz ciągłych są dziś jednymi z bardziej popularnych sieci  Grossberg Bardzo aktywnym badaczem w tym czasie był Stephen Grossberg; w latach 1967-1988 opublikował on ze swoimi kolegami 146 prac z dziedziny sieci neuronowych. Są to głównie prace o charakterze matematyczno-biologicznym Dodatek 4:Kto rozwijał sztuczne sieci neuronowe - ważniejsze fakty

103 © Kazimierz Duzinkiewicz, dr hab. inż. Katedra Inżynierii Systemów Sterowania 103 Metody sztucznej inteligencji - Technologie rozmyte i neuronowe 2015/2016 Sieci neuronowe - podstawy  Lata 80.: Ponowny entuzjazm i jego źródła Podstawowy powód zaniku szerszego zainteresowania sieciami neuronowymi - brak efektywnej metody uczenia sieci wielowarstwowych - zniknął w połowie lat osiemdziesiątych  Propagacja wsteczna Zaproponowana niezależnie przez Davida Parker’a (1985) i LeCun (1986) metoda nazwana została metodą propagacji wstecznej. Później okazało się, że metoda po raz pierwszy została zaproponowana znacznie wcześniej przez Werbos’a (1974, praca doktorska, Harward), ale nie została szerzej rozpowszechniona. Zrobili to w roku 1986 Rumehart i McClelland publikując pracę „Parallel Distributed Processing” Dodatek 3:Kto rozwijał sztuczne sieci neuronowe - ważniejsze fakty

104 © Kazimierz Duzinkiewicz, dr hab. inż. Katedra Inżynierii Systemów Sterowania 104 Metody sztucznej inteligencji - Technologie rozmyte i neuronowe 2015/2016 Sieci neuronowe - podstawy  Sieci Hopfielda Nazwisko laureata Nagrody Nobla w dziedzinie fizyki John’a Hopfielda z California Institute of technology, wykazującego zainteresowanie sieciami neuronowymi i proponującego nowe sieci (1982-87) poszerza zainteresowanie sieciami neuronowymi  Neocognitron Kunihiko Fukushima i jego koledzy z NHK Laboratories w Tokio proponują szereg specjalizowanych sieci neuronowych do rozpoznawania znaków. Szerokie zainteresowanie wzbudzają tzw. neocognitron’y Dodatek 4:Kto rozwijał sztuczne sieci neuronowe - ważniejsze fakty

105 © Kazimierz Duzinkiewicz, dr hab. inż. Katedra Inżynierii Systemów Sterowania 105 Metody sztucznej inteligencji - Technologie rozmyte i neuronowe 2015/2016 Sieci neuronowe - podstawy  Sieci Hopfielda Nazwisko laureata Nagrody Nobla w dziedzinie fizyki John’a Hopfielda z California Institute of technology, wykazującego zainteresowanie sieciami neuronowymi i proponującego nowe sieci (1982-87) poszerza zainteresowanie sieciami neuronowymi  Neocognitron Kunihiko Fukushima i jego koledzy z NHK Laboratories w Tokio proponują szereg specjalizowanych sieci neuronowych do rozpoznawania znaków. Szerokie zainteresowanie wzbudzają tzw. neocognitron’y Dodatek 4:Kto rozwijał sztuczne sieci neuronowe - ważniejsze fakty

106 © Kazimierz Duzinkiewicz, dr hab. inż. Katedra Inżynierii Systemów Sterowania 106 Metody sztucznej inteligencji - Technologie rozmyte i neuronowe 2015/2016 Sieci neuronowe - podstawy  Maszyna Boltzmann’a Pojawiają się prace wskazujące na zainteresowanie niedeterministycznymi sieciami neuronowymi. Są to sieci, w których wagi i aktywacje są zmieniane w oparciu o funkcje gęstości prawdopodobieństwa. Sieci te wykorzystują takie znane idee jak symulowane wyżarzanie (maszyna Boltzmann’a) czy Bayesowską teorię decyzji  Implementacje sprzętowe (hardware’owe) Efektywne implementacje sprzętowe teoretycznych podstaw sieci neuronowych to inny powód powrotu szerokiego zainteresowania sieciami neuronowymi Dodatek 4:Kto rozwijał sztuczne sieci neuronowe - ważniejsze fakty

107 © Kazimierz Duzinkiewicz, dr hab. inż. Katedra Inżynierii Systemów Sterowania 107 Metody sztucznej inteligencji - Technologie rozmyte i neuronowe 2015/2016 Sieci neuronowe - podstawy Implementacje sprzętowe (hardware’owe) Od połowy lat 80. notuje się prawdziwy wyścig, którego uczestnikami są, obok laboratoriów badawczych, także firmy produkujące układy elektroniczne. Osiągnięciami liczącymi się w tym wyścigu są:  liczba elementów neuropodobnych umieszczonych w sieci,  liczba połączeń,  szybkość działania, wyrażana w liczbach przełączeń na sekundę Dodatek 4:Kto rozwijał sztuczne sieci neuronowe - ważniejsze fakty

108 © Kazimierz Duzinkiewicz, dr hab. inż. Katedra Inżynierii Systemów Sterowania 108 Metody sztucznej inteligencji - Technologie rozmyte i neuronowe 2015/2016 Sieci neuronowe - podstawy Nazwa neurokomputera Rok Liczba elementów Liczba połączeń SzybkośćTwórca Mark III1985 8  10 3 4  10 5 3  10 5 R. Hecht ‑ Nielsen, TRW Neural Emulator Processor 1985 4  10 3 1.6  10 4 4.9  10 5 C. Cruz, IBM Mark IV1986 2.5  10 5 5  10 6 R. Hecht ‑ Nielsen, TRW Odyssey1986 8  10 3 2.5  10 5 2  10 6 A. Penz, Tex. Inst. CRL Crossbar Chip1986256 6.4  10 4 6  10 9 L. Jackel, AT&T Bell Labs Anza1987 3  10 4 5  10 5 1.4  10 5 R. Hecht ‑ Nielsen, Neurocomp. Corp. Parallon1987 9.1  10 4 3  10 5 3  10 4 S. Bogoch, Human Dev. Anza plus198810 6 1.5  10 6 6  10 6 R. Hecht ‑ Nielsen, Neurocomp. Corp. Zestawienie ważniejszych realizacji hardware’owych sieci neuronowych z okresu pierwszej połowy lat 80 Dodatek 4: Kto rozwijał sztuczne sieci neuronowe - ważniejsze fakty

109 © Kazimierz Duzinkiewicz, dr hab. inż. Katedra Inżynierii Systemów Sterowania 109 Metody sztucznej inteligencji - Technologie rozmyte i neuronowe 2015/2016 Sieci neuronowe - podstawy Dodatek 5 Obszary zastosowań sieci neuronowych

110 © Kazimierz Duzinkiewicz, dr hab. inż. Katedra Inżynierii Systemów Sterowania 110 Metody sztucznej inteligencji - Technologie rozmyte i neuronowe 2015/2016 Sieci neuronowe - podstawy  diagnostyka układów elektronicznych,  badania psychiatryczne,  prognozy giełdowe,  prognozowanie sprzedaży,  poszukiwania ropy naftowej,  interpretacja 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, Dodatek 5: Obszary zastosowań sieci neuronowych

111 © Kazimierz Duzinkiewicz, dr hab. inż. Katedra Inżynierii Systemów Sterowania 111 Metody sztucznej inteligencji - Technologie rozmyte i neuronowe 2015/2016 Sieci neuronowe - podstawy Zastosowania techniczne zagadnienia rozpoznawania, a zwłaszcza rozpoznawania kontekstowego i inwariantnego (w sensie niezależności od typowych transformacji), zadania klasyfikacji oraz analizy obrazów i ich przetwarzania, Około 70% prac dotyczących sieci neuronowych odwołuje się bezpośrednio lub pośrednio do zagadnień rozpoznawania Dodatek 5: Obszary zastosowań sieci neuronowych

112 © Kazimierz Duzinkiewicz, dr hab. inż. Katedra Inżynierii Systemów Sterowania 112 Metody sztucznej inteligencji - Technologie rozmyte i neuronowe 2015/2016 Sieci neuronowe - podstawy "klasyczne" zadania przetwarzania sygnałów, takie jak konwersje, filtracje i aproksymacje oraz inne odwzorowania i transformacje (zwłaszcza transformacja Fouriera), Zastosowania techniczne – c.d. zadania z zakresu robotyki, automatyki oraz teorii sterowania (zwłaszcza sterowania adaptacyjnego w układach samouczących się), w tym węższe problemy jak: identyfikacja systemów dynamicznych, sterowanie ruchem pojedynczego obiektu (najczęściej robota) lub ruchem zbiorowości pojazdów, percepcja ruchu i jego planowanie, koordynacja sensomotoryczna, Zastosowanie sieci neuronowych jako elementów sterujących wypada często zdecydowanie korzystniej niż stosowanie tradycyjnych urządzeń sterujących Dodatek 5: Obszary zastosowań sieci neuronowych

113 © Kazimierz Duzinkiewicz, dr hab. inż. Katedra Inżynierii Systemów Sterowania 113 Metody sztucznej inteligencji - Technologie rozmyte i neuronowe 2015/2016 Sieci neuronowe - podstawy Zastosowania techniczne – c.d. budowa pamięci asocjacyjnych, rozproszonych, algorytmy automatycznego uczenia się maszyn oraz uogólniania nabywanych doświadczeń Dodatek 5: Obszary zastosowań sieci neuronowych

114 © Kazimierz Duzinkiewicz, dr hab. inż. Katedra Inżynierii Systemów Sterowania 114 Metody sztucznej inteligencji - Technologie rozmyte i neuronowe 2015/2016 Sieci neuronowe - podstawy Wybrane zastosowania nietechniczne  predykcja; np. ocena zdolności kredytowej przedsiębiorstwa, prognozy rozwoju przedsiębiorstwa, prognozy zmian rynku, sterowanie obiektów ekonomicznych na podstawie przewidywania (predykcji) ich zachowań w odpowiedzi na określone sterowania,  klasyfikacja i rozpoznawanie podmiotów gospodarczych,  analiza i kojarzenie danych, Dodatek 5: Obszary zastosowań sieci neuronowych

115 © Kazimierz Duzinkiewicz, dr hab. inż. Katedra Inżynierii Systemów Sterowania 115 Metody sztucznej inteligencji - Technologie rozmyte i neuronowe 2015/2016 Sieci neuronowe - podstawy Dodatek 6 Funkcje pobudzania g(.)

116 © Kazimierz Duzinkiewicz, dr hab. inż. Katedra Inżynierii Systemów Sterowania 116 Metody sztucznej inteligencji - Technologie rozmyte i neuronowe 2015/2016 Sieci neuronowe - podstawy Funkcje pobudzania g(.) (k - numer neuronu, j - numer wejścia neuronu) 1. Funkcja sumy 2. Funkcja iloczynu 3. Funkcja maksimum

117 © Kazimierz Duzinkiewicz, dr hab. inż. Katedra Inżynierii Systemów Sterowania 117 Metody sztucznej inteligencji - Technologie rozmyte i neuronowe 2015/2016 Sieci neuronowe - podstawy 4. Funkcja minimum 5. Funkcja majoryzacji gdzie: 6. Funkcja sumy kumulowanej gdzie: i- krok działania neuronu

118 © Kazimierz Duzinkiewicz, dr hab. inż. Katedra Inżynierii Systemów Sterowania 118 Metody sztucznej inteligencji - Technologie rozmyte i neuronowe 2015/2016 Sieci neuronowe - podstawy Dodatek 7 Funkcje aktywacji f(.)

119 © Kazimierz Duzinkiewicz, dr hab. inż. Katedra Inżynierii Systemów Sterowania 119 Metody sztucznej inteligencji - Technologie rozmyte i neuronowe 2015/2016 Sieci neuronowe - podstawy Funkcje aktywacji f(.) – pojedynczych neuronów 1. Funkcja przekaźnikowa unipolarna (niesymetryczna) 2. Funkcja przekaźnikowa bipolarna (symetryczna)

120 © Kazimierz Duzinkiewicz, dr hab. inż. Katedra Inżynierii Systemów Sterowania 120 Metody sztucznej inteligencji - Technologie rozmyte i neuronowe 2015/2016 Sieci neuronowe - podstawy 3. Funkcja liniowa 4. Funkcja liniowa dodatnia

121 © Kazimierz Duzinkiewicz, dr hab. inż. Katedra Inżynierii Systemów Sterowania 121 Metody sztucznej inteligencji - Technologie rozmyte i neuronowe 2015/2016 Sieci neuronowe - podstawy 5. Funkcja liniowa z nasyceniem niesymetryczna 6. Funkcja liniowa z nasyceniem symetryczna

122 © Kazimierz Duzinkiewicz, dr hab. inż. Katedra Inżynierii Systemów Sterowania 122 Metody sztucznej inteligencji - Technologie rozmyte i neuronowe 2015/2016 Sieci neuronowe - podstawy 7. Funkcja sigmoidalna logarytmiczna unipolarna (niesymetryczna) 8. Funkcja sigmoidalna logarytmiczna bipolarna (symetryczna)

123 © Kazimierz Duzinkiewicz, dr hab. inż. Katedra Inżynierii Systemów Sterowania 123 Metody sztucznej inteligencji - Technologie rozmyte i neuronowe 2015/2016 Sieci neuronowe - podstawy 9. Funkcja sigmoidalna tangensa hiperbolicznego unipolarna (niesymetryczna) 10. Funkcja sigmoidalna tangensa hiperbolicznego bipolarna (symetryczna)

124 © Kazimierz Duzinkiewicz, dr hab. inż. Katedra Inżynierii Systemów Sterowania 124 Metody sztucznej inteligencji - Technologie rozmyte i neuronowe 2015/2016 Sieci neuronowe - podstawy 11. Funkcja Gaussa (Radial Basis)

125 © Kazimierz Duzinkiewicz, dr hab. inż. Katedra Inżynierii Systemów Sterowania 125 Metody sztucznej inteligencji - Technologie rozmyte i neuronowe 2015/2016 Sieci neuronowe - podstawy Dodatek 8 Przybornik Neural Network w środowisku MATLAB/Simulink Funkcje aktywacji

126 © Kazimierz Duzinkiewicz, dr hab. inż. Katedra Inżynierii Systemów Sterowania 126 Metody sztucznej inteligencji - Technologie rozmyte i neuronowe 2015/2016 Sieci neuronowe - podstawy Funkcje aktywacji dla pojedynczych neuronów Algorytm: >> n=1 n = 1 >> a = hardlim(n) a = 1 >> Przykłady: >> n= -1 n = >> a=hardlim(n) a = 0 >> a) b)

127 © Kazimierz Duzinkiewicz, dr hab. inż. Katedra Inżynierii Systemów Sterowania 127 Metody sztucznej inteligencji - Technologie rozmyte i neuronowe 2015/2016 Sieci neuronowe - podstawy Algorytm: Przykłady: >> n=1 n = 1 >> a=hardlims(n) a = 1 >> a) b) >> n= -1 n = >> a=hardlims(n) a = >>

128 © Kazimierz Duzinkiewicz, dr hab. inż. Katedra Inżynierii Systemów Sterowania 128 Metody sztucznej inteligencji - Technologie rozmyte i neuronowe 2015/2016 Sieci neuronowe - podstawy Algorytm: Przykłady: a) b) >> n=1 n = 1 >> a=purelin(n) a = 1 >> >> n=-1 n = >> a=purelin(n) a = >> c) >> n=100 n = 100 >> a=purelin(n) a = 100 >> d) >> n=-100 n = -100 >> a=purelin(n) a = -100 >>

129 © Kazimierz Duzinkiewicz, dr hab. inż. Katedra Inżynierii Systemów Sterowania 129 Metody sztucznej inteligencji - Technologie rozmyte i neuronowe 2015/2016 Sieci neuronowe - podstawy Algorytm: Przykłady: a) b) c) d) >> n=1 n = 1 >> a=poslin(n) a = 1 >> >> n=-1 n = >> a=poslin(n) a = 0 >> >> n=100 n = 100 >> a=poslin(n) a = 100 >> >> n=-100 n = -100 >> a=poslin(n) a = 0 >>

130 © Kazimierz Duzinkiewicz, dr hab. inż. Katedra Inżynierii Systemów Sterowania 130 Metody sztucznej inteligencji - Technologie rozmyte i neuronowe 2015/2016 Sieci neuronowe - podstawy Algorytm: Przykłady: a) b) c) d) >> n=0.5 n = 0.5000 >> a=satlin(n) a = 0.5000 >> >> n=-0.500 n = -0.5000 >> a=satlin(n) a = 0 >> >> n=2 n = 2 >> a=satlin(n) a = 1 >> >> n=-2 n = -2 >> a=satlin(n) a = 0 >>

131 © Kazimierz Duzinkiewicz, dr hab. inż. Katedra Inżynierii Systemów Sterowania 131 Metody sztucznej inteligencji - Technologie rozmyte i neuronowe 2015/2016 Sieci neuronowe - podstawy Algorytm: a) b) c) d) >> n=0.5 n = 0.5000 >> a=satlins(n) a = 0.5000 >> >> n=-0.5 n = -0.5000 >> a=satlins(n) a = -0.5000 >> >> n=2 n = 2 >> a=satlins(n) a = 1 >> >> n=-2 n = -2 >> a=satlins(n) a = >> Przykłady:

132 © Kazimierz Duzinkiewicz, dr hab. inż. Katedra Inżynierii Systemów Sterowania 132 Metody sztucznej inteligencji - Technologie rozmyte i neuronowe 2015/2016 Sieci neuronowe - podstawy Algorytm: Przykłady: a) b) c) d) >> n=0.5 n = 0.5000 >> a=logsig(n) a = 0.6225 >> >> n=-0.5 n = -0.5000 >> a=logsig(n) a = 0.3775 >> >> n=2 n = 2 >> a=logsig(n) a = 0.8808 >> >> n=-2 n = -2 >> a=logsig(n) a = 0.1192 >>

133 © Kazimierz Duzinkiewicz, dr hab. inż. Katedra Inżynierii Systemów Sterowania 133 Metody sztucznej inteligencji - Technologie rozmyte i neuronowe 2015/2016 Sieci neuronowe - podstawy Algorytm: a) b) c) d) >> n=0.5 n = 0.5000 >> a=tansig(n) a = 0.4621 >> >> n=-0.5 n = -0.5000 >> a=tansig(n) a = -0.4621 >> >> n=2 n = 2 >> a=tansig(n) a = 0.9640 >> >> n=-2 n = -2 >> a=tansig(n) a = -0.9640 >> Przykłady:

134 © Kazimierz Duzinkiewicz, dr hab. inż. Katedra Inżynierii Systemów Sterowania 134 Metody sztucznej inteligencji - Technologie rozmyte i neuronowe 2015/2016 Sieci neuronowe - podstawy Algorytm: a) b) c) d) >> n= 0.5 n = 0.5000 >> a=radbas(n) a = 0.7788 >> >> n=-0.5 n = -0.5000 >> a=radbas(n) a = 0.7788 >> >> n=2 n = 2 >> a=radbas(n) a = 0.0183 >> >> n=-2 n = -2 >> a=radbas(n) a = 0.0183 >> Przykłady:

135 © Kazimierz Duzinkiewicz, dr hab. inż. Katedra Inżynierii Systemów Sterowania 135 Metody sztucznej inteligencji - Technologie rozmyte i neuronowe 2015/2016 Sieci neuronowe - podstawy Algorytm: a) b) c) d) >> n=0.5 n = 0.5000 >> a=tribas(n) a = 0.5000 >> >> n=-0.5 n = -0.5000 >> a=tribas(n) a = 0.5000 >> >> n=2 n = 2 >> a=tribas(n) a = 0 >> >> n=-2 n = -2 >> a=tribas(n) a = 0 >> Przykłady:

136 © Kazimierz Duzinkiewicz, dr hab. inż. Katedra Inżynierii Systemów Sterowania 136 Metody sztucznej inteligencji - Technologie rozmyte i neuronowe 2015/2016 Sieci neuronowe - podstawy Dodatek 9 Przybornik Neural Network w środowisku MATLAB/Simulink Warstwowe funkcje aktywacji

137 © Kazimierz Duzinkiewicz, dr hab. inż. Katedra Inżynierii Systemów Sterowania 137 Metody sztucznej inteligencji - Technologie rozmyte i neuronowe 2015/2016 Sieci neuronowe - podstawy a = compet(n) Przykłady: a) b) >> n=[0; 1; -0.5; 0.5] n = 0 1.0000 -0.5000 0.5000 >> a=compet(n) a = (2,1) 1 >> >> n=[1; 1; 1; 1;] n = 1 >> a=compet(n) a = (1,1) 1 >> Algorytm:

138 © Kazimierz Duzinkiewicz, dr hab. inż. Katedra Inżynierii Systemów Sterowania 138 Metody sztucznej inteligencji - Technologie rozmyte i neuronowe 2015/2016 Sieci neuronowe - podstawy Algorytm: a) b) >> n=[0; 1; -0.5; 0.5] n = 0 1.0000 -0.5000 0.5000 >> a=softmax(n) a = 0.1674 0.4551 0.1015 0.2760 >> n=[0; 1] n = 0 1 >> a=softmax(n) a = 0.2689 0.7311 >> n=[1; 2] n = 1 2 >> a=softmax(n) a = 0.2689 0.7311 c) >> n=[9; 10] n = 9 10 >> a=softmax(n) a = 0.2689 0.7311 d) Przykłady:

139 © Kazimierz Duzinkiewicz, dr hab. inż. Katedra Inżynierii Systemów Sterowania 139 Metody sztucznej inteligencji - Technologie rozmyte i neuronowe 2015/2016 Sieci neuronowe - podstawy Koniec zestawu slajdów


Pobierz ppt "© Kazimierz Duzinkiewicz, dr hab. inż. Katedra Inżynierii Systemów Sterowania 1 Metody sztucznej inteligencji - Technologie rozmyte i neuronowe 2015/2016."

Podobne prezentacje


Reklamy Google