Sieci neuronowe jako sposób na optymalizacje podejmowanych

Transkrypt

Sieci neuronowe jako sposób na optymalizacje podejmowanych
Sieci neuronowe jako sposób na
optymalizacje podejmowanych
decyzji
Tomasz Karczyoski
Wydział W-08 IZ
Czym są sieci neuronowe
• Struktura matematycznych oraz programowy lub sprzętowy
model, realizujących obliczenia lub przetwarzanie sygnałów
poprzez rzędy elementów, zwanych sztucznymi neuronami,
wykonujących pewną podstawową operację na swoim
wejściu.
• Zastosowanie w każdej dziedzinie nauk:
–
–
–
–
Elektronika
Medycyna
Ekonomia
Zarządzanie.
• Budowanie systemów ekspertowych tam gdzie:
– Metody algorytmiczne
– Metody analityczne
– Klasyczne metody heurystyczne
nie przynoszą wymiernych skutków.
Sieci neuronowe jako sposób na
optymalizacje podejmowanych decyzji
2/17
Perceptron - model McCullocha-Pittsa
x1
x2
w1
w2
.
..
xn
wn
+
Si
F(Si)
yi
• Wejścia - doprowadzają sygnały x dochodzące z innych
neuronów, które tworzą sied.
• Wagi - sygnał xj mnożony jest przez odpowiadającą mu
wartośd liczbową zwaną wagą w. Waga odgrywa istotną rolę w
procesie percepcji konkretnego sygnału wejściowego i jego
udziale w tworzeniu sygnału wyjściowego przez neuron.
• Sumator - iloczyny sygnałów i wag stanowią argument funkcji
aktywacji neuronu f(si).
• Funkcji aktywacji f(si) - przekształca odpowiedz neuronu na
zadane sygnały od neuronów połączonych z nim.
Sieci neuronowe jako sposób na
optymalizacje podejmowanych decyzji
3/17
Cechy decydujące o ich popularności
• Obliczenia są w sieciach neuronowych wykonywane
równolegle. Szybkośd pracy sieci neuronowych może znacznie
przewyższad szybkośd obliczeo sekwencyjnych.
• Możliwe jest uzyskanie rozwiązania problemu z pominięciem
etapu konstruowania algorytmu rozwiązania problemu.
• Sztuczną sied należy zawsze uważad jako całośd. Poszczególne
jej elementy mają wkład w realizację wszystkich czynności,
które sied realizuje. Konsekwencją tego jest właściwośd
oprawnego działania, nawet w przypadku uszkodzeniu części
wchodzących w jej skład elementów.
• Metody uczenia i sam proces uczenia pozwalające uzyskad
celowe i skuteczne działanie nawet w sytuacji, kiedy nieznany
jest algorytm według, którego można rozwiązad postawione
zadanie.
• Topologie sieci wpływają na zbiór zastosowao sieci.
Sieci neuronowe jako sposób na
optymalizacje podejmowanych decyzji
4/17
Ogólny algorytm nauki sieci
Start
Przypisanie losowych wag
połączeniom synaptycznym
neuronów
NIE
Każdy przypadek
uczący został
uwzględniony w iteracji
Wylosowanie
przypadku
uczącego
NIE
TAK
Obliczenie łącznego błędu
wyników generowanych przez
sieci dla wszystkich przypadków
uczących
Łączny błąd <=
akceptowalna
wartość
TAK
Koniec
Obliczanie błędu
między sygnałem
wyjściowym sieci
Korekcja wag
połączeń
synaptycznych
Sieci neuronowe jako sposób na
optymalizacje podejmowanych decyzji
5/17
Modele uczenia sieci – z nauczycielem
Żądana odpowiedz
Nauczyciel
Dane wejściowe
Ucząc sied należy dysponowad dwoma
typami danych:
Sieć neuronowa
Odpowiedź sieci
+
Błąd sieci
Z
• danymi wejściowych
• sygnałami wyjściowymi jakie sied powinna generowad.
Adaptacja wag
Korygując wagi należy dążyd, aby aktualny sygnał wyjściowy był
najbliższy wartości zadanej. Celem uczenia pod nadzorem jest
minimalizacja odpowiednio zdefiniowanej funkcji celu. Funkcja ta
umożliwia adoptowanie wartości aktualnych odpowiedzi
neuronów wyjściowych do wartości żądanych.
Sieci neuronowe jako sposób na
optymalizacje podejmowanych decyzji
6/17
Modele uczenia sieci – z krytykiem
Sygnał sterujący pierwotny
Środowisko
Wektor stanu
Krytyk
Sygnał sterujący
Brak informacja o wartościach
pożądanych na wyjściu systemu. Sied
informowana jest jedynie, czy
wcześniejsza zmiana wartości wag
sprawiła, że zachowanie systemu można
uznad za pożądane. Gdy zmiany w
systemie dają wyniki pozytywne,
następuje wówczas wzmocnienie tendencji do właściwego
zachowania się systemu w podobnych sytuacjach w przyszłości.
Gdy zmiany oddaliły system od działania pożądanego, następuje
osłabienie tendencji takiego działania systemu.
Element uczący
Podjęta
akcja
Baza wiedzy
Człon
wykonawczy
Układ uczący
Sieci neuronowe jako sposób na
optymalizacje podejmowanych decyzji
7/17
Modele uczenia sieci – Bez nauczyciela
Dane wejściowe
Sieć
adaptacyjna
Odpowiedź sieci
Pożądana odpowiedz nie jest znana. Brak informacji o
poprawności lub niepoprawności odpowiedzi zmusza sied do
nauki poprzez analizę reakcji na pobudzenia. Sied nie dysponuje
informacjami o naturze pobudzeo. W trakcie analizy parametry
sieci podlegają zmianom. Proces nazywamy jest samoorganizacją.
Sieci neuronowe jako sposób na
optymalizacje podejmowanych decyzji
8/17
Topologie sieci - jednowarstwowa
x1
y1
x2
y2
.
.
.
xN
.
.
.
.
.
.
yK
Neurony ułożone są w jednej warstwie, która jest zasilana w
informacje z węzłów wejściowych. Zwykle każdy węzeł wejściowy
połączony jest z każdym neuronem z warstwy. Przepływ
sygnałów występuje w jednym kierunku, od węzłów wejściowych
w kierunku warstwy neuronów wejścia do wyjścia.
Przedstawicielem tej topologii jest sied Kohonena.
Sieci neuronowe jako sposób na
optymalizacje podejmowanych decyzji
9/17
Topologie sieci – wielowarstwowa
x1
x2
y1
x3
.
.
.
.
.
.
.
.
.
yK
Występuje tutaj co najmniej x
jedna warstwa tzw. neuronów ukrytych. Pośredniczą one w
przekazywaniu sygnałów między węzłami wejściowymi a warstwą
neuronów wyjściowych. W zastosowaniach praktycznych znane są
sieci neuronowe należące do tej architektury, w których
występują połączenia niepełne. Dotyczą one z reguły części
warstwy poprzedniej, skupionej w określonym obszarze
tworzącym pole recepcyjne danego neuronu. Neurony warstw
ukrytych to bardzo istotny element sieci. Umożliwia on bowiem,
uwzględnienie związków między sygnałami, wynikającymi z
zależności statystycznych wyższego rzędu.
Przedstawicielem tej topologii jest sied z algorytmem wstecznej
propagacji błędu
N
Sieci neuronowe jako sposób na
optymalizacje podejmowanych decyzji
10/17
Topologie sieci - rekurencyjne
Z
Z
…
Z
Występuje w nich sprzężenie zwrotne
y
między warstwami wyjściowymi
i wejściowymi. Sprzężenie zwrotne
y
.
możne wystąpid zarówno w
.
...
.
architekturze jednowarstwowej jak
y
i wielowarstwowej. Proces
stabilizowania się sygnałów wyjściowych sieci rekurencyjnych
jest procesem dynamicznym. W architekturze tej występują
jednostkowe operatory opóźnienia. Funkcja aktywacji neuronów
w tych sieciach charakteryzują się dynamiką nieliniową.
1
2
N
Sieci neuronowe jako sposób na
optymalizacje podejmowanych decyzji
11/17
Przykład zastosowania – Analizy giełdowe
• Analiza danych giełdowych 4 spółek należących do indeksu
WIG 20 na GPW
o PKO BP
o PKN ORLEN
o KGHM
o LOTOS
• Przedział czasowy
o Dane wygasłe – 01.05.2005 do 31.12.2008
o Dane badawcze – 01.01.2009 do 31.12.2009
Sieci neuronowe jako sposób na
optymalizacje podejmowanych decyzji
12/17
Przykład zastosowania – Analizy giełdowe
Maksymalna cena
akcji sesji k+1
...
Sieć
wielowarstwowa
...
...
Sieć
Kohonena
Sieć
Kohonena
Sieć
Kohonena
Sieć
Kohonena
Dane sesji
k-n
Dane sesji
k-n-1
Dane sesji
k-1
Dane sesji
k
Sieci neuronowe jako sposób na
optymalizacje podejmowanych decyzji
13/17
Przykład zastosowania – Analizy giełdowe
koniec
Sesja k = pierwsza sesja
roku 2009
start
Sesja k > ostatnia
sesja 2009 roku
Sprzedaż
posiadanych akcji
Obliczenie
parametrów badań
Obliczenie sygnały kupna
sprzedaży metodą badawczą
dla sesji k
Sesja k = Sesja k + 1
sesja
TAK
TAK
Akcje
zakupione
Sygnał zakupu
NIE
Zakupienie akcji
NIE
Akcje
sprzedane
NIE
Sprzedanie akcji
TAK
Sieci neuronowe jako sposób na
optymalizacje podejmowanych decyzji
14/17
Przykład zastosowania – Analizy giełdowe
Suma
Odchylenie
Dzienny zysk
Liczba wzrostów Liczba spadków Trafnośd decyzji
Kurtoza
Ufnośd
Minimum
-425,21%
2,76%
-1,69%
64
184
0,26
0,86
0,0034
Maksimum
597,96%
3,30%
2,37%
199
48
0,81
3,02
0,0041
Markowitz
36,41%
2,93%
0,14%
136
116
0,54
0,43
0,0036
107,28%
1,72%
0,43%
138
95
0,59
3,05
0,0021
61,60%
1,98%
0,24%
127
110
0,54
1,04
0,0024
140,44%
2,11%
0,56%
142
95
0,60
0,69
0,0026
79,76%
2,69%
0,32%
134
118
0,53
0,20
0,0033
Sied
Średnia
Bootstrap
Rzeczywisty
Sieci neuronowe jako sposób na
optymalizacje podejmowanych decyzji
15/17
Źródła informacji
• Markowska-Kaczmar U. Sieci neuronowe w zastosowaniach
Oficyna Wydawnicza EXIT, Warszawa 2003
• Osowski S., Sieci neuronowe w ujęciu algorytmicznym, WNT,
Warszawa 1996
• Plioski M, Rudkowska D, Rutkowski L. Sieci neuronowe,
algorytmy genetyczne i systemy rozmyte. Wydawnictwo
Naukowe PWN Łódz-Warszawa 1997
• http://www.kik.pcz.czest.pl
Sieci neuronowe jako sposób na
optymalizacje podejmowanych decyzji
16/17
DZIĘKUJĘ ZA UWAGĘ
Sieci neuronowe jako sposób na
optymalizacje podejmowanych decyzji
17