Narzędzia matematyczne zastosowane w systemie biomonitoringu wody Piotr Przymus Krzysztof Rykaczewski Wydział Matematyki i Informatyki Uniwersytet Mikołaja Kopernika Toruń 1 of 24 18 marca 2009
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: S i (x) = a i x 3 + b i x 2 + c i x + d i, i = 1,..., N 1. Podstawowy warunek interpolacji daje następujące równania dla każdego splinu: S i (x i ) = y i, i = 1,..., N, S i (x i+1 ) = y i, i = 1,..., N, (1) Pozostałe warunki uzyskamy z przyrównania pierwszych i drugich pochodnych w połączeniach: S i (x i ) = S i 1(x i ), i = 2,..., N, S i (x i ) = S i 1(x i ), i = 2,..., N, (2) 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
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 h 1,..., h N. W wyniku sumowania poszczególnych iloczynów h k u(n k + 1), k = 1,..., N, otrzymujemy sygnał wyjściowy filtru dany wzorem N ŷ(n) = h k u(n k + 1) = h T u(n), (3) k=1 gdzie h T = [h 1,..., h N ] oraz u T (n) = [u(n),..., u(n N + 1)]. 9 of 24
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) = y(t i+1) y(t i ) 1 ( = y(ti+1 ) y(t t i+1 t i t i+1 i ) ). (4) t i 11 of 24
Pierwszy filtr 12 of 24
Filtr Wienera i wstęp do metod adaptacyjnych Wyjście filtru ŷ(n) porównujemy z sygnałem wzorcowym ɛ(n) = d(n) ŷ(n). (5) Zacznijmy od zdefiniowania funkcji kosztu wzorem C (n) = E { ɛ(n) 2}, (6) gdzie E {.} oznacza wartość oczekiwaną. 13 of 24
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) u T ĥ(n) (7) RLS (Recursive Least Squares Algorithm) 14 of 24
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) (8) gdzie jest operatorem pochodnej. 15 of 24
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) µ { } C (n) = ĥ(n) + µ E x(n) e T (n), (10) 2 gdzie µ 2 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)u T (n)) 17 of 24
Algorytm RLS Załóżmy, że sygnał d może być przedstawiony w następującej postaci x(n) = q k=0 b n (k)d(n k) + v(n) (11) gdzie v(n) oznacza szum. Chcemy wydobyć sygnał stosując metodę filtr FIR, w: ˆd(n) = y(n) = w T n x(n) (12) Naszym celem jest oszacowanie parametrów filru w, za każdym razem odwołując się do nowej oszacowanej wartości w n. Jednakże w dalszych etapach chcielibyśmy uniknąć liczenia metoda najmniejszych kwadratów czynnik w n+1 w zależności od w n. 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 L 2 (R) może być zapisana jako kombinacja f (t) = a i,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 N p ( x ti ŷ(w) = w 0 + w i φ i=1 a i ), (14) gdzie N p to liczba węzłów w warstwie ukrytej, a w i 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 yi ŷ(w) ) 2, (15) i=1 gdzie y i jest rzeczywistą odpowiedzią z trenowanej sieci przy wejściu w. 22 of 24
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 Fa-Long Luo, Rolf Unbehauen, Applied Neural Networks for Signal Processing, Cambridge University Press, 1999 Marc Moonen, Ian Proudler, An Introduction to Adaptive Signal Processing, Course Notes 1998-1999 24 of 24