Pobierz artykuł PDF
Transkrypt
Pobierz artykuł PDF
MODEL NEURONOWY DO PROGNOZOWANIA POBORU WODY W SIECI WODOCI GOWEJ1 IZABELA ROJEK Uniwersytet Kazimierza Wielkiego w Bydgoszczy Streszczenie W referacie przedstawiono model prognostyczny w postaci sieci neuronowej do przewidywania poboru wody w sieci wodocigowej. Do budowy modelu prognostycznego zastosowano sie jednokierunkow wielowarstwow ze wsteczn propagacj błdu. Badania wykonano dla wybranego wzła sieci wodocigowej obsługujcego osiedle domków jednorodzinnych. Modele prognostyczne wykonano dla dni roboczych, soboty i niedzieli. Szczegółowo w referacie przedstawiono model dla niedzieli. Słowa kluczowe: model prognostyczny, sie neuronowa, sie wodocigowa 1. Wprowadzenie We współczesnym wiecie firmy i ludzie zasypywani s danymi i informacjami z rónych ródeł. Niestety te cenne dane, których zebranie i zestawienie kosztuje firmy miliony, marnuj si w bazach danych i hurtowniach danych. Problemem jest zbyt mała liczba dostpnych i wykwalifikowanych analityków, którzy potrafi przemieni te wszystkie dane w wiedz. Wnikliwa analiza tych informacji moe okaza si pomocna w nawizaniu relacji z klientem, pozyskaniu jego lojalnoci i skierowaniu do niego oferty dostosowanej do jego potrzeb. Dlatego włanie potrzebna, wrcz niezbdna jest eksploracja danych (ang. data mining) [1,3]. Data Mining jest to proces poszukiwania nowych, nietrywialnych i uytecznych wzorców w zbiorach danych. Data Mining opiera si na trzech filarach: dane, techniki i modelowanie. Nie mona tych procesów automatyzowa. Istotna jest osoba, która inicjuje przetwarzanie danych. Potrzebna jest ingerencja uytkownika. Techniki Data Miningu - drzewa decyzyjne, sieci neuronowe, regresja s implementowane na róne narzdzia zwane Enterprise Miner. Data Mining ma na celu uwiadomienie klientowi złoonoci posiadanych przez niego danych i moliwo efektywnego ich wykorzystania. Dla celów Data Miningu tworzone s hurtownie danych, pozyskujce informacje z wielu baz i zbiorów danych, czsto o rozproszonym, wrcz globalnym charakterze. Praktyczna korzy eksploracji danych ujawnia si w dwóch dziedzinach, którymi s: – prognozowanie (ang. prediction, forecasting), – opis (ang. description). Prognozowanie polega na wykorzystaniu znanych w chwili obecnej wartoci interesujcych nas zmiennych (lub pól w bazie danych) w celu przewidywania wartoci tych lub innych zmiennych w przyszłoci. Opis polega na tworzeniu czytelnej i zrozumiałej dla człowieka reprezentacji 1 Artykuł napisany w ramach realizacji projektu rozwojowego Ministerstwa Nauki i Szkolnictwa Wyszego R11 001 01. 174 POLSKIE STOWARZYSZENIE ZARZDZANIA WIEDZ Seria: Studia i Materiały, nr 10, 2007 wiedzy wydobytej z danych w postaci wykresów, wzorów, reguł, tabel. Opisy takie, w postaci modeli deskrypcyjnych, s czsto uywane do wspomagania procesów decyzyjnych. W referacie przedstawiono model prognostyczny w postaci sieci neuronowej do przewidywania poboru wody w wzłach sieci wodocigowej. 2. Prognozowanie jako zadanie eksploracji danych Eksploracja danych nie jest łatwym procesem. Mona wyróni sze podstawowych kroków, które pozwol uczyni ten proces skutecznym [1,3]. 1. Zrozumie i starannie zdefiniowa problem/zadanie, który jest przedmiotem eksploracji. Ponadto, naley zanalizowa i zrozumie otoczenie, w którym ten problem wystpuje. 2. Wybra zbiór danych, w których przeprowadzimy eksploracj. Zbiór ten musi by znaczc próbk całego zasobu danych. Wybór dotyczy obiektów, ich atrybutów (zmiennych), przedziału czasu, zakresu geograficznego, wielkoci próbki itd. 3. Zdecydowa jak przygotowa dane do przetwarzania. Na przykład: czy chleb i ciastka tortowe nale do grupy pieczywo? Czy wiek reprezentowa jako przedział (np. 40-45 lat), czy jako liczb (np. 40 lat). 4. Wybra algorytm (lub ich kombinacje) eksploracji danych i wykona program realizujcy ten algorytm na przygotowanych danych. Czsto w sposób iteracyjny naley wróci do kroku 3., a nawet 2. jeli rezultaty nie s zadawalajce. 5. Zanalizowa wyniki wykonania programu i wybra te, które stanowi rezultat pracy. W tym miejscu potrzebna jest cisła współpraca analityka i specjalisty w dziedzinie, która jest poddawana badaniu. Wyniki naley przedstawi w formie przyjtej w organizacji, gdzie proces eksploracji jest prowadzony. 6. Przedłoy wyniki kierownictwu organizacji i zasugerowa sposób ich wykorzystania. Przewidywanie od innych metod eksploracji danych takich jak klasyfikacja i szacowanie róni si tym, e w przewidywaniu wynik dotyczy przyszłoci. Metody i techniki wykorzystywane do prognozowania obejmuj tradycyjne metody szacowania wartoci punktu i przedziału ufnoci, prost regresj liniow i korelacj oraz regresj wielokrotn, jak równie metody eksploracji danych i odkrywania wiedzy, takie jak sieci neuronowe, drzewa decyzyjne i metoda k-najbliszych ssiadów. 3. Sie neuronowa jako model prognostyczny Sieci neuronowe zwracaj na wyjciu wartoci cigłe, dlatego znakomicie nadaj si do szacowania i przewidywania. Sieci takie mog analizowa jednoczenie wiele zmiennych. Moliwe jest stworzenie modelu, nawet gdy rozwizanie ma du złoono. Wadami sieci neuronowych jest trudno w ustaleniu parametrów architektury, wpadanie w minima lokalne, długi czas uczenia si sieci i brak jasnej interpretacji [2,4]. Do budowy modelu prognostycznego zastosowano sie jednokierunkow wielowarstwow ze wsteczn propagacj błdu. Przepływ sygnałów odbywa si od wejcia do wyjcia. Sieci wielowarstwowe zbudowane s z wielu warstw neuronów. Wejcie kadego neuronu z danej warstwy ma połczenie z wyjciami wszystkich neuronów w warstwie poprzedniej. W modelu sieci wielowarstwowej pierwsza warstwa jest nazywana warstw wejciow, ostatnia – wyjciow, a pozosta- Izabela Rojek Model neuronowy do prognozowania poboru wody w sieci wodocigowej 175 łe – warstwami ukrytymi. Warstwa wejciowa ma za zadanie tylko wprowadzenie informacji do sieci, nie przetwarza danych, ale podaje je do nastpnej warstwy. Warstwa ukryta jest to warstwa posiadajca wagi i podlega adaptacji w procesie uczenia si. W ogólnym przypadku liczba warstw ukrytych moe by dowolna, ze wzgldu jednak na skrócenie czasu oblicze stosuje si przewanie jedn lub dwie warstwy ukryte. Zarówno liczb tych warstw, jak i liczb neuronów w kadej z nich najczciej dobiera si eksperymentalnie. Sie, w której jest zbyt mała liczba neuronów ukrytych powoduje niezdolno do zgromadzenia dostatecznej wiedzy o rozwizywanym problemie, a zbyt bogata architektura jest z kolei przyczyn upoledzenia tzw. generalizacji (sie zapamituje zbyt dokładnie dane treningowe, co powoduje kłopoty z uogólnieniem ich na przypadki nie objte procesem uczenia). Kady z neuronów z warstwy wejciowej połczony jest z neuronem z warstwy wyjciowej – tak sie nazywamy w pełni połczon. Warstwa wyjciowa równie ma charakter adaptacyjny, ale w przeciwiestwie do warstw ukrytych nie przekazuje ona informacji do kolejnych neuronów, ale wyprowadza je na zewntrz danej sieci. Dobór liczby neuronów w warstwie wejciowej jest uwarunkowany wymiarem wektora danych x. Podobnie jest w warstwie wyjciowej, w której liczba neuronów równa si wymiarowi wektora zadanego d. Problemem pozostaje dobór warstw ukrytych i liczby neuronów w kadej warstwie. W ogólnym przypadku liczba warstw ukrytych moe by dowolna, ze wzgldu jednak na skrócenie czasu oblicze stosuje si przewanie jedn lub dwie warstwy ukryte. Model neuronu jest typu sigmoidalnego. Składa si on z elementu sumacyjnego, do którego dochodz sygnały wejciowe x1, x2, ..., xN tworzce wektor wejciowy x=[x1, x2, ..., xN]T pomnoone przez przyporzdkowane im wagi wi1, wi2, ..., wiN tworzce wektor wag i-tego neuronu wi=[wi1, wi2,..., wiN]T oraz warto wi0 zwan progiem. Sygnał wyjciowy sumatora oznaczono ui (3.1.), przy czym u i = ¦ wij x j + wi 0 (3.1.) sygnał jest podawany na blok realizujcy nieliniow funkcj aktywacji f(ui). Funkcja ta przyjmuje posta sigmoidaln (zachowuje wtedy cigło i proces uczenia sieci jest łatwiejszy. Posta funkcji stanowi cigłe przyblienie funkcji skokowej, przy której sygnał wyjciowy neuronu yi przyjmuje dowolne wartoci z przedziału [0,1] dla funkcji unipolarnej. Funkcja sigmoidalna unipolarna (3.2.) to: f u (u i ) = 1 1 + exp(− β ⋅ u i ) (3.2.) Metod uczenia sieci jednokierunkowych sigmoidalnych jest optymalizacja funkcji celu zdefiniowanej dla sieci, minimalizujca błd midzy wartociami danymi i aktualnie otrzymanymi na wyjciu sieci dla wszystkich danych uczcych. Jest to uczenie pod nadzorem. Sygnałom uczcym towarzysz wartoci dane na wyjciu sieci. Celem uczenia pod nadzorem jest minimalizacja odpowiednio zdefiniowanej funkcji celu, która w wyniku umoliwi dopasowanie wartoci aktualnych odpowiednich neuronów wyjciowych (wektor y) do wartoci danych (wektor d) dla wszystkich p par uczcych. Za funkcj celu przyjmuje si błd redniokwadratowy. Std w praktyce dla uzyskania dobrych zdolnoci uogólniania sieci naley ogranicza liczb neuronów ukrytych oraz liczb powiza midzy neuronowych, jak równie stosowa takie metody wstpnego prze- 176 POLSKIE STOWARZYSZENIE ZARZDZANIA WIEDZ Seria: Studia i Materiały, nr 10, 2007 tworzenia danych, które umoliwiaj zmniejszenie wymiarowoci wektora wejciowego sieci. Najlepsze wyniki w uczeniu sieci mona osign przez odpowiedni dobór wstpnych wartoci wag sieci. W wikszoci zastosowa uywa si głównie losowego doboru wag, przyjmujc rozkład równomierny w okrelonym przedziale liczbowym [0,1] (tzw. randomizacja wag). Dla sieci zawierajcych, co najmniej jedn warstw ukryt metoda propagacji błdu wstecz (Back Propagation – BP) jest jedn z najbardziej popularnych technik uczenia sieci. Moe by ona zastosowana do sieci o dowolnej liczbie warstw, przy czym musz by co najmniej dwie warstwy, w których s ustawiane wartoci wag. 4. Model neuronowy do prognozowania poboru wody w wle sieci wodocigowej Badania eksperymentalne zostały przeprowadzone dla wybranego wzła sieci wodocigowej obsługujcego osiedle domków rodzinnych. Dla wzła wyznaczono 3 róne modele: dzie roboczy, sobota, niedziela. Celem uycia metodyki eksploracji danych było uzyskanie modeli do prognozowania poboru wody [5]. W referacie pokazano metodyk tworzenia modelu do prognozowania poboru wody na przykładzie danych z niedzieli. • Zrozumienie danych i przygotowanie danych Dokonano opracowania danych w formie czyszczenia i ich przekształcenia. Podzielono dane na okresy: dzie roboczy, sobota i niedziela. Uzupełniono brakujce wartoci. Na rys. 1. pokazano fragment pliku z danymi. ROK MIESIC DZIE GODZINA PRZEPŁYW 2007 2007 1 1 14 14 0 1 6 3 Rysunek 1. Fragment pliku z danymi dla wzła – niedziela • Modelowanie – sie neuronowa Zastosowano model sieci neuronowej jednokierunkowej, wielowarstwowej ze wsteczn propagacj błdu. Dane zostały podzielone na zbiór uczcy (80% danych) i zbiór testujcy (20% danych). Na rys. 2 pokazano fragment pliku uczcego. Dane s pogrupowane według roku, miesica, dnia, godziny. Znajc model obiektu naley okreli jego zachowanie dla rónych wymusze pojawiajcych si na wejciu tego obiektu. Interesujce jest okrelenie przyszłego stanu obiektu dla czasu t+n, gdzie n stanowi horyzont prognozy, t zawiera histori zmian wejcia do chwili biecej. W celu zbudowania cigów czasowych, które dalej s wykorzystywane w modelu predykcyjnym zostały dodane wartoci przepływu sprzed chwili t (przepływ t-1) i po t (przepływ t+1). rok 2007 2007 2007 miesic 1 1 1 dzie 14 14 14 godzina 0 1 2 we przepływ t-1 0 6 3 we przepływ 6 3 3 Rysunek 2. Fragment pliku uczcego wy przepływ t+1 3 3 3 Izabela Rojek Model neuronowy do prognozowania poboru wody w sieci wodocigowej 177 Zbudowane zostały róne modele sieci neuronowej. Przetestowano struktury z dwoma wejciami i jednym wyjciem oraz warstw ukryt zawierajc 5, 10 lub 15 neuronów. Te struktury uczono z rónymi warunkami koczcymi proces uczenia, tzn. koniec uczenia nastpił po osigniciu liczby epok 1000, 10000 lub 100000. Porównano dla wszystkich kombinacji błd RMS (rys. 3). Porównanie błdu RMS dla liczby neuronów 5, 10 i 15 błd RMS 0,1 0,05 0 1000 10000 1E+05 5 0,0783 0,0741 0,059 10 10 0,0843 0,0791 0,0639 15 15 0,0856 0,0829 0,0771 5 liczba epok Rysunek 3. Analiza wyników błdu RMS dla 5, 10 i 15 neuronów Najbardziej dokładnym modelem okazała si sie neuronowa o strukturze 2- 10 -1, przy zakoczeniu uczenia przy wartoci 10000 epok. Potwierdziły to otrzymane wyniki dla nowych wartoci wejciowych. • Ewaluacja – ocena modelu neuronowego i porównanie go z wynikami innej metody Model prognostyczny wykonany został w systemie Predyktor, który jest czci pakietu Sphinx [5]. System Predyktor umoliwia wykonywanie prognoz dla wielu rónych postaci modeli, przede wszystkim dla modeli cigów czasowych i modeli pełnych (obiektów i zjawisk). Etapy procedury prognostycznej s nastpujce: – obserwacja procesu w postaci cigu czasowego, – utworzenie modelu obserwowanego cigu, – przekształcenie modelu cigu czasowego do postaci umoliwiajcej prognoz (budowa algorytmu predykcji). Do prognozy poboru wody w wle dla niedzieli wybrano tryb prognoz jednoseryjnych dla modeli cigów czasowych. Pierwszy etap to przedstawienie cigu czasowego zawierajcego dane dotyczce przepływu wody w wle (rys. 4). 178 POLSKIE STOWARZYSZENIE ZARZDZANIA WIEDZ Seria: Studia i Materiały, nr 10, 2007 Rysunek 4. Cig czasowy zawierajcy dane dotyczce przepływu wody w wle Nastpnie został uyty model sieci neuronowej do prognozowania obcienia sieci (wykres NAR(2)). Czarne linie z trójktami to wartoci rzeczywiste, a linia przerywana to prognoza wykonana przez sie neuronow (rys. 5). Rysunek 5. Prognoza przy uyciu sieci neuronowej Izabela Rojek Model neuronowy do prognozowania poboru wody w sieci wodocigowej 179 Ocena dokładnoci prognozy moliwa jest w trybie testowania, podczas którego pewn cz wejciowego cigu czasowego wyłczamy ze zbioru na podstawie, którego identyfikowane s parametry modelu (rys. 6). Tryb testowania wykazał dobre dopasowanie modelu dla danych historycznych, na podstawie których wykonywana jest prognoza. Rysunek 6. Ocena dokładnoci modelu podczas testowania Dodatkowo wyniki prognozy modelu sieci neuronowej porównano z wynikami prognozy metod autoregresji AR (rys. 7). Rysunek 7. Porównanie prognozy metod autoregresji i metod sieci neuronowej 180 POLSKIE STOWARZYSZENIE ZARZDZANIA WIEDZ Seria: Studia i Materiały, nr 10, 2007 6. Podsumowanie W referacie dokonano omówienia eksploracji danych, modelu prognostycznego w postaci sieci neuronowej. Przeprowadzono badania dotyczce prognozowania poboru wody w wybranym wle sieci wodocigowej dla niedzieli. Model ten był uczony na danych z jednego miesica. W celu wybrania odpowiedniego modelu sieci neuronowej dla tego jednego wzła wykonano 9 modeli sieci neuronowej, z których wybrano ten najlepszy. Kolejne badania powinny i w kierunku wykonania modeli nie tylko dla tygodnia, ale te dla czterech sezonów roku: lato, jesie, zima, wiosna lub te całego roku. Oczywicie naley dysponowa danymi z tych okresów czasu. Ponadto badania winny i w kierunku opracowania modeli dla innych, wybranych wzłów sieci. Bibliografia 1. 2. Hand D., Mannila H., Smith P., Eksploracja danych, WNT, Warszawa, 2005 Krawiec K., Stefanowski J., Uczenie maszynowe i sieci neuronowe, wydawnictwo Politechniki Poznaskiej, Pozna, 2004 3. 4. Larose D. T., Odkrywanie wiedzy z danych. Wprowadzenie do eksploracji danych, PWN, Warszawa, 2006 Rutkowska D., Piliski M., Rutkowski L., Sieci neuronowe, algorytmy genetyczne i logika rozmyta, WN PWN, Warszawa, 1997 5. SPHINX 4.0, dokumentacja zintegrowanego pakietu sztucznej inteligencji, 2005 NEURAL MODEL FOR PREDICTION OF WATER CONSUMPTION IN WATER NETWORK Summary Neural model for prediction of water consumption in water network was presented in the paper. The Multilayer Feed-Forward Neural Network was applied to create prediction model. Research was made for selected node of water network supporting an area of detached houses. Prediction models were created for weekdays, Saturday and Sunday. In the paper particularly prediction model for Sunday was presented. Keywords: prediction model, neural network, water network IZABELA ROJEK Uniwersytet Kazimierza Wielkiego Instytut Mechaniki rodowiska i Informatyki Stosowanej Warszawa, Chodkiewicza 30 http://www.imsis.ukw.edu.pl/ e-mail: [email protected]