Praca dyplomowa - magisterska
|
|
- Sabina Sadowska
- 8 lat temu
- Przeglądów:
Transkrypt
1 Wydział Podstawowych Problemów Techniki kierunek studiów: Matematyka specjalność: Matematyka finansowa i ubezpieczeniowa Praca dyplomowa - magisterska SZTUCZNA INTELIGENCJA KONTRA MODELE STATYSTYCZNE CZY SIECI NEURONOWE POTRAFIĄ LEPIEJ PROGNOZOWAĆ CENY ENERGII? Andrzej Motyka Promotor: dr inŝ. Rafał Weron imię i nazwisko ocena podpis Wrocław 2008
2 Sztuczna inteligencja kontra modele statystyczne 2 Spis treści Wstęp... 3 Rozdział 1. Sztuczne sieci neuronowe Biologiczne sieci neuronowe Budowa sztucznego neuronu Funkcje aktywacji Architektury sieci neuronowych Metody uczenia sieci neuronowych Algorytm propagacji wstecznej... 9 Rozdział 2. Dane Zbiór Kalifornia Zbiór Nord Pool Zbiór Nord Pool Rozdział 3. Modele Modele sieci neuronowych Modele statystyczne Miary wykorzystane do porównania modeli Rozdział 4. Optymalizacja modeli sieci neuronowych Zbiór Kalifornia Zbiór Nord Pool Zbiór Nord Pool Rozdział 5. Porównanie sieci neuronowych i modeli statystycznych Zbiór Kalifornia Porównanie modeli bez prognozy zapotrzebowania Porównanie modeli uwzględniających prognozę zapotrzebowania Porównanie wszystkich modeli Zbiór Nord Pool Zbiór Nord Pool Rozdział 6. Podsumowanie Dodatek A. Aplikacja Electricity Price Predictor A.1. Wymagania systemowe aplikacji A.2. Opis aplikacji A.3. Przygotowanie plików z danymi Bibliografia... 46
3 Sztuczna inteligencja kontra modele statystyczne 3 Wstęp W ostatnich dekadach w wielu krajach miał miejsce proces restrukturyzacji rynku energii elektrycznej. Polegał on na zastępowaniu tradycyjnych procedur sterowania rynkiem energii przez zasady wolnego rynku. Głównym celem tej transformacji było zmniejszenie cen energii poprzez wprowadzenie konkurencji [3]. Zmiany te postawiły nowe wyzwania dla uczestników rynku energii. Ceny energii charakteryzują się duŝą zmiennością, co sprawia, Ŝe uczestnicy rynku muszą zabezpieczać się przed ryzykiem związanym z duŝymi ich ruchami. W związku z tym prognozowanie cen energii stało się dla uczestników rynku energii kluczową czynnością w podejmowaniu decyzji oraz w planowaniu. Ze względu na horyzont czasowy wyróŝnia się trzy rodzaje prognozowania[16]: - krótkoterminowe (ang. short-term price forecasting - STPF); - średnioterminowe (ang. medium-term price forecasting - MTPF); - długoterminowe (ang. long-term price forecasting - LTPF). Prognozowanie długoterminowe (LTPF) jest stosowane przede wszystkim w planowaniu i analizie opłacalności inwestycji. Prognozy tego typu mogą być przydatne np. do określenia nowych lokalizacji elektrowni lub źródeł surowców wykorzystywanych do produkcji energii. Horyzont czasowy tych prognoz obejmuje z reguły kilka lat. Prognozowanie średnioterminowe (MTPF) jest wykorzystywane m.in. do zarządzania ryzykiem związanym ze zmiennością cen energii oraz do wyceny instrumentów pochodnych. Horyzont czasowy prognoz średnioterminowych mierzony jest najczęściej w miesiącach. WaŜną rolę na rynku energii odgrywają równieŝ prognozy krótkoterminowe (STPF). Ich horyzont czasowy obejmuje okresy od kilku godzin do kilku dni. Prognozy te są wykorzystywane przez elektrownie do planowania produkcji. Z kolei dla konsumentów na rynku energii przydają się one do określenia strategii kupna energii[18]. Rozwinięto wiele metod słuŝących do prognozowania cen energii elektrycznej. RóŜne podejścia moŝna podzielić na następujące grupy[18]: modele oparte na kosztach[12], metody równowagowe (zwane teŝ metodami opartymi na teorii gier) [5][10][20][21], metody fundamentalne (zwane teŝ strukturalnymi) [2][17], metody ilościowe (zwane teŝ stochastycznymi lub ekonometrycznymi) [4][8], metody statystyczne [6][7][19] oraz metody sztucznej inteligencji [1][11][15][16][22]. W niniejszej pracy skupiono się na krótkoterminowym prognozowaniu cen energii za pomocą sieci neuronowych najpopularniejszej metody sztucznej inteligencji. Celem pracy jest porównanie dokładności prognoz uzyskanych za pomocą sztucznych sieci neuronowych z prognozami otrzymanymi przy uŝyciu modeli statystycznych. Zakres pracy objął empiryczną analizę rynków energii, implementację róŝnych modeli sieci neuronowych, ich kalibrację na historycznych danych dotyczących cen energii oraz krótkoterminowe prognozowanie cen. Finalnym punktem pracy jest porównanie otrzymanych prognoz z prognozami uzyskanymi za pomocą modeli statystycznych. W przypadku modeli statystycznych wykorzystano wyniki opublikowane w literaturze. W ramach pracy została napisana aplikacja Electricity Price Predictor, za pomocą której badano modele sieci neuronowych. Aplikacja pozwala na kalibrację sieci neuronowych, prognozowanie cen energii oraz obliczanie błędów predykcji. Dokładny opis aplikacji został zamieszczony w Dodatku A. Praca składa się z dwóch zasadniczych części: teoretycznej i praktycznej. Część teoretyczna obejmuje rozdział 1., natomiast część praktyczna rozdziały W rozdziale 1. przedstawiono podstawy teoretyczne sieci neuronowych. Rozdział drugi zawiera opis danych, które wykorzystano w eksperymentach. W trzecim rozdziale przedstawiono specyfikacje modeli sieci neuronowych i modeli statystycznych, które wykorzystano w pracy. Rozdział ten prezentuje równieŝ miary, które zastosowano do porównania prognoz otrzymanych za pomocą róŝnych modeli. W rozdziale 4. zaprezentowano wyniki optymalizacji modeli sieci neuro-
4 Sztuczna inteligencja kontra modele statystyczne 4 nowych ze względu na liczbę i rodzaj wejść oraz ze względu na liczbę neuronów w warstwie ukrytej sieci neuronowych. Rozdział 5. zawiera natomiast porównanie prognoz otrzymanych za pomocą zoptymalizowanych modeli sieci neuronowych oraz modeli statystycznych. Ostatnim rozdziałem tej pracy jest rozdział 6., w którym zawarte zostały ogólne podsumowania i wnioski wynikające z przeprowadzonych badań.
5 Sztuczna inteligencja kontra modele statystyczne 5 Rozdział 1. Sztuczne sieci neuronowe Rozdział ten jest poświęcony sieciom neuronowym popularnym narzędziom sztucznej inteligencji, które wykorzystano w niniejszej pracy. Przedstawiono w nim matematyczne podstawy sieci neuronowych, ich architektury oraz metody ich trenowania Biologiczne sieci neuronowe Sztuczne sieci neuronowe są wzorowane na biologicznych strukturach nerwowych. Biologiczna sieć neuronowa jest zbudowana z wielu połączonych komórek nerwowych zwanych neuronami (Rys. 1.1.). Neurony komunikują się między sobą przesyłając sygnały elektryczne. Podstawowe elementy składowe neuronu to: dendryty (ang. dendrites) odbierają sygnały od innych neuronów lub receptorów (receptory przekształcają bodźce pochodzenia zewnętrznego na sygnały elektryczne); ciało komórki (ang. cell body) agreguje sygnały wejściowe i wytwarza odpowiedni sygnał wyjściowy; akson (ang. axon) przekazuje sygnał wyjściowy do innych komórek nerwowych. Połączenie między aksonem jednej komórki a dendrytem innej nosi nazwę synapsy. Siła sygnału elektrycznego przechodzącego przez synapsę ulega zmianie zaleŝnie od właściwości tego połączenia. Rys Budowa biologicznego neuronu (źródło: Budowa sztucznego neuronu Rysunek 1.2. przedstawia schemat budowy sztucznego neuronu. Wagi są liczbami rzeczywistymi z zakresu [-1;1] odpowiadającymi połączeniom synaptycznym. Blok sumujący oraz blok aktywacji pełnią natomiast rolę ciała komórki nerwowej. Działanie sztucznego neuronu moŝna opisać w następujących punktach. 1) Do neuronu docierają sygnały wejściowe pochodzące z zewnątrz lub z wyjść innych neuronów 2) Sygnały są przemnaŝane przez odpowiednie wartości wag, co odpowiada przejściu sygnału elektrycznego przez synapsę w biologicznym neuronie.
6 Sztuczna inteligencja kontra modele statystyczne 6 3) WaŜone wartości sygnałów wejściowych są sumowane w bloku sumującym. Od otrzymanej sumy odejmowana jest wartość progowa charakterystyczna dla danego neuronu. Wartość ta odpowiada minimalnemu pobudzeniu, jakiemu musi zostać poddany neuron, aby został on uaktywniony. Po odjęciu wartości progowej otrzymuje się tzw. wartość pobudzenia neuronu. 4) W bloku aktywacji obliczana jest wartość funkcji aktywacji od wartości pobudzenia neuronu. Otrzymana w ten sposób liczba stanowi wartość wyjściową neuronu. Rys Budowa sztucznego neuronu Matematycznie działanie sztucznego neuronu moŝna opisać następującym wzorem: N y = f w x j j θ, (1.1) j= 1 gdzie: N liczba wejść do neuronu, x j wartość j-tego sygnału wejściowego (j = 1, 2,..., N), w j j-ta waga neuronu (j = 1, 2,..., N), θ wartość progowa pobudzenia neuronu, f(x) funkcja aktywacji neuronu, y wartość wyjściowa. Sieć neuronowa jest zbiorem połączonych neuronów. Zadaniem większości sieci neuronowych jest aproksymacja pewnego odwzorowania danych wejściowych na wyjściowe. Aby sieć realizowała właściwe odwzorowanie, naleŝy dobrać odpowiednie wartości jej wag. Proces ustalania wartości wag nosi nazwę uczenia (trenowania) sieci Funkcje aktywacji Funkcja aktywacji neuronu moŝe przyjmować róŝne formy w zaleŝności od zadania, jakie ma on wykonywać. Najpopularniejszymi funkcjami są funkcje skokowe oraz sigmoidalne. Funkcja skokowa moŝe być typu unipolarnego lub bipolarnego. Funkcja unipolarna przyjmuje wartości 0 i 1, natomiast bipolarna wartości -1 i 1. Stosuje się je w sieciach, w których na wyjściach neuronów sygnały mają przyjmować dwie wartości dyskretne. Skokowe funkcje aktywacji utrudniają jednak uczenie sieci ze względu na to, Ŝe nie są one róŝniczkowalne w punktach skoku. RóŜniczkowalność funkcji aktywacji jest wymagana np. w algorytmach gradientowych, które są obecnie najefektywniejszą metodą uczenia sieci neuronowych. Do algorytmów gradientowych zalicza się m.in. propagację wsteczną, która zostanie omówiona w dalszej części tego podrozdziału. Problem braku róŝniczkowalności
7 Sztuczna inteligencja kontra modele statystyczne 7 rozwiązuje się poprzez aproksymację funkcji skokowych tzw. funkcjami sigmoidalnymi, które są róŝniczkowane na całym zbiorze liczb rzeczywistych. Funkcja sigmoidalna unipolarna przyjmuje dowolne wartości z przedziału (0,1), natomiast bipolarna przyjmuje dowolne wartości z przedziału (-1,1). Funkcję sigmoidalną unipolarną definiuje się najczęściej następująco: 1 f ( x) = u 1 + exp( β x), (1.2) a bipolarną tak: f b ( x) = tgh( βx), (1.3) lub tak: f b ( x) = 2 f u ( x) 1. (1.4) Wzory te zaczerpnięto z publikacji [13] Architektury sieci neuronowych Architektura sieci neuronowej określa sposób połączenia neuronów wchodzących w jej skład oraz sposób przekazywania sygnałów pomiędzy neuronami. Architektura sieci jest ściśle powiązana ze sposobem jej uczenia. PoniŜej przedstawiono podstawowe architektury sieci neuronowych: jednokierunkową sieć jednowarstwową oraz jednokierunkową sieć wielowarstwową. Sieć jednokierunkowa jednowarstwowa Jednowarstwowa jednokierunkowa sieć zbudowana jest z jednej warstwy neuronów zwanej warstwą wyjściową oraz poprzedzającej ją warstwy wejściowej składającej się z wejść do tej sieci (Rys. 1.3.). Pomiędzy warstwą wejściową a wyjściową występuje najczęściej pełne połączenie, tzn. kaŝdy węzeł wejściowy jest połączony z kaŝdym neuronem wyjściowym. Przepływ sygnałów następuje w jednym kierunku. Sygnały wejściowe podawane są z warstwy wejściowej do neuronów warstwy wyjściowej. Neurony warstwy wyjściowej wytwarzają następnie sygnały wyjściowe [13]. Rys Sieć neuronowa jednokierunkowa jednowarstwowa (źródło: [23])
8 Sztuczna inteligencja kontra modele statystyczne 8 Sieć jednokierunkowa wielowarstwowa Sieć jednokierunkowa wielowarstwowa złoŝona jest z wielu warstw. Pierwsza z nich to warstwa wejściowa składająca się z wejść do sieci, a ostatnia to warstwa wyjściowa zbudowana z neuronów. Pomiędzy nimi występuje co najmniej jedna warstwa neuronów pośrednicząca w przekazywaniu sygnałów wejściowych między węzłami wejściowymi a warstwą wyjściową. Warstwę tą nazywa się warstwą ukrytą. Rysunek 1.4. przedstawia przykładową sieć dwuwarstwową (z jedną warstwą ukrytą). Połączenia pomiędzy kolejnymi warstwami mogą być pełne (kaŝde wyjście warstwy poprzedzającej jest połączone ze wszystkimi neuronami warstwy kolejnej) lub częściowe (brak niektórych połączeń występujących w połączeniu pełnym). Przepływ sygnałów następuje w jednym kierunku: od warstwy wejściowej, poprzez kolejne warstwy ukryte neuronów i warstwę wyjściową [13]. Przy stosowaniu tego typu sieci neuronowych pojawia się problem wyboru właściwej liczby warstw ukrytych oraz liczb neuronów w poszczególnych warstwach. Z twierdzenia Kołmogorowa dotyczącego ogólnej teorii aproksymacji wynika, Ŝe dowolną funkcję ciągłą przekształcającą N-wymiarowy wektor wejściowy w M-wymiarowy wektor wyjściowy moŝna aproksymować siecią dwuwarstwową przy uŝyciu co najwyŝej (2N+1) neuronów w warstwie ukrytej [13]. Twierdzenie to ma swoje odzwierciedlenie w praktyce, poniewaŝ okazuje się, Ŝe do większości problemów sieci o jednej warstwie ukrytej dają najlepsze rezultaty. Rys Sieć neuronowa jednokierunkowa dwuwarstwowa (źródło: [23]) 1.5. Metody uczenia sieci neuronowych Uczenie sieci neuronowej ma na celu takie ustalenie wartości wag poszczególnych jej neuronów, aby przekształcała ona odpowiednio dane wejściowe w wyjściowe. Uczenie polega na wielokrotnym powtarzaniu cyklu, w którym wagi sieci są modyfikowane. Kolejne modyfikacje wag mają przyczyniać się do lepszego dostosowania sieci do zadania, które ma ona wykonywać. WyróŜnia się trzy podstawowe podejścia do uczenia sieci neuronowych: uczenie nadzorowane (ang. supervised learning), uczenie z krytykiem lub wzmocnieniem (ang. reinforcement learning) oraz uczenie nienadzorowane (ang. unsupervised learning)[14]. W przypadku uczenia nadzorowanego dane uczące są parami składającymi się z wektorów wejściowych oraz odpowiadających im wektorów wyjściowych. Uczenie polega na takim modyfikowaniu wartości wag sieci, aby potrafiła ona odwzorowywać wektory wej-
9 Sztuczna inteligencja kontra modele statystyczne 9 ściowe w wyjściowe z zadaną dokładnością. Najczęściej modyfikację wag przeprowadza się w taki sposób, aby minimalizować określoną funkcję oceny. W uczeniu z krytykiem w kaŝdym cyklu uczenia odpowiedź sieci na dany wektor wejściowy ocenia się jako pozytywną lub negatywną. JeŜeli sieć odpowiada pozytywnie, to modyfikuje się wagi w ten sposób, aby wzmocnić działanie sieci w tym kierunku. JeŜeli natomiast sieć daje odpowiedź negatywną, to modyfikacja wag ma na celu zmniejszenie działania sieci w danym kierunku. Uczenie nienadzorowane charakteryzuje się natomiast tym, Ŝe dla podawanych wektorów wejściowych nie Ŝąda się odpowiednich wartości zwracanych przez sieć, ani nie ocenia się, czy odpowiedzi sieci są pozytywne, czy negatywne. Podaje się jedynie wartości wejściowe, a sieć sama, zaleŝnie od specyfiki metody uczenia, znajduje pewne zaleŝności w otrzymywanych danych Algorytm propagacji wstecznej Najpopularniejszym algorytmem uczenia sieci neuronowych jest algorytm propagacji wstecznej. Zalicza się go do algorytmów uczenia nadzorowanego. Jest on przeznaczony do trenowania sieci jednokierunkowych wielowarstwowych zwanych teŝ perceptronami wielowarstwowymi. Propagacja wsteczna polega na iteracyjnym przetwarzaniu poszczególnych wzorców pochodzących ze zbioru uczącego z jednoczesnym porównywaniem odpowiedzi sieci na kolejne dane wejściowe z Ŝądanymi wartościami wyjściowymi. Dla kaŝdego wzorca uczącego wagi sieci są modyfikowane tak, aby minimalizować błąd pomiędzy odpowiedziami sieci a wartościami Ŝądanymi. Ze względu na konieczność obliczania pochodnych funkcji aktywacji w algorytmie tym przyjmuje się, Ŝe funkcje te są typu sigmoidalnego (patrz wzory: (1.2), (1.3) i (1.4)). Błąd między wartościami Ŝądanymi a otrzymywanymi na wyjściu sieci dla wszystkich wzorców uczących mierzy się za pomocą tzw. funkcji celu. Niech {(x p,y p )} p=1,2,...,p będzie zbiorem wzorców uczących, gdzie x p jest p-tym wektorem wejściowym, a y p odpowiadającym mu wektorem wyjściowym. Niech x p =[x p1, x p2,..., x pn ] oraz y p =[y p1, y p2,..., y pm ]. Ponadto o o o o niech o = o,o,...,o ] będzie odpowiedzią sieci na p-ty wzorzec wejściowy. Funkcję p [ p 1 p2 pm celu definiuje się najczęściej w postaci: P 1 E = 2 M p= 1 k = 1 o ( y pk o pk ) 2. (1.5) PoniŜej przedstawiony został algorytm propagacji wstecznej dla dwuwarstwowego perceptronu. Algorytm opracowano na podstawie pozycji [9]. W opisie algorytmu wykorzystuje się następujące oznaczenia: N - liczba wejść sieci, L - liczba neuronów warstwy ukrytej, M - liczba neuronów warstwy wyjściowej, P - liczba wzorców uczących, x - p-ty wektor wejściowy, x p =[x p1, x p2,..., x pn ], p h wji - i-ta waga j-tego neuronu warstwy ukrytej, h θ j - wartość progowa pobudzenia j-tego neuronu warstwy ukrytej, h f j - funkcja aktywacji j-tego neuronu warstwy ukrytej,
10 Sztuczna inteligencja kontra modele statystyczne 10 h' f j - pochodna funkcji aktywacji j-tego neuronu warstwy ukrytej, o w kj - j-ta waga k-tego neuronu warstwy wyjściowej, o θ k - wartość progowa pobudzenia k-tego neuronu warstwy wyjściowej, f - funkcja aktywacji k-tego neuronu warstwy wyjściowej, o k o' f k - pochodna funkcji aktywacji k-tego neuronu warstwy wyjściowej, η - współczynnik uczenia (liczba rzeczywista z przedziału (-1;1)). Inne oznaczenia zostały wyjaśnione w opisie algorytmu. Algorytm 1) Zainicjować wagi i wartości progowe dla wszystkich neuronów sieci oraz ustalić ε - dopuszczalny błąd na wyjściu sieci (ustalenie początkowych wartości wag i wartości progowych polega najczęściej na wylosowaniu ich wartości). 2) Podać na wejście sieci kolejny p-ty wektor wejściowy x p. 3) Dla kaŝdego neuronu w warstwie ukrytej obliczyć wartość pobudzenia: i h j = N i= 1 w h ji x pi h + θ. (1.6) 4) Dla kaŝdego neuronu w warstwie ukrytej obliczyć wartość sygnału wyjściowego: h h o = f i ). (1.7) j 5) Dla kaŝdego neuronu w warstwie wyjściowej obliczyć wartość pobudzenia: i o k = L j= 1 w j o kj o ( h j h j j o + θ. (1.8) 6) Dla kaŝdego neuronu w warstwie wyjściowej obliczyć wartość sygnału wyjściowego: o o o ( o k = f k ik ). (1.9) 7) Dla kaŝdego neuronu w warstwie wyjściowej obliczyć błąd wartości pobudzenia: o o o' o δ k = ( y k ok ) f k ( ik ). (1.10) 8) Dla kaŝdego neuronu w warstwie ukrytej obliczyć błąd wartości pobudzenia: M h o o h' h δ j = δ k wkj f j ( i j ). (1.11) k= 1 9) Uaktualnić wagi w warstwie wyjściowej: o o o h w ( t + 1) = w ( t) + ηδ o. (1.12) kj kj 10) Uaktualnić wagi w warstwie ukrytej: h h h w ( t + 1) = w ( t) + ηδ x. (1.13) ji ji 11) Obliczyć błąd odpowiedzi sieci dla p-tego wzorca: M 1 o 2 E p = ( y pk ok ). (1.14) 2 k = 1 12) JeŜeli wyczerpał się zbiór wzorców uczących, przejść do kroku 13. W przeciwnym wypadku przejść do kroku 2. 13) Obliczyć sumaryczny błąd odpowiedzi sieci dla wszystkich wzorców uczących: P E = E p. (1.15) p k k j j pi
11 Sztuczna inteligencja kontra modele statystyczne 11 14) JeŜeli E ε, to zakończyć uczenie. W przeciwnym wypadku powtórzyć cały cykl pomijając punkt 1. algorytmu. W kaŝdym kolejnym cyklu wzorce uczące podaje się w innej kolejności. Zapobiega to uwraŝliwieniu sieci neuronowej na kolejność wzorców. Właściwą wartość współczynnika uczenia η dobiera się eksperymentalnie. Zbyt duŝe jego wartości powodują, Ŝe sieć nie jest w stanie dokładnie aproksymować odwzorowania. Natomiast wartości zbyt małe znacznie wydłuŝają proces trenowania sieci. Eksperymentalnie ustala się równieŝ dopuszczalny błąd na wyjściu sieci ε. Zbyt duŝa jego wartość sprawia bowiem, Ŝe sieć niedokładnie aproksymuje odwzorowanie. Wartość zbyt mała moŝe spowodować zbytnie dopasowanie sieci do danych treningowych lub moŝe sprawić, Ŝe warunek stopu (patrz punkt 14. algorytmu) nigdy nie zostanie spełniony.
12 Sztuczna inteligencja kontra modele statystyczne 12 Rozdział 2. Dane Do eksperymentów wykorzystano dane pochodzące z dwóch rynków energii: rynku kalifornijskiego oraz rynku Nord Pool. Identycznych danych uŝyto w artykule [19], w którym opublikowano wyniki prognoz dla modeli statystycznych. Do eksperymentów wybrano te same zbiory danych, aby móc porównać sieci neuronowe i wykorzystane w publikacji [19] modele statystyczne w kontekście prognozowania cen energii. Dane dotyczące rynku kalifornijskiego obejmują ceny energii oraz wielkości zapotrzebowania na energię z lat Ceny na tym rynku są zróŝnicowane: występują zarówno ustabilizowane okresy cen, jak i okresy, w których pojawiają się ekstremalne piki. Dane z rynku Nord Pool cechuje natomiast zdecydowanie mniejsza zmienność. Energia na tym rynku pochodzi głównie z elektrowni wodnych, co sprawia, Ŝe ceny są zaleŝne nie tylko od zapotrzebowania na energię, ale równieŝ od wielkości rezerw wody. W przypadku rynku Nord Pool wykorzystano dane z dwóch okresów: pierwszy obejmuje lata , a drugi - lata W okresie pierwszym występowały duŝe rezerwy wody, natomiast w drugim małe[19] Zbiór Kalifornia Zbiór ten zawiera godzinne ceny MCP (ang. Market Clearing Prices) z giełdy energii California Power Exchange, godzinne wartości zapotrzebowania na energię na rynku kalifornijskim oraz prognozy zapotrzebowania wybiegające jeden dzień w przyszłość. Wartości tych prognoz są publikowane przez instytucję California Independent System Operator (CAISO). Ceny energii moŝna pobrać ze strony internetowej instytutu UCEI ( natomiast prognozy zapotrzebowania - ze strony internetowej CAISO (oasis.caiso.com.pl). Rysunek 2.1. przedstawia wykresy cen energii oraz zapotrzebowania. Wykres prognozy zapotrzebowania nie został przedstawiony, poniewaŝ przy tej rozdzielczości rysunku nie byłoby widać róŝnicy między nim a wykresem rzeczywistego zapotrzebowania. Dane zostały podzielone na dwa zakresy: I i II. Zakres I obejmuje dni r r., natomiast zakres II dni r r. Dane z zakresu I wykorzystano wyłącznie do kalibracji sieci neuronowych. Dane z zakresu II zastosowano zarówno do kalibracji, jak i do testowania modeli. Dla kaŝdego dnia z drugiego okresu prognozowano godzinne ceny energii dla dnia następnego. Prognozowanie wykonywano w następujący sposób: jeŝeli prognozowano ceny dla dnia T + 1 (gdzie T + 1 jest pewnym dniem z okresu drugiego), to do kalibracji modeli wykorzystano dane od początku okresu pierwszego aŝ do dnia T. Jeśli więc T + 1 nie był pierwszym dniem okresu drugiego, to do kalibracji uŝyto równieŝ dane z okresu drugiego.
13 Sztuczna inteligencja kontra modele statystyczne 13 Rys Wykresy cen energii oraz zapotrzebowania dla zbioru Kalifornia (zbiór obejmuje ceny z dni r r.; źródło: [19])
14 Sztuczna inteligencja kontra modele statystyczne Zbiór Nord Pool Zbiór ten zawiera godzinne ceny MCP z nordyckiej giełdy energii Nord Pool. Dane dotyczące zapotrzebowania na energię nie były dostępne. Rysunek 2.2. przedstawia wykres cen wykorzystanych w badaniach. Wykorzystano ceny z okresu r r. W okresie tym wybrano cztery okresy testowe przeznaczone do oceny prognoz uzyskiwanych za pomocą sieci neuronowych (Tab. 2.1.). O takim wyborze okresów testowych zadecydowała chęć sprawdzenia prognoz cen w róŝnych porach roku. W róŝnych porach roku ceny bowiem wykazują odmienne zachowanie. Rys Wykresy cen energii dla zbioru Nord Pool (źródło: [19]) Oznaczenie okresu Okres II r r. V r r. VIII r r. XI r r. Tab Okresy testowe dla zbioru danych Nord Pool Schemat kalibracji i testowania modeli był analogiczny jak w przypadku zbioru Kalifornia Ceny prognozowano dla dni zawartych w okresach testowych (Tab. 2.1.) Do kalibracji kaŝdego modelu wykorzystano ceny od dnia r. aŝ do dnia poprzedzającego dzień, dla którego prognozowano ceny.
15 Sztuczna inteligencja kontra modele statystyczne Zbiór Nord Pool W eksperymentach wykorzystano równieŝ zbiór danych zawierający ceny pochodzące z rynku nordyckiego z lat Rysunek 2.3. przedstawia wykres cen z tego zbioru. Wykorzystano ceny z okresu r r. Podobnie jak w przypadku zbioru Nord Pool wybrano cztery okresy testowe przeznaczone do oceny modeli. Zostały one przedstawione w tabeli 2.2. Zastosowano równieŝ ten sam schemat kalibracji i testowania modeli. Rys Wykresy cen energii dla zbioru Nord Pool (źródło: [19]) Oznaczenie okresu Okres II r r. V r r. VIII r r. XI r r. Tab Okresy testowe dla zbioru danych Nord Pool
16 Sztuczna inteligencja kontra modele statystyczne 16 Rozdział 3. Modele Rozdział ten zawiera specyfikacje modeli sieci neuronowych, które wykorzystano do prognozowania cen energii. Ponadto opisano w nim modele statystyczne, z którymi porównano sieci neuronowe w dalszej części pracy. Ostatni podrozdział zawiera opis miar, które wykorzystano do porównania prognoz otrzymywanych za pomocą róŝnych modeli Modele sieci neuronowych W eksperymentach wykorzystano sieci neuronowe jednokierunkowe: jednowarstwowe oraz dwuwarstwowe zwane popularnie perceptronami jedno- i dwuwarstwowymi (patrz Rozdział 1.). Do ich trenowania zastosowano algorytm propagacji wstecznej. Badano sieci z dwoma funkcjami aktywacji opisanymi wzorami (1.2) i (1.3). Sieci wykorzystujące funkcje aktywacji postaci (1.3) dawały zdecydowanie lepsze rezultaty i z tego powodu w dalszej części pracy tylko takie sieci rozwaŝono. Wspólną cechą architektury wszystkich badanych sieci neuronowych jest to, Ŝe wszystkie one miały jeden neuron w warstwie wyjściowej. Na wyjściu tego neuronu otrzymywano prognozę ceny energii na określoną godzinę. Badano natomiast modele z róŝną liczą wejść i róŝnym rodzajem danych podawanych na wejścia. Na wejścia sieci podawano następujące rodzaje danych: historyczne ceny energii, historyczne wartości zapotrzebowania oraz prognozy zapotrzebowania (dane te były dostępne tylko dla rynku kalifornijskiego), dzień tygodnia, godzinę, minimalną cenę energii spośród cen z dnia poprzedzającego dzień, dla którego wykonywano prognozę. Za względu na sposób prognozowania wszystkie badane modele moŝna podzielić na dwie grupy. Modele z pierwszej grupy cechuje to, Ŝe były one kalibrowane oddzielnie dla kaŝdej godziny tzn. za pomocą raz skalibrowanego modelu naleŝącego do tej grupy prognozowano cenę tylko dla jednej godziny. śeby więc uzyskać prognozę na wszystkie 24 godziny określonego dnia, trzeba było wykonać 24 razy kalibrację modelu. Modele naleŝące do tej grupy posiadają w nazwach liczbę 1. Modele naleŝące do grupy drugiej były kalibrowane raz dla 24 godziny. Przy uŝyciu raz skalibrowanego modelu z grupy drugiej prognozowano wszystkie 24 ceny dla określonego dnia. JeŜeli do wykonania prognozy ceny na określoną godzinę określonego dnia model wymagał ceny z godziny wcześniejszej tego dnia, na wejście modelu podawano wówczas prognozę ceny wykonaną wcześniej za pomocą tego samego modelu. W nazwach modeli z grupy drugiej występuje liczba 24. Modele moŝna równieŝ podzielić ze względu na to, czy na ich wejścia podawano wartości prognozy zapotrzebowania. Modele uwzględniające tę prognozę posiadają w nazwie literę X, natomiast pozostałe modele tej litery w nazwach nie posiadają.
17 Sztuczna inteligencja kontra modele statystyczne 17 Tabele 3.1. i 3.2. przedstawiają wejścia dla modeli, które uwzględniono w dalszej części niniejszej pracy. Do opisu wejść wykorzystano następujące oznaczenia: - logarytm z ceny energii dla godziny t, - logarytm z prognozy zapotrzebowania dla godziny t, - zmienna przyjmująca wartość 1, jeŝeli model prognozuje cenę energii dla dnia d, albo wartość 0, jeŝeli model prognozuje cenę dla dnia innego niŝ d, - zmienna przyjmująca wartość 1, jeŝeli model prognozuje cenę dla godziny h, albo wartość 0, jeŝeli model prognozuje cenę dla godziny innej niŝ h, - minimalna cena energii spośród cen z dnia poprzedzającego dzień, dla którego model prognozuje cenę. Na wejścia sieci neuronowych podawano zlogarytmowane wartości cen, poniewaŝ znacznie polepszało to dokładność prognoz (transformacja logarytmiczna zredukowała wariancję cen). Wartości prognozy zapotrzebowania równieŝ poddano transformacji logarytmicznej, poniewaŝ pomiędzy cenami i prognozami istniała w przybliŝeniu liniowa zaleŝność [19]. Modele MLP1TS, MLP1TSX, MLP24TS oraz MLP24TSX mają takie same wejścia jak modele szeregów czasowych, z którymi porównano sieci neuronowe. Od tych modeli rozpoczęto badania. Poprzez modyfikacje ich wejść znaleziono modele, które dają lepsze prognozy. Nowe modele oznaczono skrótami: MLP1, MLP1X, MLP24 i MLP24X. Model Wejścia MLP1TS MLP1TSX MLP1 MLP1X,,,,,,,,,,,,,,,,,, Ś,,,,,,,,, Ś,,,,, Tab 3.1. Modele sieci neuronowych kalibrowane oddzielnie dla kaŝdej godziny Model MLP24TS MLP24TSX MLP24 MLP24X Wejścia,,,,,,,,,,,,,,,,,, Ś,,,,,,,,,,,,, Ś,,,,,,,,, Tab 3.2. Modele sieci neuronowych kalibrowane raz dla 24 godzin
18 Sztuczna inteligencja kontra modele statystyczne Modele statystyczne W niniejszej pracy porównano prognozy cen energii otrzymane za pomocą sieci neuronowych i modeli statystycznych. Wyniki dla modeli statystycznych pobrano z publikacji [19]. Wykorzystano w niej następujące modele statystyczne: model autoregresyjny (ang. autoregressive model ) - AR; progowy model autoregresyjny (ang. threshold autoregressive model) - TAR; powracający do średniej proces skokowej dyfuzji (ang. mean-reverting jump diffusion process) - MRJD; semiparametryczne modele autoregresyjne (ang. semiparametric autoregressive models) - IHMAR i SNAR. W przypadku kaŝdego z tych modeli uwzględniono dwa warianty: wariant, w którym uwzględniano prognozę zapotrzebowania oraz wariant, w którym zapotrzebowania nie uwzględniano. Podobnie jak w przypadku sieci neuronowych modele uwzględniające prognozę zapotrzebowania posiadają w nazwie dodatkową literę X. PoniŜej przedstawiono specyfikacje modeli statystycznych. Modele AR i ARX Zastosowany model autoregresyjny ARX miał następującą strukturę: pt = Φ1 pt 24 + Φ2 pt 48 + Φ3 pt Φ4mpt + (3.1) + Ψ1 Zt + d1dpon + d2dsob + d3dnd +ε. t W modelu AR Ψ 0. Do estymacji parametrów modeli ARX i AR przyjęto minimalizację kryterium FPE (ang. Final Prediction Error)[19]. Modele TAR i TARX Struktura progowego modelu autoregresyjnego TARX ma postać: p Φ p + Φ p + Φ p + Φ mp + t = 1, i t 24 2, i t 48 3, i t Ψ 1, i Z t + d 1, i D Pon + d 2, i D Sob + d 3, i D Nd 4, i + ε t, i t (3.2) gdzie i jest równe 1 (jeŝeli 0) lub 2 (jeŝeli 0), a jest róŝnicą średniej ceny z dnia poprzedzającego dzień, dla którego prognozowano cenę, oraz średniej ceny sprzed ośmiu dni. Model TAR otrzymuje się poprzez podstawienie: Ψ, 0. Parametry estymowano równieŝ poprzez minimalizację kryterium FPE[19].
19 Sztuczna inteligencja kontra modele statystyczne 19 Modele MRJD i MRJDX Model MRJDX dany jest poprzez następujące równanie: Φ p +Ψ Z + d D + d D + d p t = 1 t 24 1 t 1 Pon 2 Sob 3DNd + εt, i (3.3) gdzie i jest równe 1 (jeŝeli nie było skoku procesu Poissona) lub 2 (jeŝeli wystąpił skok procesu Poissona),, ~ 0,,, ~,. Przyjmując Ψ 0 otrzymuje się model MRJD. Parametry modelu oszacowano metodą największej wiarogodności (ML)[19]. Modele IHMAR, IHMARX, SNAR i SNARX Modele semiparametryczne IHMARX i SNARX miały taką samą strukturę jak model ARX (patrz wzór (3.1)), a modele IHMAR i SNAR strukturę taką jak model AR. Dla tych modeli inaczej natomiast estymowano parametry. W przypadku modeli IHMARX i IHMAR wykorzystano iteracyjny estymator Hsieh-Manskiego, natomiast w przypadku modeli SNARX i SNAR wygładzony nieparametryczny estymator ML (ang. smoothed nonparametric ML estymator)[19] Miary wykorzystane do porównania modeli Do porównania prognoz otrzymanych za pomocą róŝnych modeli zastosowano kilka miar. NajwaŜniejszą z nich jest miara zwana średnim tygodniowym błędem prognozy. Oznaczana będzie ona skrótem MWE (ang. Mean Weekly Error). Zdefiniowana jest następująco: P 168 t Pt 1 MWE =, (3.4) _ 168 t= 1 P168 gdzie jest rzeczywistą ceną energii w chwili t, jest prognozą ceny energii w chwili t, a średnią arytmetyczną cen z całego tygodnia. Za pomocą miary MWE mierzy się tygodniowy błąd prognozy. PoniewaŜ jednak modele porównywano na przedziałach czasu obejmujących wiele tygodni, wprowadzono trzy dodatkowe miary bazujące na mierze MWE. Pierwsza z nich - miara MWE - jest liczona jako średnia arytmetyczna wartości MWE z poszczególnych tygodni. Drugą miarą jest MDFB (ang. Mean Deviation From the Best). Jest ona zdefiniowana następująco: ^,,, (3.5) gdzie i numerem modelu, T jest liczbą tygodni okresu, dla którego modele były porównywane,, jest wartością miary MWE dla i-tego modelu w t-tym tygodniu, a, jest wartością miary MWE dla najlepszego modelu w t-tym tygodniu. Przez najlepszy model w określonym tygodniu rozumie się model, dla którego MWE przyjmuje najmniejszą wartość. Miara MDFB jest więc równa średniemu odchyleniu wartości MWE dla danego modelu od wartości MWE dla modelu najlepszego. Trzecia miara nosi nazwę #BEST. Określa ona, dla ilu tygodni określony model był najlepszy (tzn. miał najmniejszą wartość miary MWE).
20 Sztuczna inteligencja kontra modele statystyczne 20 Rozdział 4. Optymalizacja modeli sieci neuronowych W rozdziale tym przedstawione zostaną wyniki optymalizacji sieci neuronowych. Optymalizacja objęła znalezienie optymalnej liczby i rodzaju wejść do sieci neuronowych, a takŝe ustalenie optymalnej liczby neuronów w warstwach ukrytych rozwaŝanych sieci. W przeprowadzonych eksperymentach badano modele z róŝną liczbą i róŝnym rodzajem wejść. Badania rozpoczęto od modeli, które na wejściach otrzymywały takie same dane, jak modele statystyczne, z którymi sieci neuronowe porównano. Do modeli tych naleŝą: MLP24TS, MLP24TSX, MLP1TS oraz MLP1TSX. Dokładna specyfikacja tych modeli została umieszczona w rozdziale 3. Liczbę i rodzaj wejść w tych modelach modyfikowano i sprawdzano, jak wpływa to na dokładność prognoz. Ostatecznie udało się znaleźć modele, które dają prognozy dokładniejsze niŝ modele wzorowane na modelach szeregów czasowych. Znalezione modele oznaczono skrótami: MLP24, MLP24X, MLP1 oraz MLP1X. W optymalizacji modeli wzięto teŝ pod uwagę liczbę neuronów w warstwie ukrytej sieci neuronowych, poniewaŝ wpływa ona na zdolność sieci neuronowych do uogólniania nabytej wiedzy. Uogólnianie wiedzy polega na tym, Ŝe sieć potrafi skojarzyć nabytą w trakcie uczenia wiedzę i dawać dobre wyniki na danych, które nie uczestniczyły w procesie uczenia. O zdolności sieci neuronowej do uogólniania wiedzy decyduje w sposób istotny liczba neuronów w warstwie ukrytej. JeŜeli warstwa ukryta jest zbyt liczna, sieć neuronowa bardzo dokładnie dopasowuje się do danych uczących wykorzystując do tego jedynie część wag. Pozostałe wagi mają natomiast losowe wartości. Sprawia to, Ŝe na nowych danych sieć moŝe dawać niepoprawne wyniki. Zbyt mała liczba neuronów w warstwie ukrytej teŝ niekorzystna, poniewaŝ liczba wag moŝe być wówczas za mała, aby właściwie aproksymować odwzorowanie. Właściwa liczność warstwy ukrytej zaleŝy w duŝym stopniu od rozwiązywanego problemu. NaleŜy ją dobrać tak, aby na danych testowych sieć dawała moŝliwie najdokładniejsze wyniki. W dalszej części tego rozdziału przedstawiona zostanie analiza wpływu liczby neuronów w warstwie ukrytej sieci na wielkość błędów prognozy. Uwzględniono w niej modele o zoptymalizowanych wejściach (MLP24, MLP24X, MLP1, MLP1X) oraz ich odpowiedniki wzorowane na modelach statystycznych (MLP24TS, MLP24TSX, MLP1TS, MLP1TSX). Wyniki dla modeli z drugiej grupy przedstawiono w celu pokazania, Ŝe prognozy uzyskane za ich pomocą są mniej dokładne niŝ przy uŝyciu modeli z grupy pierwszej. Analizę przeprowadzono oddzielnie dla kaŝdego z trzech zbiorów danych. Dla poszczególnych modeli ustalono liczby neuronów, dla których dawały one najdokładniejsze prognozy.
21 Sztuczna inteligencja kontra modele statystyczne Zbiór Kalifornia MLP24TS MLP24 MWE 14,6 14,4 14,2 14,0 13,8 13,6 13,4 13,2 13,0 12, Liczba neuronów Rys Wykres wartości miary dla modeli MLP24TS i MLP24 w zaleŝności od liczby neuronów w warstwie ukrytej sieci MLP24TSX MLP24X MWE 14,6 14,4 14,2 14,0 13,8 13,6 13,4 13,2 13,0 12, Liczba neuronów Rys Wykres wartości miary dla modeli MLP24TSX i MLP24X w zaleŝności od liczby neuronów w warstwie ukrytej sieci
22 Sztuczna inteligencja kontra modele statystyczne 22 MLP1TS MLP1 MWE 14,6 14,4 14,2 14,0 13,8 13,6 13,4 13,2 13,0 12, Liczba neuronów Rys Wykres wartości miary dla modeli MLP1TS i MLP1 w zaleŝności od liczby neuronów w warstwie ukrytej sieci MLP1TSX MLP1X MWE 14,6 14,4 14,2 14,0 13,8 13,6 13,4 13,2 13,0 12, Liczba neuronów Rys Wykres wartości miary dla modeli MLP1TSX i MLP1X w zaleŝności od liczby neuronów w warstwie ukrytej sieci
23 Sztuczna inteligencja kontra modele statystyczne 23 Wnioski: W przypadku zbioru Kalifornia dla modeli MLP24, MLP24X i MLP1 zaleŝności błędu prognozy od liczby neuronów w warstwie ukrytej są podobne (Rys. 4.1., Rys i Rys. 4.3.). Wraz ze wzrostem liczby neuronów błąd początkowo spada, a następnie - po osiągnięciu minimum zaczyna wzrastać. Jest to zgodne z oczekiwaniami. Dla zbyt małej liczby neuronów w warstwie ukrytej sieć moŝe bowiem nie być w stanie wyuczyć się wszystkich zaleŝności występujących w danych historycznych. Natomiast w przypadku zbyt duŝej liczby neuronów wartości niektórych wag pozostają losowe, co sprawia, Ŝe dla nowych danych sieć taka daje prognozy obarczone większymi błędami. W przypadku modeli MLP24, MLP24X i MLP1 minimalny błąd predykcji jest osiągnięty dla jednego neuronu w warstwie ukrytej. Uznano zatem, Ŝe dla zbioru Kalifornia optymalną liczbą neuronów w warstwie ukrytej dla tych trzech modeli jest 1. Nieco inną zaleŝność widać w przypadku modelu MLP1X (Rys. 4.4.). Najdokładniejsze prognozy daje on wtedy, gdy nie posiada w ogóle warstwy ukrytej. Wraz ze wzrostem liczby neuronów w warstwie ukrytej błąd wykazuje tendencję wzrostową, choć wzrost ten nie jest juŝ tak wyraźny jak w przypadku modeli MLP24, MLP24X i MLP1. Dla zbioru Kalifornia przyjęto więc, Ŝe optymalny model MLP1X nie posiada warstwy ukrytej. Dla modeli MLP24TS, MLP24TSX, MLP1TS i MLP1TSX zaleŝności błędu prognozy od liczby neuronów w warstwie ukrytej są analogiczne jak w przypadku odpowiadających im modeli MLP24, MLP24X, MLP1 i MLP1X (róŝnica polega głównie na wielkości tych błędów). Optymalną liczbą neuronów w warstwie ukrytej dla modeli MLP24TS, MLP24TSX i MLP1TS jest więc 1, a dla modelu MLP1TSX 0. Na kaŝdym z rysunków widać, Ŝe prawie dla wszystkich badanych liczności warstwy ukrytej sieci neuronowych, modele MLP24TS, MLP24TSX, MLP1TS, MLP1TSX dały mniej dokładne prognozy niŝ odpowiadające im modele MLP24, MLP24X, MLP1, MLP1X. Zdarzyły się co prawda sytuacje, w których dla modelu z pierwszej grupy wartość miary MWE była mniejsza niŝ dla odpowiadającego modelu z grupy drugiej. Widać to na przykład na rysunku 4.4. dla czterech neuronów w warstwie ukrytej. Pomimo to dla optymalnych liczb neuronów w warstwie ukrytej modele z grupy drugiej zawsze dawały dokładniejsze prognozy niŝ modele z grupy pierwszej.
24 Sztuczna inteligencja kontra modele statystyczne Zbiór Nord Pool MLP24TS MLP24 MWE 5,4 5,2 5,0 4,8 4,6 4,4 4,2 4, Liczba neuronów Rys Wykres wartości miary dla modeli MLP24TS i MLP24 w zaleŝności od liczby neuronów w warstwie ukrytej sieci MLP1TS MLP1 MWE 5,4 5,2 5,0 4,8 4,6 4,4 4,2 4, Liczba neuronów Rys Wykres wartości miary dla modeli MLP1TS i MLP1 w zaleŝności od liczby neuronów w warstwie ukrytej sieci
25 Sztuczna inteligencja kontra modele statystyczne 25 Wnioski: ZaleŜności błędu predykcji od liczby neuronów w warstwie ukrytej dla modeli z optymalnymi wejściami (MLP24 i MLP1) są inne niŝ dla danych ze zbioru Kalifornia Przede wszystkim minimum błędu prognozy jest osiągnięte dla większej liczby neuronów niŝ w przypadku zbioru danych pochodzących z Kalifornii. Dla braku warstwy ukrytej oraz dla jednego neuronu w tej warstwie błędy predykcji są stosunkowo duŝe. Minimum błędu prognozy jest osiągnięte dla pięciu neuronów w przypadku modelu MLP24 i dla 6 neuronów - dla modelu MLP1. Obserwuje się jednak, Ŝe dla liczby neuronów znajdującej się w pobliŝu tych liczb optymalnych róŝnice błędu są bardzo małe. Większa liczba neuronów niŝ w przypadku poprzedniego zbioru sugeruje, Ŝe w danych ze zbioru Nord Pool istnieją bardziej skomplikowane zaleŝności niŝ w przypadku zbioru Kalifornia Stosunkowo proste sieci (zero i jeden neuron w warstwie ukrytej) mogą nie być w stanie się tych zaleŝności wyuczyć. Ostatecznie dla obu modeli przyjęto liczbę 5 za optymalną liczność warstwy ukrytej dla zbioru danych Nord Pool W przypadku modeli MLP24TS i MLP1TS zaleŝność błędu MWE od liczby neuronów w warstwie ukrytej jest duŝo słabsza niŝ w przypadku modeli MLP24 i MLP1. Niemniej jednak moŝna zaobserwować, Ŝe dla obu tych modeli minimum błędu predykcji jest osiągnięte dla trzech neuronów w warstwie ukrytej. Dla zbioru Nord Pool przewaga modeli MLP24 i MLP1 nad odpowiadającymi im modelami MLP24TS i MLP1TS jest bardziej widoczna niŝ dla zbioru Kalifornia Dla wszystkich badanych liczb neuronów w warstwie ukrytej prognozy uzyskane za pomocą modeli MLP24 i MLP1 były dokładniejsze niŝ prognozy otrzymane przy uŝyciu modeli odpowiednio MLP24TS i MLP1TS (Rys i Rys. 4.6.).
26 Sztuczna inteligencja kontra modele statystyczne Zbiór Nord Pool MLP24TS MLP24 MWE 4,4 4,2 4,0 3,8 3,6 3,4 3,2 3, Liczba neuronów Rys Wykres wartości miary dla modeli MLP24TS i MLP24 w zaleŝności od liczby neuronów w warstwie ukrytej sieci MLP1TS MLP1 MWE 4,4 4,2 4,0 3,8 3,6 3,4 3,2 3, Liczba neuronów Rys Wykres wartości miary dla modeli MLP1TS i MLP1 w zaleŝności od liczby neuronów w warstwie ukrytej sieci
27 Sztuczna inteligencja kontra modele statystyczne 27 Wnioski: Dla modeli MLP24 i MLP1 wraz ze wzrostem liczby neuronów w warstwie ukrytej MWE początkowo spada, dla dwóch neuronów osiąga minimum, po czym wykazuje tendencję wzrostową (Rys i Rys. 4.8.). W przypadku modelu MLP24 wzrost ten nie jest silny, natomiast w przypadku modelu MLP1 jest on wyraźny. W oparciu o te spostrzeŝenia ustalono, Ŝe dla zbioru Nord Pool optymalną liczbą neuronów w warstwach ukrytych sieci MLP24 i MLP1 jest 2. Dla modelu MLP1TS zaleŝności wartości miary MWE od liczby neuronów w warstwie ukrytej są podobne jak dla odpowiadającego mu modelu MLP1 (Rys. 4.8.). Optymalną liczbą neuronów w warstwie ukrytej jest więc 2. W przypadku modelu MLP24TS optymalną liczbą neuronów jest 1 (Rys. 4.7.). RównieŜ na zbiorze danych Nord Pool lepsze okazały się modele MLP24 i MLP1 (Rys i Rys. 4.8), choć ich przewaga nad modelami MLP24TS i MLP1TS nie jest juŝ tak wyraźna jak w przypadku poprzedniego zbioru danych. Niemniej jednak naleŝy zauwaŝyć, Ŝe minimalne wartości MWE w przypadku modeli MLP24 i MLP1 są zdecydowanie mniejsze niŝ w przypadku modeli odpowiednio MLP24TS i MLP1TS.
28 Sztuczna inteligencja kontra modele statystyczne 28 Rozdział 5. Porównanie sieci neuronowych i modeli statystycznych Rozdział ten zawiera porównanie sieci neuronowych i modeli statystycznych w kontekście prognozowania szeregów czasowych. W porównaniu wykorzystano zoptymalizowane wcześniej modele sieci neuronowych: MLP24, MLP24X, MLP1 oraz MLP1X. Wyniki dla modeli statystycznych zostały pobrane z publikacji [19]. Wzięto pod uwagę następujące modele statystyczne: AR, ARX, TAR, TARX, MRJD, MRJDX, IHMAR, IHMARX, SNAR oraz SNARX. Specyfikacja tych modeli została zamieszczona w rozdziale Zbiór Kalifornia W przypadku rynku kalifornijskiego badano zarówno modele nieuwzględniające prognozy zapotrzebowania, jak i modele, które prognozę tę uwzględniały. W podrozdziale tym porównano oddzielnie modele bez prognozy zapotrzebowania i oddzielnie modele, które otrzymywały na wejściu prognozę zapotrzebowania. Na końcu porównano wszystkie modele razem Porównanie modeli bez prognozy zapotrzebowania W tabeli 5.1. zaprezentowano średnie tygodniowe błędy MWE dla modeli bez prognozy zapotrzebowania. W jej dolnej części umieszczono równieŝ wartości miar MWE, #BEST i MD- FB. Wartości te wyznaczono dla kaŝdego modelu na podstawie wartości MWE z wszystkich dziesięciu tygodni. Rysunek 5.1. prezentuje w sposób graficzny wartości miary MDFB dla poszczególnych modeli. Tydzień AR TAR MRJD IHMAR SNAR MLP24 MLP1 1 3,37 3,21 5,72 3,74 3,97 4,12 3,90 2 5,29 5,37 7,43 6,11 6,47 7,48 6,99 3 8,41 8,79 11,78 8,88 9,35 10,36 8, ,99 13,90 14,16 13,31 13,09 13,79 12, ,26 18,09 19,13 18,23 17,94 17,04 16,73 6 8,40 9,24 9,23 8,53 8,76 8,42 8, ,32 11,23 10,15 10,56 10,97 10,50 9, ,35 47,95 53,62 49,58 46,11 44,93 45, ,44 13,87 13,87 13,26 14,01 13,41 12, ,81 8,27 8,78 7,94 8,07 9,13 8,28 13,96 13,99 15,39 14,01 13,87 13,92 13,35 # ,00 1,03 2,42 1,05 0,91 0,95 0,38 Tab Średnie tygodniowe błędy prognozy (MWE) dla modeli bez prognozy zapotrzebowania (błędy najmniejsze w poszczególnych tygodniach zostały pogrubione; najlepsze wartości miar, #BEST i MDFB zostały wyróŝnione ciemniejszym tłem)
29 Sztuczna inteligencja kontra modele statystyczne 29 2,50 2,00 MDFB 1,50 1,00 0,50 0,00 AR TAR MRJD IHMAR SNAR MLP24 MLP1 Modele Rys Wartości miary MDFB dla modeli nieuwzględniających prognozy zapotrzebowania Wnioski: Na rysunku 5.1. widać, Ŝe z dwóch modeli sieci neuronowych: MLP24 i MLP1 zdecydowanie lepsze wyniki dał model drugi. Model ten dał ponadto dokładniejsze prognozy niŝ wszystkie rozwaŝane modele statystyczne. Średnie odchylenie od najlepszej prognozy było w jego przypadku ponad dwukrotnie mniejsze niŝ w przypadku najlepszego modelu statystycznego SNAR. Dla modelu MLP1 błąd MWE był najmniejszy czterokrotnie, co stanowi najlepszy rezultat wśród wszystkich modeli (Tab. 5.1.). Co prawda taki sam rezultat uzyskano dla modelu AR, ale model AR miał duŝo większy błąd MWE oraz duŝo większe odchylenie MDFB. Tak więc naleŝy stwierdzić, Ŝe wśród modeli nieuwzględniających zapotrzebowania, sieci neuronowe dały lepsze prognozy cen dla rynku kalifornijskiego niŝ modele statystyczne. Wniosek ten sugeruje, Ŝe sieci neuronowe dobrze prognozują ceny energii, które cechuje duŝa zmienność. Jak się bowiem okaŝe w dalszej części tego rozdziału, dla cen o mniejszej zmienności sieci neuronowe nie wypadły juŝ tak dobrze.
30 Sztuczna inteligencja kontra modele statystyczne Porównanie modeli uwzględniających prognozę zapotrzebowania Tabela 5.2. zawiera średnie tygodniowe błędy MWE dla modeli uwzględniających prognozę zapotrzebowania. W jej dolnej części umieszczono wartości miar MWE, #BEST i MDFB. Wartości te wyznaczono dla kaŝdego modelu na podstawie wartości MWE z wszystkich dziesięciu tygodni. Rysunek 5.2. prezentuje wartości miary MDFB dla poszczególnych modeli. Tydzień ARX TARX MRJDX IHMARX SNARX MLP24X MLP1X 1 3,03 3,09 5,26 3,16 3,52 3,51 3,67 2 4,71 5,04 6,87 5,51 6,04 7,23 6,62 3 8,37 8,52 11,21 8,56 9,12 10,38 8, ,51 13,56 13,93 12,82 12,43 13,88 11, ,82 18,45 18,66 17,88 17,60 16,85 16,55 6 8,04 8,69 8,59 8,05 8,34 8,72 8,99 7 9,43 10,07 9,93 9,61 9,99 9,87 9, ,15 44,77 50,82 47,53 43,34 43,94 45, ,11 13,12 13,27 12,91 13,74 13,02 13, ,39 7,77 8,17 7,65 7,62 9,47 8,83 13,36 13,31 14,67 13,37 13,17 13,69 13,31 # ,83 0,78 2,14 0,84 0,65 1,16 0,78 Tab Średnie tygodniowe błędy prognozy (MWE) dla modeli uwzględniających prognozę zapotrzebowania (błędy najmniejsze w poszczególnych tygodniach zostały pogrubione; najlepsze wartości miar, #BEST i MDFB zostały wyróŝnione ciemniejszym tłem) 2,50 2,00 MDFB 1,50 1,00 0,50 0,00 ARX TARX MRJDX IHMARX SNARX MLP24X MLP1X Modele Rys Wartości miary MDFB dla modeli uwzględniających prognozę zapotrzebowania
31 Sztuczna inteligencja kontra modele statystyczne 31 Wnioski: Wśród modeli uwzględniających prognozę zapotrzebowania najmniejsze wartości MWE oraz MDFB uzyskano za pomocą modelu statystycznego SNARX (Tab. 5.2., Rys. 5.2). Sieć neuronowa MLP1X uplasowała się na drugim miejscu razem z modelem TARX. W odróŝnieniu od TARX model MLP1X trzykrotnie dał prognozy, dla których wartość MWE była najmniejsza wśród wszystkich badanych modeli (TARX w Ŝadnym tygodniu nie był najlepszy). Nieco gorsze prognozy niŝ MLP1X dały modele statystyczne: ARX oraz IHMARX. Dopiero za nimi uplasował się model MLP24X. Tak więc wśród modeli uwzględniających na wejściu prognozę zapotrzebowania modele statystyczne SNARX i IHMARX okazały się lepsze od sieci neuronowych Porównanie wszystkich modeli Podrozdział ten zawiera porównanie wszystkich modeli: zarówno tych, które nie uwzględniały prognozy zapotrzebowania, jak i tych, które tę prognozę uwzględniały. W tabeli 5.3. zaprezentowano średnie tygodniowe błędy MWE dla poszczególnych modeli. W jej dolnej części zamieszczono wartości miar MWE, #BEST i MDFB. Wartości te wyznaczono dla kaŝdego modelu na podstawie wartości MWE z wszystkich dziesięciu tygodni. Rysunek 5.3. prezentuje wartości miary MDFB dla poszczególnych modeli.
32 Sztuczna inteligencja kontra modele statystyczne 32 Tydzień AR ARX TAR TARX MRJD MRJDX IHMAR IHMARX SNAR SNARX MLP24 MLP24X MLP1 MLP1X 1 3,37 3,03 3,21 3,09 5,72 5,26 3,74 3,16 3,97 3,52 4,12 3,51 3,90 3,67 2 5,29 4,71 5,37 5,04 7,43 6,87 6,11 5,51 6,47 6,04 7,48 7,23 6,99 6,62 3 8,41 8,37 8,79 8,52 11,78 11,21 8,88 8,56 9,35 9,12 10,36 10,38 8,75 8, ,99 13,51 13,90 13,56 14,16 13,93 13,31 12,82 13,09 12,43 13,79 13,88 12,19 11, ,26 17,82 18,09 18,45 19,13 18,66 18,23 17,88 17,94 17,60 17,04 16,85 16,73 16,55 6 8,40 8,04 9,24 8,69 9,23 8,59 8,53 8,05 8,76 8,34 8,42 8,72 8,50 8, ,32 9,43 11,23 10,07 10,15 9,93 10,56 9,61 10,97 9,99 10,50 9,87 9,84 9, ,35 48,15 47,95 44,77 53,62 50,82 49,58 47,53 46,11 43,34 44,93 43,94 45,45 45, ,44 13,11 13,87 13,12 13,87 13,27 13,26 12,91 14,01 13,74 13,41 13,02 12,83 13, ,81 7,39 8,27 7,77 8,78 8,17 7,94 7,65 8,07 7,62 9,13 9,47 8,28 8,83 13,96 13,36 13,99 13,31 15,39 14,67 14,01 13,37 13,87 13,17 13,92 13,69 13,35 13,31 # ,58 1,98 2,61 1,93 4,01 3,29 2,63 1,99 2,49 1,79 2,54 2,31 1,97 1,93 Tab Średnie tygodniowe błędy prognozy (MWE) dla poszczególnych modeli (błędy najmniejsze w poszczególnych tygodniach zostały pogrubione; najlepsze wartości miar, #BEST i MDFB zostały wyróŝnione ciemniejszym tłem)
33 Sztuczna inteligencja kontra modele statystyczne 33 MDFB 4,50 4,00 3,50 3,00 2,50 2,00 1,50 1,00 0,50 0,00 Modele Rys Wartości miary MDFB dla poszczególnych modeli Wnioski: Za tabeli 5.3. i rysunku 5.3. wynika, Ŝe wśród wszystkich modeli najmniejsze wartości MWE oraz MDFB uzyskano za pomocą modelu statystycznego SNARX. Najlepsza sieć neuronowa MLP1X uplasowała się na drugim miejscu razem z modelem TARX. Trzecie miejsce zajęła sieć neuronowa MLP24X. Spośród wszystkich czterech badanych modeli sieci neuronowych najdokładniejsze wyniki dał model MLP1X (pod uwagę wzięto wartości MWE i MDFB). Na rysunku 5.3. widać, Ŝe sieci neuronowe, które dostawały na wejście prognozę zapotrzebowania (MLP24X i MLP1X) dały lepsze rezultaty niŝ ich odpowiedniki nieuwzględniające zapotrzebowania (MLP24 i MLP1). Oznacza to, Ŝe prognoza zapotrzebowania na określoną godzinę kolejnego dnia wpływa na cenę energii z tej godziny. Podanie prognozy zapotrzebowania na wejście modelu wnosi zatem do niego dodatkowe informacje, które poprawiają dokładność prognozy. MoŜna równieŝ zauwaŝyć, Ŝe modele kalibrowane oddzielnie na kaŝdą godzinę (MLP1 i MLP1X) dały prognozy dokładniejsze niŝ modele kalibrowane raz na 24 godziny (MLP24 i MLP24X). Sieci neuronowe kalibrowane oddzielnie dla kaŝdej godziny odzwierciedlają tylko te zaleŝności występujące w danych uczących, które związane są z jedną godziną. Modele kalibrowane raz na 24 godziny muszą natomiast odzwierciedlać zaleŝności związane z wszystkimi 24 godzinami. Znalezienie modelu prognozującego ceny dla 24 godzin jest więc trudniejsze, poniewaŝ poszukiwane odwzorowanie danych historycznych na przyszłe ceny energii jest bardziej skomplikowane. Jedna sieć neuronowa moŝe nie być w stanie wyuczyć się na raz wszystkich zaleŝności związanych z 24 godzinami, co moŝe powodować gorsze prognozy.
34 Sztuczna inteligencja kontra modele statystyczne Zbiór Nord Pool Dla rynku nordyckiego nie były dostępne dane dotyczące zapotrzebowania. Wobec tego porównano jedynie modele bez zapotrzebowania. Tabela 5.4. zawiera średnie tygodniowe błędy MWE dla poszczególnych modeli statystycznych i modeli sieci neuronowych. W jej dolnej części umieszczono takŝe wartości miar MWE, #BEST i MDFB. Wartości te wyznaczono dla kaŝdego modelu na podstawie wartości MWE z wszystkich 25 tygodni. Na rysunku 5.4. przedstawiono graficznie wartości miary MDFB dla poszczególnych modeli. Tydzień AR TAR MRJD IHMAR SNAR MLP24 MLP1 II.1 4,88 6,23 3,57 4,25 3,72 3,72 4,39 II.2 3,26 3,39 4,46 3,27 3,49 3,72 3,26 II.3 3,28 4,37 2,73 2,80 2,44 2,64 2,71 II.4 3,87 4,24 3,03 3,65 3,25 2,67 2,78 II.5 4,94 5,47 2,87 4,58 3,65 4,03 4,13 V.1 4,77 5,25 5,17 4,72 4,06 6,73 6,99 V.2 6,06 6,20 8,76 6,14 7,10 6,38 6,41 V.3 8,15 8,18 11,66 8,49 9,75 9,43 8,81 V.4 6,81 6,91 9,59 6,84 6,94 5,57 4,86 V.5 5,29 5,04 6,92 5,24 5,75 6,50 6,54 VIII.1 3,28 2,95 3,74 3,23 3,23 5,75 5,70 VIII.2 4,93 4,30 5,86 4,70 4,37 6,10 6,12 VIII.3 4,01 3,24 4,58 3,67 2,86 3,98 3,63 VIII.4 4,27 3,64 4,18 3,89 3,57 3,31 3,31 VIII.5 2,60 3,04 3,39 2,43 2,46 2,87 3,03 XI.1 3,18 3,81 2,72 3,01 2,83 2,83 2,58 XI.2 4,00 3,75 3,69 3,70 3,47 3,24 3,37 XI.3 2,89 2,48 3,51 2,73 2,53 2,69 2,52 XI.4 2,29 2,70 2,23 2,14 2,30 2,36 2,05 XI.5 3,88 3,40 3,71 3,56 3,01 3,60 3,42 4,33 4,43 4,82 4,15 4,04 4,41 4,33 # ,72 0,82 1,21 0,54 0,43 0,80 0,72 Tab Średnie tygodniowe błędy prognozy (MWE) dla poszczególnych modeli (błędy najmniejsze w poszczególnych tygodniach zostały pogrubione; najlepsze wartości miar, #BEST i MDFB zostały wyróŝnione ciemniejszym tłem) 1,40 1,20 1,00 MDFB 0,80 0,60 0,40 0,20 0,00 AR TAR MRJD IHMAR SNAR MLP24 MLP1 Modele Rys Wartości miary MDFB dla poszczególnych modeli
35 Sztuczna inteligencja kontra modele statystyczne 35 Wnioski: Dla zbioru Nord Pool najlepsze rezultaty dały nieparametryczne modele statystyczne: SNAR i IHMAR (Tab. 5.4., Rys. 5.4.). Sieć neuronowa MLP1 zajęła trzecie miejsce wraz ze statystycznym modelem AR (biorąc pod uwagę miary MWE oraz MDFB). Model MLP1 dał jednak największą wartość miary #BEST. Za jego pomocą uzyskano najmniejsze wartości MWE aŝ dla pięciu tygodni (jest to najlepszy wynik wśród wszystkich modeli). Sieć neuronowa MLP24 uplasowała się na kolejnym, czwartym miejscu. W przypadku tego zbioru danych równieŝ widać przewagę modelu MLP1, który był kalibrowany oddzielnie dla kaŝdej godziny, nad modelem MLP24 kalibrowanym raz dla 24 godzin. MoŜliwe przyczyny tej obserwacji podano w poprzednim podrozdziale Zbiór Nord Pool Tabela 5.5. zawiera średnie tygodniowe błędy MWE dla poszczególnych modeli dla zbioru Nord Pool Ze względu na brak danych dotyczących zapotrzebowania uwzględniono tylko modele bez dodatkowych wejść związanych z zapotrzebowaniem (podobnie jak w przypadku zbioru Nord Pool ). W dolnej części tabeli umieszczono wartości miar MWE, #BEST i MDFB. Wartości te wyznaczono dla kaŝdego modelu na podstawie wartości MWE z wszystkich 25 tygodni. Na rysunku 5.5. zaprezentowano wartości miary MDFB. Tydzień AR TAR MRJD IHMAR SNAR MLP24 MLP1 II.1 1,79 2,70 3,01 1,71 1,67 2,44 2,12 II.2 3,08 3,62 4,07 3,01 2,89 3,73 4,05 II.3 3,17 3,34 4,72 3,15 3,25 3,34 3,39 II.4 2,09 2,78 2,82 1,94 1,85 2,80 3,12 II.5 1,89 1,94 2,07 1,66 1,65 2,33 2,73 V.1 5,95 5,49 7,83 6,05 6,30 6,71 6,25 V.2 10,87 10,01 13,78 11,14 11,34 10,45 10,21 V.3 7,67 5,56 7,17 7,45 7,49 7,26 7,12 V.4 4,05 4,04 3,97 3,83 3,78 4,89 4,97 V.5 2,30 1,54 2,32 2,06 1,75 2,11 2,41 VIII.1 2,78 2,79 3,18 2,69 2,63 3,73 3,58 VIII.2 2,96 3,02 2,79 2,88 2,79 3,07 3,34 VIII.3 2,09 1,64 3,04 2,06 1,82 2,25 2,21 VIII.4 1,78 2,42 2,73 1,69 1,58 2,03 2,00 VIII.5 2,33 2,34 3,52 2,28 2,18 1,86 2,36 XI.1 1,95 2,32 2,09 1,79 1,79 2,71 2,38 XI.2 2,59 2,56 3,00 2,48 2,56 2,97 2,62 XI.3 2,71 2,53 2,42 2,54 2,46 3,42 3,08 XI.4 2,14 2,37 2,59 2,13 2,24 2,59 2,20 XI.5 2,31 2,10 3,85 2,37 2,35 2,30 2,55 3,33 3,26 4,05 3,25 3,22 3,65 3,63 # ,37 0,31 1,10 0,30 0,27 0,70 0,68 Tab Średnie tygodniowe błędy prognozy (MWE) dla poszczególnych modeli (błędy najmniejsze w poszczególnych tygodniach zostały pogrubione; najlepsze wartości miar, #BEST i MDFB zostały wyróŝnione ciemniejszym tłem)
36 Sztuczna inteligencja kontra modele statystyczne 36 1,20 1,00 0,80 MDFB 0,60 0,40 0,20 0,00 AR TAR MRJD IHMAR SNAR MLP24 MLP1 Modele Rys Wartości miary MDFB dla poszczególnych modeli Wnioski: Na zbiorze danych Nord Pool obie sieci neuronowe MLP24 i MLP1 dały gorsze prognozy niŝ cztery modele statystyczne: AR, TAR, IHMAR oraz SNAR (Tab. 5.5., Rys. 5.5.). Prognozy uzyskane za pomocą sieci neuronowych były dokładniejsze tylko od prognoz otrzymanych przy uŝyciu modelu statystycznego MRJD. Ponadto model MLP1 nie był najlepszy dla Ŝadnego tygodnia. Model MLP24 był najlepszy tylko jeden raz. Gorsze rezultaty w przypadku sieci neuronowych w odniesieniu do modeli statystycznych wynikają prawdopodobnie z tego, Ŝe ceny dla zbioru Nord Pool odznaczały się najmniejszą zmiennością wśród cen z trzech rozwaŝanych zbiorów. Porównując same modele sieci neuronowych naleŝy stwierdzić, Ŝe na zbiorze danych Nord Pool model MLP1 dał prognozy lepsze niŝ model MLP24 (biorąc pod uwagę miary MWE i MDFB). Podobna zaleŝność występowała w przypadku pozostałych dwóch zbiorów danych, dla których wyniki przedstawiono w poprzednich podrozdziałach.
37 Sztuczna inteligencja kontra modele statystyczne 37 Rozdział 6. Podsumowanie Podsumowując niniejszą pracę, naleŝy uznać, Ŝe jej cel został osiągnięty. Za pomocą napisanej aplikacji Electricity Price Predictor przeprowadzono szereg eksperymentów, które pozwoliły ocenić róŝne modele sieci neuronowych w kontekście prognozowania cen energii elektrycznej. Ostatecznie sieci neuronowe porównano z modelami statystycznymi, co stanowiło główny cel tej pracy. W pracy wykorzystano popularne sieci neuronowe zwane perceptronami. Badania pokazały, Ŝe modele sieci neuronowych, które były kalibrowane oddzielnie przed wykonaniem prognozy dla kaŝdej godziny (MLP1 i MLP1X), prognozowały ceny energii dokładniej niŝ modele, które po jednej kalibracji prognozowały ceny dla 24 godzin określonego dnia (MLP24 i MLP24X). ZaleŜności te widać w przypadku kaŝdego z trzech wykorzystanych zbiorów danych. Wynikają one prawdopodobnie z tego, Ŝe znalezienie modelu prognozującego ceny dla 24 godzin jest bardziej skomplikowane. Jedna sieć neuronowa moŝe nie być w stanie wyuczyć się na raz wszystkich zaleŝności związanych z 24 godzinami, co moŝe powodować gorsze prognozy. Okazało się ponadto, Ŝe uwzględnienie zapotrzebowania na wejściu sieci neuronowych polepszało dokładność prognoz: na zbiorze Kalifornia (który jako jedyny zawierał prognozy zapotrzebowania) model MLP24X prognozował lepiej niŝ model MLP24, a model MLP1X dawał dokładniejsze prognozy niŝ model MLP1. Oznacza to, Ŝe prognoza zapotrzebowania na określoną godzinę kolejnego dnia wpływa na cenę energii dla tej godziny. Uwzględnienie tej prognozy w modelu wnosi do niego dodatkowe informacje, które poprawiają dokładność prognoz. Tak więc jeŝeli nie były dostępne dane dotyczące prognozy zapotrzebowania (zbiory Nord Pool oraz Nord Pool ), wśród sieci neuronowych najlepszy okazał się model MLP1. Natomiast w sytuacji, gdy dane dotyczące prognozy zapotrzebowania były dostępne (zbiór Kalifornia ), najlepsze prognozy dał model MLP1X. W oparciu o wyniki zaprezentowane w niniejszej pracy naleŝy negatywnie odpowiedzieć na kluczowe pytanie umieszone w jej tytule: Czy sieci neuronowe potrafią lepiej prognozować ceny energii?. Dla wszystkich trzech zbiorów danych, ewidentnie widać, Ŝe zdecydowanym liderem jest statystyczny model SNAR, jeŝeli nie było dostępnych danych dotyczących prognozy zapotrzebowania, oraz jego odpowiednik - SNARX w sytuacji, gdy dostępne były te dane. Nie dominował on jednak zawsze nad sieciami neuronowymi. W porównaniu modeli nieuwzględniających zapotrzebowania dla zbioru danych Kalifornia okazało się, Ŝe sieć neuronowa MLP24 dała prognozy dokładniejsze od wszystkich modeli statystycznych (biorąc pod uwagę miary i MDFB). Wśród modeli statystycznych za modelami SNARX i SNAR uplasowały się modele IHMARX oraz IHMAR. W przypadku zbioru danych pochodzących z rynku kalifornijskiego modele te dały gorsze wyniki niŝ sieci neuronowe MLP1X i MLP1, natomiast dla danych z rynku nordyckiego modele te okazały się być lepsze niŝ sieci neuronowe. Tak więc trudno jednoznacznie stwierdzić, czy sieci neuronowe są od nich lepsze, czy gorsze. Interesującym wynikiem badań jest to, Ŝe w odniesieniu do modeli statystycznych sieci neuronowe radzą sobie lepiej z prognozowaniem cen, które cechuje duŝa zmienność. Świadczy o tym fakt, Ŝe najlepiej wypadły one na zbiorze Kalifornia , dla którego wszystkie badane modele dawały prognozy obarczone stosunkowo duŝymi błędami. W przypadku tego zbioru danych błędy wahały się bowiem w granicach 13,17% 14,67%, podczas gdy dla zbioru Nord Pool mieściły się one w granicach 4,15% - 4,82%, a dla zbioru Nord Pool w granicach 3,22% - 4,05%. Dla zbioru Nord Pool , dla którego wszystkie modele osiągały najmniejsze błędy prognozy, sieci neuronowe wypadły znacznie słabiej od modeli statystycznych niŝ dla zbioru danych z Kalifornii. Okaza-
38 Sztuczna inteligencja kontra modele statystyczne 38 ły się one gorsze nawet od prostych modeli autoregresyjnych. Dla zbioru Nord Pool wypadły juŝ lepiej (porównywalnie z modelami AR i ARX). Sugeruje to, Ŝe modele sieci neuronowych warto stosować do prognozowania cen w okresach, w których ceny są zmienne a przez to trudniej prognozowalne. W ramach tej pracy zbadano najpopularniejsze sieci neuronowe w kontekście prognozowania cen energii elektrycznej. Dobre wyniki prognoz uzyskane za pomocą tych sieci sugerują, Ŝeby kontynuować badania nad zastosowaniem innych sieci neuronowych - sieci o odmiennych architekturach i innych metodach uczenia. Warto byłoby na przykład sprawdzić, jak z prognozowaniem cen energii radziłyby sobie sieci o radialnych funkcjach bazowych (ang. Radial Basis Functions) czy sieci rekurencyjne. Zastosowanie bardziej zaawansowanych modeli być moŝe przyniosłoby poprawę jakości prognoz.
39 Sztuczna inteligencja kontra modele statystyczne 39 Dodatek A. Aplikacja Electricity Price Predictor W ramach pracy dyplomowej została napisana aplikacja Electricity Price Predictor, za pomocą której badano modele sieci neuronowych. UmoŜliwia ona definiowanie modeli sieci neuronowych, ich kalibrację na historycznych danych, prognozowanie cen energii oraz obliczanie błędów predykcji. Aplikacja została ona zaimplementowana na platformie Microsoft.NET w języku C#. Dodatek ten zawiera wymagania systemowe aplikacji, opis jej funkcjonalności oraz instrukcje dotyczące przygotowania dla aplikacji plików z danymi. A.1. Wymagania systemowe aplikacji Aplikacja Electricity Price Predictor posiada następujące wymagania systemowe: Procesor: Pentium III 400 MHz (lub szybszy); System operacyjny: Microsoft Windows 2000 Server SP4, Windows 2000 Professional SP4, Windows XP SP2, Windows Server 2003 Enterprise Edition lub Standard Edition; Pamięć operacyjna: 128 MB (lub więcej); Wolna przestrzeń na dysku twardym: 20 MB; Napęd CD-ROM lub DVD-ROM; Karta graficzna VGA o rozdzielczości 1024x768 (lub większej); Monitor o rozdzielczości 1024x768 (lub większej). Dodatkowo wymagane jest zainstalowane w systemie operacyjnym oprogramowanie: Microsoft.NET Framework 2.0 (lub nowsze). A.2. Opis aplikacji Electricity Price Predictor umoŝliwia wczytywanie z pliku tekstowego danych, które wykorzystywane są do trenowania i testowania sieci neuronowych. Pliki z danymi muszą mieć odpowiedni format, który dokładnie przedstawiono w podrozdziale A.3. Dane wczytuje się za pomocą menu Plik (Rys. A.2.). Po rozwinięciu menu są do wyboru dwie opcje: [Data Godzina Cena] oraz [Data Godzina Cena Zapotrzebowanie] (Rys. A.2.). Pierwszą opcję naleŝy wybrać jeŝeli plik zawiera daty, godziny i ceny energii. Druga opcja przeznaczona jest do otwarcia pliku zawierającego dodatkowo prognozę zapotrzebowania na energię elektryczną. Po wczytaniu danych ceny zostają przedstawione na wykresie (Rys. A.1.). Program daje moŝliwość określenia zakresu danych uczących i testowych. SłuŜą do tego dwa panele: Zakres danych uczących i Zakres danych testowych (Rys. A.1.). Data początkowa zakresu danych testowych jest ustawiana automatycznie na dzień następujący bezpośrednio po ostatnim dniu zakresu danych uczących. Ceny naleŝące do zbioru danych uczących prezentowane są za pomocą wykresu na zakładce Zbiór uczący (Rys. A.1.), natomiast ceny ze zbioru testowego na zakładce Zbiór testowy (Rys. A.3.).
40 Sztuczna inteligencja kontra modele statystyczne 40 Rys. A.1. Okno główne aplikacji Electricity Price Predictor Rys. A.2. Rozwinięte menu Plik w oknie głównym aplikacji
41 Sztuczna inteligencja kontra modele statystyczne 41 Rys. A.3. Zakładka Zbiór testowy Model, który ma być wykorzystany do prognozowania, definiuje się za pomocą panelu Model (Rys. A.1.). Lista Rodzaj kalibracji znajdująca się na tym panelu pozwala określić, czy model ma być kalibrowany raz na 24 godziny, czy oddzielnie dla kaŝdej godziny. Za pomocą przycisku Wejścia modelu otwiera się okno przeznaczone do definiowania wejść modelu (Rys. A.4.). W oknie tym znajdują się trzy panele: Ceny, Prognozy zapotrzebowania oraz Dodatkowe dane. Na panelu Ceny za pomocą pola Liczba cen określa się liczbę przeszłych cen energii, spośród których moŝna następnie za pomocą listy Ceny wybrać te, które mają być podawane na wejścia modelu. Przycisk Wczytaj ceny pozwala wczytać z pliku numery cen (wówczas nie trzeba ich definiować za pomocą listy Ceny). Opcja ta przydaje się szczególnie wtedy, gdy w na wejściach modelu uwzględnia się duŝe liczby cen historycznych. Pole wyboru Logarytm na panelu Ceny, słuŝy do określenia, czy na wejścia modelu mają być podawane zlogarytmowane wartości cen. Panel Prognozy zapotrzebowania przeznaczony jest do określania tego, które wartości prognozy zapotrzebowania mają być uwzględnione na wejściach modelu. Budowa tego panelu jest analogiczna do budowy panelu Ceny (Rys. A.4.). Panel Dodatkowe wejścia słuŝy do określenia, czy na wejścia modelu ma być podawana godzina, dzień tygodnia, minimum z cen z poprzedniego dnia.
42 Sztuczna inteligencja kontra modele statystyczne 42 Rys. A.4. Okno Wejścia modelu Aplikacja umoŝliwia określenie nie tylko wejść modelu, ale równieŝ jego parametrów. SłuŜy do tego przycisk Parametry modelu w oknie głównym aplikacji (Rys. A. 1.). Za jego pomocą moŝna otworzyć okno Parametry modelu (Rys. A.5.). Rys. A.5. Okno Parametry modelu W polu Warstwa ukryta znajdującym się na panelu Liczba neuronów moŝna ustawić liczbę neuronów w warstwie ukrytej sieci. Dwa pola na panelu Zakres początkowych wartości wag umoŝliwiają określenie granicy dolnej i górnej zakresu, z którego są losowane wagi neuronów sieci przed rozpoczęciem trenowania sieci. Panel Parametry uczenia słuŝy do określenia parametrów wpływających na przebieg uczenia sieci neuronowej. MoŜna określić współczynnik uczenia, epsilon (jeŝeli błąd predykcji w czasie trenowania sieci spadnie poniŝej tej wartości, to uczenie jest przerywane) oraz liczbę epok. Po określeniu zakresu danych uczących i testowych oraz parametrów modelu moŝna rozpocząć kalibrację modelu i prognozowanie. SłuŜy do tego przycisk Prognozuj w oknie głównym aplikacji (Rys. A.1.). Po naciśnięciu tego przycisku odbywa się prognozowanie cen energii dla wszystkich dni ze zdefiniowanego okresu testowego. Po zakończeniu prognozowania na zakładce Prognoza znajdującej się w oknie głównym programu prezentowany jest wykres cen prognozowanych oraz cen rzeczywistych (Rys. A.6.).
43 Sztuczna inteligencja kontra modele statystyczne 43 Rys. A.6. Zakładka Prognoza Electricity Price Predictor oblicza równieŝ wartości róŝnych miar błędu prognozy. Wyniki te są prezentowane na zakładce Miary błędu prognozy (Rys. A.7.). Oddzielnie przedstawione są wartości miar dziennych (Rys. A.7.) i tygodniowych (Rys. A.8.). Rys. A.7. Zakładka Miary błędu prognozy (miary dzienne)
44 Sztuczna inteligencja kontra modele statystyczne 44 Rys. A.8. Zakładka Miary błędu prognozy (miary tygodniowe) A.3. Przygotowanie plików z danymi Na płycie CD w folderze Aplikacja/Dane zamieszczone zostały pliki zawierające dane wykorzystane w eksperymentach. Istnieje oczywiście moŝliwość przygotowania nowych plików zawierających inne dane. Opisany zostanie teraz format, który muszą mieć pliki z danymi, aby mogły być one poprawnie zinterpretowane przez program Electricity Price Predictor. Plik z danymi jest plikiem tekstowym. Jego nazwa musi mieć rozszerzenie.txt. Plik musi zawierać co najmniej jeden wiersz. JeŜeli zawiera więcej niŝ jeden wiersz, to poszczególne wiersze muszą być oddzielone znakiem nowego wiersza i znakiem powrotu karetki. KaŜdy wiersz pliku zawiera datę, godzinę, cenę energii oraz opcjonalnie prognozę zapotrzebowania na energię dla danej godziny. Data nie moŝe być wcześniejsza niŝ 1 stycznia 1753 r. i późniejsza niŝ 31 grudnia 9998 r. Data i godzina musi identyfikować nie więcej niŝ jeden wiersz w pliku. Wiersze nie muszą być posortowane według daty i godziny. Wiersz pliku z danymi musi mieć jedną z dwóch postaci. JeŜeli plik nie zawiera danych dotyczących zapotrzebowania na energię, to wiersz pliku musi mieć postać: <data><znaki oddzielające><godzina><znaki oddzielające><cena> Jeśli natomiast plik zawiera równieŝ prognozy zapotrzebowania, to postać kaŝdego wiersza pliku musi być następująca: <data><znaki oddzielające><godzina><znaki oddzielające><cena> <znaki oddzielające><zapotrzebowanie> <data> musi mieć format RRRRMMDD (np ).
Sztuczna Inteligencja Tematy projektów Sieci Neuronowe
PB, 2009 2010 Sztuczna Inteligencja Tematy projektów Sieci Neuronowe Projekt 1 Stwórz projekt implementujący jednokierunkową sztuczną neuronową złożoną z neuronów typu sigmoidalnego z algorytmem uczenia
IMPLEMENTACJA SIECI NEURONOWYCH MLP Z WALIDACJĄ KRZYŻOWĄ
IMPLEMENTACJA SIECI NEURONOWYCH MLP Z WALIDACJĄ KRZYŻOWĄ Celem ćwiczenia jest zapoznanie się ze sposobem działania sieci neuronowych typu MLP (multi-layer perceptron) uczonych nadzorowaną (z nauczycielem,
PROGNOZOWANIE CENY OGÓRKA SZKLARNIOWEGO ZA POMOCĄ SIECI NEURONOWYCH
InŜynieria Rolnicza 14/2005 Sławomir Francik Katedra InŜynierii Mechanicznej i Agrofizyki Akademia Rolnicza w Krakowie PROGNOZOWANIE CENY OGÓRKA SZKLARNIOWEGO ZA POMOCĄ SIECI NEURONOWYCH Streszczenie W
Metody Sztucznej Inteligencji II
17 marca 2013 Neuron biologiczny Neuron Jest podstawowym budulcem układu nerwowego. Jest komórką, która jest w stanie odbierać i przekazywać sygnały elektryczne. Neuron działanie Jeżeli wartość sygnału
Sztuczne sieci neuronowe
www.math.uni.lodz.pl/ radmat Cel wykładu Celem wykładu jest prezentacja różnych rodzajów sztucznych sieci neuronowych. Biologiczny model neuronu Mózg człowieka składa się z około 10 11 komórek nerwowych,
Algorytm wstecznej propagacji błędów dla sieci RBF Michał Bereta
Algorytm wstecznej propagacji błędów dla sieci RBF Michał Bereta www.michalbereta.pl Sieci radialne zawsze posiadają jedną warstwę ukrytą, która składa się z neuronów radialnych. Warstwa wyjściowa składa
Temat: Sztuczne Sieci Neuronowe. Instrukcja do ćwiczeń przedmiotu INŻYNIERIA WIEDZY I SYSTEMY EKSPERTOWE
Temat: Sztuczne Sieci Neuronowe Instrukcja do ćwiczeń przedmiotu INŻYNIERIA WIEDZY I SYSTEMY EKSPERTOWE Dr inż. Barbara Mrzygłód KISiM, WIMiIP, AGH mrzyglod@ agh.edu.pl 1 Wprowadzenie Sztuczne sieci neuronowe
Podstawy Sztucznej Inteligencji (PSZT)
Podstawy Sztucznej Inteligencji (PSZT) Paweł Wawrzyński Uczenie maszynowe Sztuczne sieci neuronowe Plan na dziś Uczenie maszynowe Problem aproksymacji funkcji Sieci neuronowe PSZT, zima 2013, wykład 12
Zastosowania sieci neuronowych
Zastosowania sieci neuronowych aproksymacja LABORKA Piotr Ciskowski zadanie 1. aproksymacja funkcji odległość punktów źródło: Żurada i in. Sztuczne sieci neuronowe, przykład 4.4, str. 137 Naucz sieć taką
Uczenie sieci typu MLP
Uczenie sieci typu MLP Przypomnienie budowa sieci typu MLP Przypomnienie budowy neuronu Neuron ze skokową funkcją aktywacji jest zły!!! Powszechnie stosuje -> modele z sigmoidalną funkcją aktywacji - współczynnik
wiedzy Sieci neuronowe
Metody detekcji uszkodzeń oparte na wiedzy Sieci neuronowe Instytut Sterowania i Systemów Informatycznych Universytet Zielonogórski Wykład 7 Wprowadzenie Okres kształtowania się teorii sztucznych sieci
Sztuczna inteligencja
Sztuczna inteligencja Wykład 7. Architektury sztucznych sieci neuronowych. Metody uczenia sieci. źródła informacji: S. Osowski, Sieci neuronowe w ujęciu algorytmicznym, WNT 1996 Podstawowe architektury
Zagadnienia optymalizacji i aproksymacji. Sieci neuronowe.
Zagadnienia optymalizacji i aproksymacji. Sieci neuronowe. zajecia.jakubw.pl/nai Literatura: S. Osowski, Sieci neuronowe w ujęciu algorytmicznym. WNT, Warszawa 997. PODSTAWOWE ZAGADNIENIA TECHNICZNE AI
Wstęp do teorii sztucznej inteligencji Wykład II. Uczenie sztucznych neuronów.
Wstęp do teorii sztucznej inteligencji Wykład II Uczenie sztucznych neuronów. 1 - powtórzyć o klasyfikacji: Sieci liniowe I nieliniowe Sieci rekurencyjne Uczenie z nauczycielem lub bez Jednowarstwowe I
1. Historia 2. Podstawy neurobiologii 3. Definicje i inne kłamstwa 4. Sztuczny neuron i zasady działania SSN. Agenda
Sieci neuropodobne 1. Historia 2. Podstawy neurobiologii 3. Definicje i inne kłamstwa 4. Sztuczny neuron i zasady działania SSN Agenda Trochę neurobiologii System nerwowy w organizmach żywych tworzą trzy
Wstęp do sztucznych sieci neuronowych
Wstęp do sztucznych sieci neuronowych Michał Garbowski Zachodniopomorski Uniwersytet Technologiczny w Szczecinie Wydział Informatyki 15 grudnia 2011 Plan wykładu I 1 Wprowadzenie Inspiracja biologiczna
Temat: Sieci neuronowe oraz technologia CUDA
Elbląg, 27.03.2010 Temat: Sieci neuronowe oraz technologia CUDA Przygotował: Mateusz Górny VIII semestr ASiSK Wstęp Sieci neuronowe są to specyficzne struktury danych odzwierciedlające sieć neuronów w
8. Neuron z ciągłą funkcją aktywacji.
8. Neuron z ciągłą funkcją aktywacji. W tym ćwiczeniu zapoznamy się z modelem sztucznego neuronu oraz przykładem jego wykorzystania do rozwiązywanie prostego zadania klasyfikacji. Neuron biologiczny i
Sztuczne sieci neuronowe Ćwiczenia. Piotr Fulmański, Marta Grzanek
Sztuczne sieci neuronowe Ćwiczenia Piotr Fulmański, Marta Grzanek Piotr Fulmański 1 Wydział Matematyki i Informatyki, Marta Grzanek 2 Uniwersytet Łódzki Banacha 22, 90-232, Łódź Polska e-mail 1: fulmanp@math.uni.lodz.pl,
Prognozowanie kierunku ruchu indeksów giełdowych na podstawie danych historycznych.
Metody Sztucznej Inteligencji 2 Projekt Prognozowanie kierunku ruchu indeksów giełdowych na podstawie danych historycznych. Autorzy: Robert Wojciechowski Michał Denkiewicz Mateusz Gągol Wstęp Celem projektu
ZACHODNIOPOMORSKI UNIWERSYTET TECHNOLOGICZNY W SZCZECINIE
ZACHODNIOPOMORSKI UNIWERSYTET TECHNOLOGICZNY W SZCZECINIE INSTYTUT TECHNOLOGII MECHANICZNEJ Metody Sztucznej Inteligencji Sztuczne Sieci Neuronowe Wstęp Sieci neuronowe są sztucznymi strukturami, których
Spis treści. Przedmowa... XI. Rozdział 1. Pomiar: jednostki miar... 1. Rozdział 2. Pomiar: liczby i obliczenia liczbowe... 16
Spis treści Przedmowa.......................... XI Rozdział 1. Pomiar: jednostki miar................. 1 1.1. Wielkości fizyczne i pozafizyczne.................. 1 1.2. Spójne układy miar. Układ SI i jego
Budowa sztucznych sieci neuronowych do prognozowania. Przykład jednostek uczestnictwa otwartego funduszu inwestycyjnego
Budowa sztucznych sieci neuronowych do prognozowania. Przykład jednostek uczestnictwa otwartego funduszu inwestycyjnego Dorota Witkowska Szkoła Główna Gospodarstwa Wiejskiego w Warszawie Wprowadzenie Sztuczne
Podstawy sztucznej inteligencji
wykład 5 Sztuczne sieci neuronowe (SSN) 8 grudnia 2011 Plan wykładu 1 Biologiczne wzorce sztucznej sieci neuronowej 2 3 4 Neuron biologiczny Neuron Jest podstawowym budulcem układu nerwowego. Jest komórką,
Inteligentne systemy przeciw atakom sieciowym
Inteligentne systemy przeciw atakom sieciowym wykład Sztuczne sieci neuronowe (SSN) Joanna Kołodziejczyk 2016 Joanna Kołodziejczyk Inteligentne systemy przeciw atakom sieciowym 2016 1 / 36 Biologiczne
Sztuczne sieci neuronowe (SNN)
Sztuczne sieci neuronowe (SNN) Pozyskanie informacji (danych) Wstępne przetwarzanie danych przygotowanie ich do dalszej analizy Selekcja informacji Ostateczny model decyzyjny SSN - podstawy Sieci neuronowe
Literatura. Sztuczne sieci neuronowe. Przepływ informacji w systemie nerwowym. Budowa i działanie mózgu
Literatura Wykład : Wprowadzenie do sztucznych sieci neuronowych Małgorzata Krętowska Wydział Informatyki Politechnika Białostocka Tadeusiewicz R: Sieci neuronowe, Akademicka Oficyna Wydawnicza RM, Warszawa
PROGNOZOWANIE OSIADAŃ POWIERZCHNI TERENU PRZY UŻYCIU SIECI NEURONOWYCH**
Górnictwo i Geoinżynieria Rok 31 Zeszyt 3 2007 Dorota Pawluś* PROGNOZOWANIE OSIADAŃ POWIERZCHNI TERENU PRZY UŻYCIU SIECI NEURONOWYCH** 1. Wstęp Eksploatacja górnicza złóż ma niekorzystny wpływ na powierzchnię
Najprostsze modele sieci z rekurencją. sieci Hopfielda; sieci uczone regułą Hebba; sieć Hamminga;
Sieci Hopfielda Najprostsze modele sieci z rekurencją sieci Hopfielda; sieci uczone regułą Hebba; sieć Hamminga; Modele bardziej złoŝone: RTRN (Real Time Recurrent Network), przetwarzająca sygnały w czasie
Projekt Sieci neuronowe
Projekt Sieci neuronowe Chmielecka Katarzyna Gr. 9 IiE 1. Problem i dane Sieć neuronowa miała za zadanie nauczyć się klasyfikować wnioski kredytowe. W projekcie wykorzystano dane pochodzące z 110 wniosków
Uczenie sieci neuronowych i bayesowskich
Wstęp do metod sztucznej inteligencji www.mat.uni.torun.pl/~piersaj 2009-01-22 Co to jest neuron? Komputer, a mózg komputer mózg Jednostki obliczeniowe 1-4 CPU 10 11 neuronów Pojemność 10 9 b RAM, 10 10
Sieci neuronowe w Statistica
http://usnet.us.edu.pl/uslugi-sieciowe/oprogramowanie-w-usk-usnet/oprogramowaniestatystyczne/ Sieci neuronowe w Statistica Agnieszka Nowak - Brzezińska Podstawowym elementem składowym sztucznej sieci neuronowej
SIECI NEURONOWE Liniowe i nieliniowe sieci neuronowe
SIECI NEURONOWE Liniowe i nieliniowe sieci neuronowe JOANNA GRABSKA-CHRZĄSTOWSKA Wykłady w dużej mierze przygotowane w oparciu o materiały i pomysły PROF. RYSZARDA TADEUSIEWICZA BUDOWA RZECZYWISTEGO NEURONU
Inteligentne systemy decyzyjne: Uczenie maszynowe sztuczne sieci neuronowe
Inteligentne systemy decyzyjne: Uczenie maszynowe sztuczne sieci neuronowe Trening jednokierunkowych sieci neuronowych wykład 2. dr inż. PawełŻwan Katedra Systemów Multimedialnych Politechnika Gdańska
Optymalizacja ciągła
Optymalizacja ciągła 5. Metoda stochastycznego spadku wzdłuż gradientu Wojciech Kotłowski Instytut Informatyki PP http://www.cs.put.poznan.pl/wkotlowski/ 04.04.2019 1 / 20 Wprowadzenie Minimalizacja różniczkowalnej
Wstęp do teorii sztucznej inteligencji Wykład III. Modele sieci neuronowych.
Wstęp do teorii sztucznej inteligencji Wykład III Modele sieci neuronowych. 1 Perceptron model najprostzszy przypomnienie Schemat neuronu opracowany przez McCullocha i Pittsa w 1943 roku. Przykład funkcji
Sieć Hopfielda. Sieci rekurencyjne. Ewa Adamus. ZUT Wydział Informatyki Instytut Sztucznej Inteligencji i Metod Matematycznych.
Sieci rekurencyjne Ewa Adamus ZUT Wydział Informatyki Instytut Sztucznej Inteligencji i Metod Matematycznych 7 maja 2012 Jednowarstwowa sieć Hopfielda, z n neuronami Bipolarna funkcja przejścia W wariancie
Oprogramowanie Systemów Obrazowania SIECI NEURONOWE
SIECI NEURONOWE Przedmiotem laboratorium jest stworzenie algorytmu rozpoznawania zwierząt z zastosowaniem sieci neuronowych w oparciu o 5 kryteriów: ile zwierzę ma nóg, czy żyje w wodzie, czy umie latać,
WYKORZYSTANIE SIECI NEURONOWEJ DO BADANIA WPŁYWU WYDOBYCIA NA SEJSMICZNOŚĆ W KOPALNIACH WĘGLA KAMIENNEGO. Stanisław Kowalik (Poland, Gliwice)
WYKORZYSTANIE SIECI NEURONOWEJ DO BADANIA WPŁYWU WYDOBYCIA NA SEJSMICZNOŚĆ W KOPALNIACH WĘGLA KAMIENNEGO Stanisław Kowalik (Poland, Gliwice) 1. Wprowadzenie Wstrząsy podziemne i tąpania występujące w kopalniach
Zastosowania sieci neuronowych
Zastosowania sieci neuronowych klasyfikacja LABORKA Piotr Ciskowski zadanie 1. klasyfikacja zwierząt sieć jednowarstwowa żródło: Tadeusiewicz. Odkrywanie własności sieci neuronowych, str. 159 Przykład
Rozdział 1 Sztuczne sieci neuronowe. Materiały do zajęć dydaktycznych - na podstawie dokumentacji programu Matlab opracował Dariusz Grzesiak
2 Rozdział 1 Sztuczne sieci neuronowe. 3 Sztuczna sieć neuronowa jest zbiorem prostych elementów pracujących równolegle, których zasada działania inspirowana jest biologicznym systemem nerwowym. Sztuczną
Sieci neuronowe w Statistica. Agnieszka Nowak - Brzezioska
Sieci neuronowe w Statistica Agnieszka Nowak - Brzezioska Podstawowym elementem składowym sztucznej sieci neuronowej jest element przetwarzający neuron. Schemat działania neuronu: x1 x2 w1 w2 Dendrites
synaptycznych wszystko to waży 1.5 kg i zajmuje objętość około 1.5 litra. A zużywa mniej energii niż lampka nocna.
Sieci neuronowe model konekcjonistyczny Plan wykładu Mózg ludzki a komputer Modele konekcjonistycze Perceptron Sieć neuronowa Uczenie sieci Sieci Hopfielda Mózg ludzki a komputer Twój mózg to 00 000 000
Elementy inteligencji obliczeniowej
Elementy inteligencji obliczeniowej Paweł Liskowski Institute of Computing Science, Poznań University of Technology 9 October 2018 1 / 19 Perceptron Perceptron (Rosenblatt, 1957) to najprostsza forma sztucznego
Analiza metod prognozowania kursów akcji
Analiza metod prognozowania kursów akcji Izabela Łabuś Wydział InŜynierii Mechanicznej i Informatyki Kierunek informatyka, Rok V Specjalność informatyka ekonomiczna Politechnika Częstochowska izulka184@o2.pl
Po co w ogóle prognozujemy?
Po co w ogóle prognozujemy? Pojęcie prognozy: racjonalne, naukowe przewidywanie przyszłych zdarzeń stwierdzenie odnoszącym się do określonej przyszłości formułowanym z wykorzystaniem metod naukowym, weryfikowalnym
Sieci neuronowe jako sposób na optymalizacje podejmowanych decyzji. Tomasz Karczyoski Wydział W-08 IZ
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
Rekurencje. Jeśli algorytm zawiera wywołanie samego siebie, jego czas działania moŝe być określony rekurencją. Przykład: sortowanie przez scalanie:
Rekurencje Jeśli algorytm zawiera wywołanie samego siebie, jego czas działania moŝe być określony rekurencją. Przykład: sortowanie przez scalanie: T(n) = Θ(1) (dla n = 1) T(n) = 2 T(n/2) + Θ(n) (dla n
Weryfikacja hipotez statystycznych, parametryczne testy istotności w populacji
Weryfikacja hipotez statystycznych, parametryczne testy istotności w populacji Dr Joanna Banaś Zakład Badań Systemowych Instytut Sztucznej Inteligencji i Metod Matematycznych Wydział Informatyki Politechniki
I EKSPLORACJA DANYCH
I EKSPLORACJA DANYCH Zadania eksploracji danych: przewidywanie Przewidywanie jest podobne do klasyfikacji i szacowania, z wyjątkiem faktu, że w przewidywaniu wynik dotyczy przyszłości. Typowe zadania przewidywania
Widzenie komputerowe
Widzenie komputerowe Uczenie maszynowe na przykładzie sieci neuronowych (3) źródła informacji: S. Osowski, Sieci neuronowe w ujęciu algorytmicznym, WNT 1996 Zdolność uogólniania sieci neuronowej R oznaczenie
Optymalizacja systemów
Optymalizacja systemów Laboratorium - problem detekcji twarzy autorzy: A. Gonczarek, J.M. Tomczak, S. Zaręba, P. Klukowski Cel zadania Celem zadania jest zapoznanie się z gradientowymi algorytmami optymalizacji
Zastosowanie metod eksploracji danych Data Mining w badaniach ekonomicznych SAS Enterprise Miner. rok akademicki 2013/2014
Zastosowanie metod eksploracji danych Data Mining w badaniach ekonomicznych SAS Enterprise Miner rok akademicki 2013/2014 Sieci neuronowe Sieci neuronowe W XIX wieku sformułowano teorię opisującą podstawowe
Dla naszego obiektu ciągłego: przy czasie próbkowania T p =2.
1. Celem zadania drugiego jest przeprowadzenie badań symulacyjnych układu regulacji obiektu G(s), z którym zapoznaliśmy się w zadaniu pierwszym, i regulatorem cyfrowym PID, którego parametry zostaną wyznaczone
WYKORZYSTANIE SZTUCZNYCH SIECI NEURONOWYCH W PROGNOZOWANIU
WYKORZYSTANIE SZTUCZNYCH SIECI NEURONOWYCH W PROGNOZOWANIU THE USE OF ARTIFICIAL NEURAL NETWORKS IN FORECASTING Konrad BAJDA, Sebastian PIRÓG Resume Artykuł opisuje wykorzystanie sztucznych sieci neuronowych
Uczenie się pojedynczego neuronu. Jeśli zastosowana zostanie funkcja bipolarna s y: y=-1 gdy z<0 y=1 gdy z>=0. Wówczas: W 1 x 1 + w 2 x 2 + = 0
Uczenie się pojedynczego neuronu W0 X0=1 W1 x1 W2 s f y x2 Wp xp p x i w i=x w+wo i=0 Jeśli zastosowana zostanie funkcja bipolarna s y: y=-1 gdy z=0 Wówczas: W 1 x 1 + w 2 x 2 + = 0 Algorytm
3. Modele tendencji czasowej w prognozowaniu
II Modele tendencji czasowej w prognozowaniu 1 Składniki szeregu czasowego W teorii szeregów czasowych wyróżnia się zwykle następujące składowe szeregu czasowego: a) składowa systematyczna; b) składowa
Testy nieparametryczne
Testy nieparametryczne Testy nieparametryczne możemy stosować, gdy nie są spełnione założenia wymagane dla testów parametrycznych. Stosujemy je również, gdy dane można uporządkować według określonych kryteriów
Wstęp do sieci neuronowych, wykład 9 Sieci rekurencyjne. Autoasocjator Hopfielda
Wstęp do sieci neuronowych, wykład 9. M. Czoków, J. Piersa 2010-12-07 1 Sieci skierowane 2 Modele sieci rekurencyjnej Energia sieci 3 Sieci skierowane Sieci skierowane Sieci skierowane graf połączeń synaptycznych
Sieć przesyłająca żetony CP (counter propagation)
Sieci neuropodobne IX, specyficzne architektury 1 Sieć przesyłająca żetony CP (counter propagation) warstwa Kohonena: wektory wejściowe są unormowane jednostki mają unormowane wektory wag jednostki są
Statystyka i opracowanie danych Podstawy wnioskowania statystycznego. Prawo wielkich liczb. Centralne twierdzenie graniczne. Estymacja i estymatory
Statystyka i opracowanie danych Podstawy wnioskowania statystycznego. Prawo wielkich liczb. Centralne twierdzenie graniczne. Estymacja i estymatory Dr Anna ADRIAN Paw B5, pok 407 adrian@tempus.metal.agh.edu.pl
Statystyka hydrologiczna i prawdopodobieństwo zjawisk hydrologicznych.
Statystyka hydrologiczna i prawdopodobieństwo zjawisk hydrologicznych. Statystyka zajmuje się prawidłowościami zaistniałych zdarzeń. Teoria prawdopodobieństwa dotyczy przewidywania, jak często mogą zajść
Lekcja 5: Sieć Kohonena i sieć ART
Lekcja 5: Sieć Kohonena i sieć ART S. Hoa Nguyen 1 Materiał Sieci Kohonena (Sieć samo-organizująca) Rysunek 1: Sieć Kohonena Charakterystyka sieci: Jednowarstwowa jednokierunkowa sieć. Na ogół neurony
Wykład z Technologii Informacyjnych. Piotr Mika
Wykład z Technologii Informacyjnych Piotr Mika Uniwersalna forma graficznego zapisu algorytmów Schemat blokowy zbiór bloków, powiązanych ze sobą liniami zorientowanymi. Jest to rodzaj grafu, którego węzły
Sztuczne siei neuronowe - wprowadzenie
Metody Sztucznej Inteligencji w Sterowaniu Ćwiczenie 2 Sztuczne siei neuronowe - wprowadzenie Przygotował: mgr inż. Marcin Pelic Instytut Technologii Mechanicznej Politechnika Poznańska Poznań, 2 Wstęp
STATYSTYKA MATEMATYCZNA. rachunek prawdopodobieństwa
STATYSTYKA MATEMATYCZNA rachunek prawdopodobieństwa treść Zdarzenia losowe pojęcie prawdopodobieństwa prawo wielkich liczb zmienne losowe rozkłady teoretyczne zmiennych losowych Zanim zajmiemy się wnioskowaniem
Definicja pochodnej cząstkowej
1 z 8 gdzie punkt wewnętrzny Definicja pochodnej cząstkowej JeŜeli iloraz ma granicę dla to granicę tę nazywamy pochodną cząstkową funkcji względem w punkcie. Oznaczenia: Pochodną cząstkową funkcji względem
Aproksymacja funkcji a regresja symboliczna
Aproksymacja funkcji a regresja symboliczna Problem aproksymacji funkcji polega na tym, że funkcję F(x), znaną lub określoną tablicą wartości, należy zastąpić inną funkcją, f(x), zwaną funkcją aproksymującą
BIOCYBERNETYKA SIECI NEURONOWE. Akademia Górniczo-Hutnicza. Wydział Elektrotechniki, Automatyki, Informatyki i Inżynierii Biomedycznej.
Akademia Górniczo-Hutnicza Wydział Elektrotechniki, Automatyki, Informatyki i Inżynierii Biomedycznej BIOCYBERNETYKA Adrian Horzyk SIECI NEURONOWE www.agh.edu.pl Mózg inspiruje nas od wieków Co takiego
Wstęp do sieci neuronowych, wykład 6 Wsteczna propagacja błędu - cz. 3
Wstęp do sieci neuronowych, wykład 6 Wsteczna propagacja błędu - cz. 3 Andrzej Rutkowski, Maja Czoków, Jarosław Piersa Wydział Matematyki i Informatyki, Uniwersytet Mikołaja Kopernika 2018-11-05 Projekt
Uczenie Wielowarstwowych Sieci Neuronów o
Plan uczenie neuronu o ci gªej funkcji aktywacji uczenie jednowarstwowej sieci neuronów o ci gªej funkcji aktywacji uczenie sieci wielowarstwowej - metoda propagacji wstecznej neuronu o ci gªej funkcji
Seminarium magisterskie. Dyskusja nad tematem pracy magisterskiej pisanej pod kierunkiem pani Dr hab. Małgorzaty Doman
Seminarium magisterskie Dyskusja nad tematem pracy magisterskiej pisanej pod kierunkiem pani Dr hab. Małgorzaty Doman Plan wystąpienia Ogólnie o sztucznych sieciach neuronowych Temat pracy magisterskiej
Obrona rozprawy doktorskiej Neuro-genetyczny system komputerowy do prognozowania zmiany indeksu giełdowego
IBS PAN, Warszawa 9 kwietnia 2008 Obrona rozprawy doktorskiej Neuro-genetyczny system komputerowy do prognozowania zmiany indeksu giełdowego mgr inż. Marcin Jaruszewicz promotor: dr hab. inż. Jacek Mańdziuk,
METODY INŻYNIERII WIEDZY
METODY INŻYNIERII WIEDZY SZTUCZNE SIECI NEURONOWE MLP Adrian Horzyk Akademia Górniczo-Hutnicza Wydział Elektrotechniki, Automatyki, Informatyki i Inżynierii Biomedycznej Katedra Automatyki i Inżynierii
Sztuczne sieci neuronowe i sztuczna immunologia jako klasyfikatory danych. Dariusz Badura Letnia Szkoła Instytutu Matematyki 2010
Sztuczne sieci neuronowe i sztuczna immunologia jako klasyfikatory danych Dariusz Badura Letnia Szkoła Instytutu Matematyki 2010 Sieci neuronowe jednokierunkowa wielowarstwowa sieć neuronowa sieci Kohonena
Statystyka od podstaw Janina Jóźwiak, Jarosław Podgórski
Statystyka od podstaw Janina Jóźwiak, Jarosław Podgórski Książka jest nowoczesnym podręcznikiem przeznaczonym dla studentów uczelni i wydziałów ekonomicznych. Wykład podzielono na cztery części. W pierwszej
HAŁASU Z UWZGLĘDNIENIEM ZJAWISK O CHARAKTERZE NIELINIOWYM
ZASTOSOWANIE SIECI NEURONOWYCH W SYSTEMACH AKTYWNEJ REDUKCJI HAŁASU Z UWZGLĘDNIENIEM ZJAWISK O CHARAKTERZE NIELINIOWYM WPROWADZENIE Zwalczanie hałasu przy pomocy metod aktywnych redukcji hałasu polega
MODELOWANIE RZECZYWISTOŚCI
MODELOWANIE RZECZYWISTOŚCI Daniel Wójcik Instytut Biologii Doświadczalnej PAN Szkoła Wyższa Psychologii Społecznej d.wojcik@nencki.gov.pl dwojcik@swps.edu.pl tel. 022 5892 424 http://www.neuroinf.pl/members/danek/swps/
Systemy pomiarowo-diagnostyczne. Metody uczenia maszynowego wykład I dr inż. 2015/2016
Systemy pomiarowo-diagnostyczne Metody uczenia maszynowego wykład I dr inż. Bogumil.Konopka@pwr.edu.pl 2015/2016 1 Wykład I - plan Sprawy organizacyjne Uczenie maszynowe podstawowe pojęcia Proces modelowania
Algorytmy sztucznej inteligencji
Algorytmy sztucznej inteligencji Dynamiczne sieci neuronowe 1 Zapis macierzowy sieci neuronowych Poniżej omówione zostaną części składowe sieci neuronowych i metoda ich zapisu za pomocą macierzy. Obliczenia
INSTYTUT ELEKTROENERGETYKI POLITECHNIKI ŁÓDZKIEJ BADANIE PRZETWORNIKÓW POMIAROWYCH
INSTYTUT ELEKTROENERGETYKI POLITECHNIKI ŁÓDZKIEJ ZAKŁAD ELEKTROWNI LABORATORIUM POMIARÓW I AUTOMATYKI W ELEKTROWNIACH BADANIE PRZETWORNIKÓW POMIAROWYCH Instrukcja do ćwiczenia Łódź 1996 1. CEL ĆWICZENIA
Drzewa Decyzyjne, cz.2
Drzewa Decyzyjne, cz.2 Inteligentne Systemy Decyzyjne Katedra Systemów Multimedialnych WETI, PG Opracowanie: dr inŝ. Piotr Szczuko Podsumowanie poprzedniego wykładu Cel: przewidywanie wyniku (określania
Wstęp do sieci neuronowych, wykład 10 Sieci rekurencyjne. Autoasocjator Hopfielda
Wstęp do sieci neuronowych, wykład 10. Maja Czoków, Jarosław Piersa Wydział Matematyki i Informatyki, Uniwersytet Mikołaja Kopernika 2011-12-13 1 Modele sieci rekurencyjnej Energia sieci 2 3 Modele sieci
Prof. Stanisław Jankowski
Prof. Stanisław Jankowski Zakład Sztucznej Inteligencji Zespół Statystycznych Systemów Uczących się p. 228 sjank@ise.pw.edu.pl Zakres badań: Sztuczne sieci neuronowe Maszyny wektorów nośnych SVM Maszyny
Sztuczne sieci neuronowe
Sztuczne sieci neuronowe Paweł Bęczkowski ETI 9.1 1 Czym określamy sztuczną sieć neuronową Sieć neuronowa (sztuczna sieć neuronowa) to ogólna nazwa struktur matematycznych i ich programowych lub sprzętowych
SIEĆ NEURONOWA JAKO NARZĘDZIE APROKSYMACJI I KLASYFIKACJI DANYCH. Jakub Karbowski Gimnazjum nr 17 w Krakowie
SIEĆ NEURONOWA JAKO NARZĘDZIE APROKSYMACJI I KLASYFIKACJI DANYCH Jakub Karbowski Gimnazjum nr 17 w Krakowie KRAKÓW 2017 1. Spis treści 2. WSTĘP 2 3. SIECI NEURONOWE 2 3.1. Co to są sieci neuronowe... 2
FORECASTING THE DISTRIBUTION OF AMOUNT OF UNEMPLOYED BY THE REGIONS
FOLIA UNIVERSITATIS AGRICULTURAE STETINENSIS Folia Univ. Agric. Stetin. 007, Oeconomica 54 (47), 73 80 Mateusz GOC PROGNOZOWANIE ROZKŁADÓW LICZBY BEZROBOTNYCH WEDŁUG MIAST I POWIATÓW FORECASTING THE DISTRIBUTION
LABORATORIUM Z FIZYKI
LABORATORIUM Z FIZYKI LABORATORIUM Z FIZYKI I PRACOWNIA FIZYCZNA C w Gliwicach Gliwice, ul. Konarskiego 22, pokoje 52-54 Regulamin pracowni i organizacja zajęć Sprawozdanie (strona tytułowa, karta pomiarowa)
Spis treści 3 SPIS TREŚCI
Spis treści 3 SPIS TREŚCI PRZEDMOWA... 1. WNIOSKOWANIE STATYSTYCZNE JAKO DYSCYPLINA MATEMATYCZNA... Metody statystyczne w analizie i prognozowaniu zjawisk ekonomicznych... Badania statystyczne podstawowe
wiedzy Sieci neuronowe (c.d.)
Metody detekci uszkodzeń oparte na wiedzy Sieci neuronowe (c.d.) Instytut Sterowania i Systemów Informatycznych Universytet Zielonogórski Wykład 8 Metody detekci uszkodzeń oparte na wiedzy Wprowadzenie
Sztuczne sieci neuronowe. Uczenie, zastosowania
Wydział Zarządzania AGH Katedra Informatyki Stosowanej Sztuczne sieci neuronowe. Uczenie, zastosowania Inteligencja Sztuczne sieci neuronowe Metody uczenia Budowa modelu Algorytm wstecznej propagacji błędu
Streszczenie. Słowa kluczowe: modele neuronowe, parametry ciągników rolniczych
InŜynieria Rolnicza 11/2006 Sławomir Francik Katedra InŜynierii Mechanicznej i Agrofizyki Akademia Rolnicza w Krakowie METODA PROGNOZOWANIA WARTOŚCI PARAMETRÓW TECHNICZNYCH NOWOCZESNYCH MASZYN ROLNICZYCH
Zastosowanie sztucznych sieci neuronowych w prognozowaniu szeregów czasowych (prezentacja 2)
Zastosowanie sztucznych sieci neuronowych w prognozowaniu szeregów czasowych (prezentacja 2) Ewa Wołoszko Praca pisana pod kierunkiem Pani dr hab. Małgorzaty Doman Plan tego wystąpienia Teoria Narzędzia
Politechnika Lubelska
Politechnika Lubelska Wydział Zarządzania i Podstaw Techniki Temat: Sieć neuronowa do klasyfikacji rodzaju węgla kamiennego. Prowadzący: Wykonał: Dr Popko Artur Marek Harasimiuk ETI 5.3. (gr. lab. 5.5)
ANALIZA HIERARCHICZNA PROBLEMU W SZACOWANIU RYZYKA PROJEKTU INFORMATYCZNEGO METODĄ PUNKTOWĄ. Joanna Bryndza
ANALIZA HIERARCHICZNA PROBLEMU W SZACOWANIU RYZYKA PROJEKTU INFORMATYCZNEGO METODĄ PUNKTOWĄ Joanna Bryndza Wprowadzenie Jednym z kluczowych problemów w szacowaniu poziomu ryzyka przedsięwzięcia informatycznego
Uczenie sieci radialnych (RBF)
Uczenie sieci radialnych (RBF) Budowa sieci radialnej Lokalne odwzorowanie przestrzeni wokół neuronu MLP RBF Budowa sieci radialnych Zawsze jedna warstwa ukryta Budowa neuronu Neuron radialny powinien
Klasa I szkoły ponadgimnazjalnej matematyka
Klasa I szkoły ponadgimnazjalnej matematyka. Informacje ogólne Badanie osiągnięć uczniów I klas odbyło się 7 września 2009 r. Wyniki badań nadesłało 2 szkół. Analizie poddano wyniki 992 uczniów z 4 klas
Wyznaczanie symulacyjne granicy minimalnej w portfelu Markowitza
Wyznaczanie symulacyjne granicy minimalnej w portfelu Markowitza Łukasz Kanar UNIWERSYTET WARSZAWSKI WYDZIAŁ NAUK EKONOMICZNYCH WARSZAWA 2008 1. Portfel Markowitza Dany jest pewien portfel n 1 spółek giełdowych.
Rozdział 2: Metoda największej wiarygodności i nieliniowa metoda najmniejszych kwadratów
Rozdział : Metoda największej wiarygodności i nieliniowa metoda najmniejszych kwadratów W tym rozdziale omówione zostaną dwie najpopularniejsze metody estymacji parametrów w ekonometrycznych modelach nieliniowych,
NEURAL NETWORK ) FANN jest biblioteką implementującą SSN, którą moŝna wykorzystać. w C, C++, PHP, Pythonie, Delphi a nawet w środowisku. Mathematica.
Wykorzystanie sztucznych sieci neuronowych do rozpoznawania języków: polskiego, angielskiego i francuskiego Tworzenie i nauczanie sieci przy pomocy języka C++ i biblioteki FANN (Fast Artificial Neural