7b5251c5f0c74b3f932f69b836090035.ppt
- Количество слайдов: 28
Dobór danych wejściowych sieci neuronowej przy pomocy algorytmów genetycznych - analiza wyników Mgr inż. Marcin Jaruszewicz Prof. nzw. dr hab. Jacek Mańdziuk Seminarium Metody Inteligencji Obliczeniowej
Agenda n n n Kontekst predykcji Algorytm Genetyczny Brute Force Sieć Neuronowa Eksperyment – parametry Eksperyment - wyniki
Predykcja indeksu giełdowego n n Dane wejściowe dla trzech giełd i dwóch kursów walut: wartości indeksu, średnie, oscylatory, formacje Przestrzeń ponad 300 zmiennych Prognoza zmiany wartości indeksu z zamknięcia na zamknięcie następnego dnia Problemy: duże sieci neuronowe, zmienność zależności, różnorodność zmiennych
Metody doboru danych n n n Macierz autokorelacji – współczynniki określające liniowe zależności między zmiennymi Nauka sieci neuronowej – wpływ zmiennych na predykcję po procesie nauki ‘maksymalnej’ sieci neuronowej Algorytm genetyczny – populacja zestawów zmiennych wejściowych
Chromosom n Definicja chromosomu: n Zmienne wejściowe z puli dostępnych zmiennych n Liczba warstw ukrytych sieci neuronowej (ustawiona na 1) n Zmienny rozmiar chromosomu - kodowanie liczby zmiennych wejściowych od 4 do 7 (parametr) n Wymuszone zmienne n Przystosowanie - chromosomy żywe i martwe, 3 SN
Algorytm genetyczny n n n Wstępne ograniczenie liczby zmiennych za pomocą metody macierzy autokorelacji (od 10% do 20%), dodatkowo wszystkie zmienne z prognozowanej giełdy – ok. 80 zmiennych Rekordy w pojedynczym eksperymencie: 140 uczących, 5 walidacyjnych, 5 testowych (niedostępne dla AG, do testowania jego skuteczności) Dobór danych dla okienka 5 dni, 10 kolejnych przesunięć
Mutacja n n Zmianie podlega kodowanie zmiennych wejściowych Prawdopodobieństwo mutacji: 0. 05 (żywe) lub 1 (martwe) Mutacja żywych po przekroczeniu progu 90% żywych chromosomów w populacji Parametr określający liczbę zmian w jednym chromosomie w czasie jednej mutacji: 1
Mutacja cd. n n Mutacja nie dotyczy najlepszego chromosomu Mutacja nie dotyczy wymuszonych zmiennych Nowa zmienna wybierana jest losowo z dostępnej puli Prawdopodobieństwo wylosowania nowej zmiennej zależy od częstości jej występowania w populacji lub najlepszych chromosomach (1 dla najlepszych, 0. 75 dla najczęstszych, 0. 5 dla pozostałych)
Selekcja n n Funkcja przystosowania na podstawie błędu po nauce sieci neuronowej kodowanej przez chromosom Wybór metodą rankingową n Losowanie par chromosomów n Wybór rodziców ze zwycięzców z dwóch sąsiednich par n Dzieci zastępują przegranych n Stały rozmiar populacji
Krzyżowanie n n Prawdopodobieństwo krzyżowania: 1 Prawdopodobieństwo wylosowania nowej zmiennej zależy od częstości jej występowania w populacji lub najlepszych chromosomach (1 dla najlepszych, 0. 75 dla najczęstszych, 0. 5 dla pozostałych) Dzieci zastępują rodziców tylko jeśli mają lepsze przystosowanie Krzyżowanie na podstawie części wspólnej rodziców
Zakończenie AG n n n Wynikiem jest najlepszy chromosom Najlepszy chromosom musi być żywy dla każdej równoległej sieci neuronowej Warunek stop według n n n iteracji bez znalezienia kolejnego najlepszego chromosomu braku różnorodności populacji po względem przystosowania Maksymalnej liczby iteracji
Brute Force n n Iteracyjna wymiana kolejnych kodowanych zmiennych Iteracyjne powtarzanie procesu
Nauka sieci neuronowych n n n Metoda back-propagation z momentem Zatrzymanie nauki na podstawie rekordów walidacyjnych Małe sieci neuronowe – jedna warstwa ukryta, rozmiar pierwszej warstwy 4 -7
Parametry eksperymentu n n n n Okienko kroku = 150 Krok, liczba testowych i walidacyjnych 5 Stop po iteracjach bez najlepszego = 200 Rozmiar populacji = 400 Liczba iteracji AG = 200 Start liczenia preferencji od 10 iteracji Dodatkowe przeszukanie przestrzeni powtórzone zgodnie z liczbą kodowanych przez najlepszy chromosom zmiennych
Wyniki n n n Parametry działania algorytmu genetycznego Parametry populacji Wyniki prognozy
Przystosowanie
Średni rozmiar chromosomu
Liczba żywych chromosomów
Krzyżowania
Mutacje
Przystosowanie populacji
Pokolenia chromosomów
Predykcja vs wartość
Błąd vs zmienność
Wyniki n n n n n krok 1 średni błąd 0, 00820; średnia zmienność 0, 00828; źródło: GA [target dax [t]; close change (%); krok 1, 3, 4, 6, 7, 8, 9, 10] [target dax [t]; value o; podobne krok 2, podobne krok 9] [eur/usd [t]; impet 20; x] [target dax [t-5]; roc 5; podobne krok 2] [eur/usd [t]; value l; x] [eur/usd [t]; close change (%); x] krok 2 średni błąd 0, 00574, średnia zmienność 0, 00483; źródło: BF [eur/usd [t]; so; x] [target dax [t-5]; close change (%); x] [djia [t]; rsi 5; krok 9] [target dax [t]; so; krok 5, podobne krok 6, krok 10] [target dax [t-1]; roc 5; podobne krok 1, podobne krok 7] [djia [t]; close change (%); krok 4, krok 8, krok 9] [target dax [t]; value h; podobne krok 1, podobne krok 9]
Wyniki cd. n n n n krok 3 średni błąd 0, 00532, średnia zmienność 0, 00541; źródło: GA [target dax [t]; close change (%); krok 1, 3, 4, 6, 7, 8, 9, 10] [target dax [t]; impet 5; krok 5, podobne krok 10] [djia [t]; 5 days change (%); krok 4] [target dax [t-1]; close change (%); x] [target dax [t]; 2 avg's buy/sell signal; krok 7] [usd/jpy [t]; 20 days change (%); x] krok 4 średni błąd 0, 00501, średnia zmienność 0, 00555; źródło: GA [target dax [t]; close change (%); krok 1, 3, 4, 6, 7, 8, 9, 10] [target dax [t-1]; 20 days change (%); krok 5, podobne krok 10] [djia [t]; close change (%); krok 2, krok 8, krok 9] [usd/jpy [t]; williams; x] [djia [t]; 5 days change (%); krok 3] [target dax [t]; change o(%); x]
Wybierane zmienne n n n Zmienne z KOSPI występują dwa razy w dwóch krokach. Oscylator stochastyczny lub FSO: dla DAX - kroki: 2, 5, 6, 8, 10 Zmiana wartości zamknięcia (%) dla DJIA - kroki: 2, 4, 8, 9
Dziękuję za uwagę Uwagi i pytania…
7b5251c5f0c74b3f932f69b836090035.ppt