Narzedzia matematyczne zastosowane w systemie biomonitoringu
Transkrypt
Narzedzia matematyczne zastosowane w systemie biomonitoringu
Narzędzia matematyczne zastosowane w systemie biomonitoringu wody Piotr Przymus Krzysztof Rykaczewski Wydział Matematyki i Informatyki Uniwersytet Mikołaja Kopernika Toruń 18 marca 2009 1 of 24 Cel referatu Referat dotyczy biomonitoringu wody oraz zastosowania metod matematycznych w tym temacie. Naszym celem jest nie tylko przedstawienie metod przez nas zastosowanych oraz tych, które chcemy zastosować, ale też wysłuchanie waszych opinii oraz pomysłów. 2 of 24 Pierwsze kroki Analiza wzrostów i spadków Uznaliśmy, że na początek ciekawe będzie przeanalizowanie wykresów (sygnałów) pod kątem pojawiających się charakterystycznych wzlotów i spadków. W tym celu musieliśmy najpierw wygładzić podstawowy wykres oraz policzyć pochodną. Wygładzanie Zastosowaliśmy technikę spline’ów kubicznych. Mówiąc potocznie, interpolowaliśmy wykres kawałkami wielomianami stopnia co najwyżej 3, które ”łączą” się w sposób gładki. 3 of 24 Funkcje sklejane - Spliny Aproksymacja na wielu węzłach wymusza stosowanie wielomianu interpolacyjnego wysokiego stopnia. Szczególnie przy równoodległych węzłach prowadzi to do oscylacji wielomianu na końcach przedziału interpolacji. Jest to tak zwany Efekt Rungego. Zadanie interpolacji wielomianem wysokiego stopnia jest dodatkowo wrażliwe na zaburzenie danych (jest źle uwarunkowane numerycznie). Z tych powodów warto stosować interpolację lokalną niższego stopnia - funkcje sklejane. Funkcje sklejane są realizacją idei gładkiej interpolacji lokalnej wielomianem niskiego stopnia z gładkim połączeniem (sklejeniem) poszczególnych wielomianów lokalnych. 4 of 24 Cubic Spline Równania opisujące spliny możemy uzyskać z narzucenia ciągłości pierwszej i drugiej pochodnej w punkcie sklejenia wielomianów. W ten sposób uzyskujemy wygładzenie przebiegu interpolującego. Dla splinu trzeciego stopnia w każdym z N − 1 przedziałów między sąsiednimi węzłami mamy: Si (x ) = ai x 3 + bi x 2 + ci x + di , i = 1, . . . , N − 1. Podstawowy warunek interpolacji daje następujące równania dla każdego splinu: Si (xi ) = yi , i = 1, . . . , N, Si (xi +1 ) = yi , i = 1, . . . , N, (1) Pozostałe warunki uzyskamy z przyrównania pierwszych i drugich pochodnych w połączeniach: Si′ (xi ) = Si′−1 (xi ), i = 2, . . . , N, Si′′ (xi ) = Si′′−1 (xi ), i = 2, . . . , N, Układ powyższych 4(N − 1) równań tworzy macierz trojprzekątniową, którą można efektywnie rozwiązać metodami eliminacji. 5 of 24 (2) Spliny i ich pochodne 6 of 24 Efekt Rungego 7 of 24 Filtry Filtr liniowy Filtr liniowy (Wienera) służy do liniowej estymacji poprzez liniową operację na dostępnych danych. Estymacja jest optymalna w sensie błędu średniokwadratowego. Filtr adaptacyjny Filtrem adaptacyjnym nazywamy filtr, w którym dynamicznie zmienia się funkcja przejścia, w taki sposób, aby zoptymalizować algorytm. Ogólnie rzecz ujmując, proces adaptacyjny zakłada użycie pewne ustalonej funkcji kosztu (np. średniej odchylenia kwadratowego, minimalizacja składowej szumu), która jest kryterium optymalności zachowanie się filtru, i która wpływa na współczynniki. 8 of 24 Sformułowania problemu Przedmiotem naszych rozważań będzie filtr transwerslany, który zawiera N − 1 elementów opóźniających. Przez u (n) oznaczamy bieżącą wartość sygnału wejściowego, natomiast próbki u (n − 1), . . . , u (n − N + 1) reprezentują poprzednie wartości sygnału wejściowego, które zostają zapamiętane w układzie. Wejścia są mnożone odpoweidnio przez odpowiadające im wagi h1 , . . . , hN . W wyniku sumowania poszczególnych iloczynów hk u (n − k + 1), k = 1, . . . , N, otrzymujemy sygnał wyjściowy filtru dany wzorem N ŷ (n) = ∑ hk u (n − k + 1) = hT u(n), k =1 gdzie hT = [h1 , . . . , hN ] oraz uT (n) = [u (n), . . . , u (n − N + 1)]. 9 of 24 (3) Filtry Wady filtrów Niestety filtry mają pewne wady, np: 1. stały rząd, 2. inne 10 of 24 Pochodna a filtry Okazuje się, że pochodna liczona na przedziałach o równych odstępach to nic innego jak bardzo prosty filtr ŷ (i ) = 11 of 24 ( ) y (ti +1 ) − y (ti ) 1 = y (ti +1 ) − y (ti ) . ti +1 − ti ti +1 − ti (4) Pierwszy filtr 12 of 24 Filtr Wienera i wstęp do metod adaptacyjnych Wyjście filtru ŷ (n) porównujemy z sygnałem wzorcowym e(n) = d (n) − ŷ (n). (5) Zacznijmy od zdefiniowania funkcji kosztu wzorem { } C (n) = E ∣e(n)∣2 , gdzie E {.} oznacza wartość oczekiwaną. 13 of 24 (6) Metody adaptacyjne LMS (Least Mean Squares Algorithm) Algorytm najszybszego spadku umożliwia iteracyjne rozwiązanie równań normalnych. Jego zastosowanie wymaga znajomości macierzy autokorelacji R oraz wektora korelacji wzajemnej p. Jednakże w praktyce ani macierz R, ani wektor p nie są znane. Zastępujemy więc te nieznane wielkości ich obserwacjami. W efekcie algorytm gradientu stochastycznego znany jest pod nazwą algorytmu LMS [ ] ĥ(n + 1) = ĥ(n) − µ d (n) − uT ĥ(n) RLS (Recursive Least Squares Algorithm) 14 of 24 (7) LMS Główną metodą jaka stoi za filtrem LMS jest metoda gradientu prostego, ażeby znaleźć wektor h(n), który minimalizuje funkcję kosztu. Funkcja kosztu jest dla nas średnia kwadratowa. Stosując metodę gradientu prostego do pochodnych częściowych do współrzędnych wektora współczynników filtru { } { ( } ) ∇C (n) = ∇E e (n) e T (n) = 2E ∇ e (n) e T (n) gdzie ∇ jest operatorem pochodnej. 15 of 24 (8) LMS c.d. Oznaczając x(n) = [x (n), x (n − 1), . . . , x (n − p + 1)]T oraz ∇e (n) = −x(n) otrzymujemy { } ∇C (n) = −2E x(n) e T (n) (9) Wektor ∇C (n) jest wektorem, który wskazuje kierunek przeciwny do wzrostu funkcji kosztu. Żeby znaleźć minimum musimy poruszać się w kierunku przeciwnym do kierunku ∇C (n). Mamy więc równanie ĥ(n + 1) = ĥ(n) − gdzie µ 2 { } µ ∇C (n) = ĥ(n) + µ E x(n) e T (n) , 2 (10) jest wielkością kroku. Uwaga. Do zrealizowania algorytmu potrzebna jest znajomość E {x(n) e ∗ (n)}. W tym celu trzeba zastosować inne metody aproksymacyjne. 16 of 24 Uwagi o LMS ∙ jest dość prosty z uwagi na złożoność obliczeniową; liczba potrzebnych operacji jest proporcjonalna do N ∙ największa wadą jest czułość na rozrzut wartości własnych macierzy autokorelacji R = E (u(n)uT (n)) 17 of 24 Algorytm RLS Załóżmy, że sygnał d może być przedstawiony w następującej postaci q x (n ) = ∑ bn (k )d (n − k ) + v (n) (11) k =0 gdzie v (n) oznacza szum. Chcemy wydobyć sygnał stosując metodę filtr FIR, w: d̂ (n) = y (n) = wnT x(n) (12) Naszym celem jest oszacowanie parametrów filru w, za każdym razem odwołując się do nowej oszacowanej wartości wn . Jednakże w dalszych etapach chcielibyśmy uniknąć liczenia metoda najmniejszych kwadratów czynnik wn+1 w zależności od wn . 18 of 24 Uwagi o RLS ∙ ∙ ∙ ∙ jest trudniejszy do implementacji jest niewrażliwy na rozrzut wartości własnych macierzy autokorelacji R nie trzeba liczyć odwrotności macierzy autokorelacji, dzięki czemu oszczędzamy czas można go łatwiej związać z innymi filtrami, np. filtrem Kalmana 19 of 24 Falki (wavelets) - idea Definicja Falki to rodzina funkcji, z których każda definiowana jest poprzez podanie dylatycji a (która kontroluje parametr skalowania) oraz przesunięcia b (które kontroluje położenie funkcji) z funkcji nazywanej mother wavelet ψ. Mają one na koncie wiele sukcesów jako narzędzie do analizy sygnałów, odszumianiu, kompresji danych itp. Przy pomocy falek każda funkcja f ∈ L2 (R) może być zapisana jako kombinacja f (t ) = ∑ ai,j φi,j (t − ka) (13) i,j Przy odpowiednich założeniach możemy też odwrócić tą operację i z wartości sygnału f można odzyskać początkową funkcję. 20 of 24 Falki 21 of 24 Falki i sieci neuronowe Mając dany n-elementowy zbiór treningowy, wyjściowa odpowiedź układu dana jest wzorem Np ŷ (w ) = w0 + ∑ wi φ i =1 ( x − ti ai ) , (14) gdzie Np to liczba węzłów w warstwie ukrytej, a wi to synaptyczne wagi sieci. Mając zbudowaną falkową sieć, uczymy ją stosując metody używające algorytmy metodę gradientu prostego, np. LMS, ażeby zminimalizować średni błąd kwardatowy J (w ) = 1 n n ∑ ( )2 yi − ŷ (w ) , i =1 gdzie yi jest rzeczywistą odpowiedzią z trenowanej sieci przy wejściu w . 22 of 24 (15) Cechy Podsumowanie ∙ ∙ ∙ nie ma jak dotychczas dowodu i oceny zbieżności prawdopodobnie mogą być niestabilne w pewnych sytuacjach radzą sobie lepiej niż inne sieci (np. detekcja anomalii w ruchu sieciowym) 23 of 24 Bibliografia ∙ Chares K. Chui, Wavelets: A mathematical tool for signal analysis,SIAM, Philadelphia, 1997 ∙ Jan T. Białasiewicz, Falki i aproksymacje, Wydawnictwo Naukowo Techniczne, Warszawa, 2000 ∙ Leszek Rutkowski, Filtry adaptacyjne i adaptacyjne przetwarzanie sygnałów,Wydawnictwo Naukowo Techniczne, Warszawa, 1994 ∙ ∙ Zdzisław Bubnicki, Teoria i algorytmy sterowania, Wydawnictwo Naukowe PWN ∙ Marc Moonen, Ian Proudler, An Introduction to Adaptive Signal Processing, Course Notes 1998-1999 Fa-Long Luo, Rolf Unbehauen, Applied Neural Networks for Signal Processing, Cambridge University Press, 1999 24 of 24