1.39k likes | 2.02k Views
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.
E N D
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
Krótki opis neuronu biologicznego Mózg składa się z 1010 - 1011neuronó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. W ciele komórki realizowane są prawie wszystkie logiczne funkcje neuronu 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 103 – 104 dendrytów
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
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
Więcej o biologicznym neuronie i centralnych systemach nerwowych: Dodatek 1
Cybernetyczny model neuronu Układ MISO
Porównanie komputera klasycznego (von Neumanna) i neuronowego: Dodatek 2
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
Wektor cech i wyznaczniki (etykiety) klas Przestrzeń rozważań Projektowanie klasyfikatora Przetwarzanie danych i ekstrakcja cech Obserwowane cechy Etykiety klas Klasyfikator Aspekty na których skupimy nasze zainteresowanie sztucznymi sieciami neuronowymi w tym przedmiocie Klasyfikacja obiektów (stanów, wzorców, ….) Sieć neuronowa z zadaniu klasyfikacji – faza uczenia 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
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
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.
Kto rozwijał sztuczne sieci neuronowe • ważniejsze fakty • Patrz: Dodatek 4
Obszary zastosowań sieci neuronowych • Patrz: Dodatek 5
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.
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
Opis matematyczny neuronu o numerze k: Pobudzenie neuronu o numerze k: Odpowiedź neuronu o numerze k: Na przykład:
Inny model neuronu statycznego o numerze k (rozszerzona przestrzeń wejść i progów)
Opis matematyczny neuronu o numerze k: Pobudzenie neuronu o numerze k: Odpowiedź neuronu o numerze k: Na przykład:
Uproszczone przedstawienie modelu neuronu statycznego o numerze k lub
Będziemy też używali symbolicznego przedstawienia neuronu w postaci: Zwykła przestrzeń wejść i progów Rozszerzona przestrzeń wejść i progów
Model neuronu dynamicznego (stosowany w ciągłych sieciach dynamicznych) Sprzężenie zwrotne wewnętrzne (własne) Przedstawienie schematyczne Rekurencja wewnętrzna (własna) Rekurencja wewnętrzna (własna) Rekurencja zewnętrzna Przedstawienie symboliczne Rekurencja zewnętrzna
Funkcje pobudzania g(.) (k - numer neuronu, j - numer wejścia neuronu) 1. Funkcja sumy Więcej funkcji pobudzania – patrz: Dodatek 6
Funkcje aktywacji f(.) – pojedynczych neuronów 1. Funkcja przekaźnikowa unipolarna (niesymetryczna) 2. Funkcja przekaźnikowa bipolarna (symetryczna)
3. Funkcja liniowa 4. Funkcja sigmoidalna logarytmiczna unipolarna (niesymetryczna)
5. Funkcja sigmoidalna tangensa hiperbolicznego bipolarna (symetryczna) 6. Funkcja Gaussa (Radial Basis)
Więcej funkcji aktywacji patrz: Dodatek 7
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
Neuron z wieloma wejściami Uproszczone przedstawienie neuronu z wieloma wejściami
Przykłady: a) >> n=1 n = 1 >> a = hardlim(n) a = 1 >> b) >> n= -1 n = -1 >> a=hardlim(n) a = 0 >> Funkcje aktywacji dla pojedynczych neuronów Algorytm:
Więcej funkcji aktywacji przybornika Neural Network – Dodatek 8
1 y(l -1)1 (l) (l) b w k k1 y(l -1)2 (l) w k- ty neuron sieci k2 j g y(l)k (l) w kj j g y(l -1)j (l) w km j g (l - 1) y m 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
1 (l - 1) y 1 (l) (l) b w k k1 (l - 1) k – ty neuron sieci (l) y w 2 k2 j S (l) y k (l) w kj j S (l - 1) y j (l) w km j S (l - 1) y m Warstwa neuronów – c.d. najczęściej
Warstwa neuronów – c.d. Inne przedstawienie (II) (rozszerzona przestrzeń wejść i wag)
Warstwa neuronów – c.d. najczęściej
Struktura opisu nie zmieniła się w stosunku do opisu pojedynczego neuronu 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 Przedstawienie II Opis matematyczny neuronu o numerze k w warstwie l: Pobudzenie neuronu o numerze k: Odpowiedź neuronu o numerze k: Najczęściej:
Przybornik Neural Network w środowisku MATLAB/Simulink Jednowarstwowa sieć neuronowa z R sygnałami wejściowymi i S neuronami w warstwie Macierz wag: Wektor progów:
Jednowarstwowa sieć neuronowa z R sygnałami wejściowymi i S neuronami w warstwie Wektor wejść: Wektor wyjść:
Jednowarstwowa sieć neuronowa z R sygnałami wejściowymi i S neuronami w warstwie – uproszczone przedstawienie
Funkcje aktywacji f(.) – warstwy neuronów 1. Funkcja współzawodnictwa
a = compet(n) Przykłady: a) b) >> n=[1; 1; 1; 1;] n = 1 1 1 1 >> a=compet(n) a = (1,1) 1 >> >> n=[0; 1; -0.5; 0.5] n = 0 1.0000 -0.5000 0.5000 >> a=compet(n) a = (2,1) 1 >> Przybornik Neural Network w środowisku MATLAB/Simulink Algorytm:
Więcej warstwowych funkcji aktywacji przybornika Neural Network – Dodatek 9
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
L y x y L3 L1 L2 x Struktury sieci neuronowych – c.d. (i) sieci jednokierunkowe (jedno lub wielowarstwowe) (a) jednowarstwowe przepływ sygnałów od źródeł do warstwy neuronów wyjściowych (b) wielowarstwowe
we1 n1 n1 we1 we2 wy1 we3 n5 n2 wy1 n2 we4 we2 wy2 we5 n3 we6 wy2 n3 n6 we3 we7 wy3 we8 n4 n4 we4 we9 wy4 Warstwa wejściowa węzłów źródłowych Warstwa neuronów wyjściowych we10 Warstwa neuronów ukrytych Warstwa neuronów wyjściowych Warstwa wejściowa węzłów źródłowych Struktury sieci neuronowych – c.d. Przykłady i terminologia: (b) sieć wielowarstwowa (a) sieć jednowarstwowa
+ y x L2 L1 - L3 Struktury sieci neuronowych – c.d. (ii) sieci ze sprzężeniem zwrotnym (rekurencyjne) 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
Operator opóźnienia jednostkowego Wyjścia Operator opóźnienia jednostkowego Wejścia Wyjścia Struktury sieci neuronowych – c.d. Przykłady i terminologia: w sieci mogą występować pętle samo – sprzężenia zwrotnego
Struktury sieci neuronowych – c.d. (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
Przybornik Neural Network w środowisku MATLAB/Simulink Wejścia i warstwy Warstwa węzłów źródłowych nazywa się wejściem sieci 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
Przybornik Neural Network w środowisku MATLAB/Simulink Sieci wielowarstwowe Z każą warstwą związane są: macierz wag W, wektor progów b, oraz wektor wyjść a Sieć może mieć kilka warstw Przyporządkowanie tych obiektów warstwom określone jest górnymi indeksami