Analiza i klasyfikacja sygnałów medycznych za pomocą przekształceń falkowych Filip Wasilewski promotor prof. dr hab. Michał Jacymirski
Plan prezentacji Cel pracy Sygnały medyczne na przykładzie sygnału EKG Przekształcenia falkowe narzędzie do badania sygnałów Klasyfikacji wzorców przy pomocy sieci neuronowych RBF Implementacja
Cel pracy Badanie przydatności przekształceń falkowych w zadaniach analizy sygnałów EKG Opracowanie algorytmu automatycznej segmentacji i klasyfikacji sygnałów medycznych na przykładzie sygnału EKG Testowanie algorytmu
Sygnał EKG - przykład sygnału medycznego EKG - rejestracja aktywności elektrycznej serca pełen obraz - dwanaście standardowych odprowadzeń trzy odprowadzenia kończynowe dwubiegunowe (I, II, III) trzy odprowadzenia kończynowe jednobiegunowe (avr, avl, avf) sześć odprowadzeń przedsercowych (V1, V2, V3, V4, V5, V6) odprowadzenia ustawione pod różnym kątem w stosunku do wektora siły elektromotorycznej serca obserwujemy pracę serca z różnych stron Badanie EKG jest podstawowym badaniem pracy serca
Rejestracja aktywności elektrycznej serca - 1 węzeł zatokowo- -przedsionkowy prawa odnoga węzeł przedsionkowo -komorowy pęczek Hisa lewa odnoga Samoistna depolaryzacja komórek węzła zatokowo- -przedsionkowego Fala pobudzenia rozchodzi się na mięsień przedsionków włókna Purkinjego załamek P zespół QRS załamek T odstęp PR odcinek ST odstęp QT
Rejestracja aktywności elektrycznej serca - 2 węzeł zatokowo- -przedsionkowy węzeł przedsionkowo -komorowy pęczek Hisa lewa odnoga Propagacja fali pobudzenia ulega spowolnieniu w węźle przedsionkowo-komorowym prawa odnoga włókna Purkinjego załamek P zespół QRS załamek T odstęp PR odcinek ST odstęp QT
Rejestracja aktywności elektrycznej serca - 3 węzeł zatokowo- -przedsionkowy węzeł przedsionkowo -komorowy pęczek Hisa Fala pobudzenia wywołuje depolaryzację mięśnia komór lewa odnoga prawa odnoga włókna Purkinjego załamek P zespół QRS załamek T odstęp PR odcinek ST odstęp QT
Rejestracja aktywności elektrycznej serca - 4 węzeł zatokowo- -przedsionkowy węzeł przedsionkowo -komorowy pęczek Hisa lewa odnoga Po krótkim okresie następuje repolaryzacja komórek mięśnia komór prawa odnoga włókna Purkinjego załamek P zespół QRS załamek T odstęp PR odcinek ST odstęp QT
Problem identyfikacja zdarzeń EKG Sygnał EKG zdrowego pacjenta składa się z elementów uznawanych przez lekarzy za prawidłowe, tzn. mieszczące się w pewnej normie. Zmiany chorobowe znajdują odzwierciedlenie w rejestrowanej elektrycznej aktywności serca. Identyfikacja i lokalizacja wybranych zdarzeń elektrokardiograficznych Np. wyszukiwanie fizjologicznych zespołów QRS (N) przy jednoczesnym odrzuceniu zdarzeń patologicznych (przedwczesne skurcze komorowe, bloki, arytmie)
Biblioteki sygnałów fizjologicznych PhysioBank (http://www.physionet.org/physiobank/) MIT-BIH Arrhythmia Database zbiór 48 półgodzinnych sygnałów pełna adnotacja lekarska ogólnodostępna światowy standard w testowaniu urządzeń i algorytmów biomedycznych Ponad 40 innych, ogólnodostępnych zbiorów sygnałów biomedycznych
Przekształcenia falkowe Czym jest falka? Ciągła transformata falkowa definicja matematyczna Analiza wielorozdzielcza Algorytm Mallata dyskretna transformata falkowa (DWT) i banki filtrów Modyfikacje DWT dyskretna transformata falkowa bez przerzedzenia (Undecimated Discrete Wavelet Transform)
Falki to funkcje Falka jest funkcją ondolette - krótka fala, oscylacja Musi spełniać pewne warunki: t 2 dt=1 t dt=0 szybko zanika oscyluje Prosty przykład funkcja Haara (1909r.) f t ={ 1 dla 0 t 0,5 t} 1 dla 0,5 t 1 0 dla pozostałych
Przykłady innych falek Falki mające prostą postać analityczną np. falka Morleta t 2 t =e j w t 0 2 e (czynnik oscylacji i czynnik tłumienia) Falki określone w dziedzinie częstotliwości Daubechies (np. db2) Coiflets Symlets
Ciągła transformata falkowa (CWT) Transformata falkowa Poprzez skalowanie i przesuwanie falki podstawowej otrzymuje się rodziny funkcji falkowych ab t = 1 a t b a Obliczając korelację ab t z analizowanym sygnałem f(t) otrzymuje się współczynniki CWT Wf a, b = f t ab t dt Lokalizacja w czasie i częstotliwości określona zasadą nieoznaczoności Heisenberga
Analiza wielorozdzielcza i DWT (Mallat '89) Dowolną funkcję z L 2 (R) można aproksymować na różnych poziomach rozdzielczości np. f(t) = A2 + D2 + D1 Przybliżenia odpowiadają wolnozmiennym składowym sygnału (niskie częstotliwości) Detale odpowiadają szybkozmiennym składowym sygnału (wysokie częstotliwości). Zdefiniowane w ortogonalnych przestrzeniach falkowych.
Dyskretna Transformata Falkowa (DWT) Diadyczne spróbkowanie współczynników CWT Ściśle związana z analizą wielorozdzielczą (detale zdefiniowane w przestrzeni falkowej). Algorytm Mallata efektywne obliczanie DWT filtracja sygnału za pomocą zespołu filtrów a=2 m,b=2 m n f n m H G 2 2 f n m 1 d n m 1 H filtr dolnoprzepustowy G filtr górnoprzepustowy W wyniku otrzymuje się zbiór współczynników wielopoziomowego przekształcenia DWT, zlokalizowanych w przestrzeni czasowoczęstotliwościowej {d n 1,d n 2,, d n l, f n l }
czas Dyskretna transformata falkowa bez przerzedzenia (UDWT) DWT nie jest przekształceniem niezmiennym względem przesunięcia (tzn. nawet dla sygnałów okresowych wynik transformaty sygnału przesuniętego w czasie zazwyczaj nie jest równy przesuniętemu w czasie wynikowi transformaty tego sygnału) Pomysł: obliczmy DWT dla wszystkich możliwych przesunięć sygnału wejściowego stosując algorytm à trous f n m H m G m f n m 1 d n m 1 H m 2 H m+1 G m 2 G m+1 Ze współczynników przekształcenia UDWT można konstruować bardziej przewidywalne, niezależne od przesunięcia wektory cech częstotliwość skala
Analiza sygnału za pomocą UDWT Fragment sygnału EKG i jego transformata UDWT Informacje związane z wystąpieniem zespołu QRS zlokalizowane w pasmach 1-6 Pasma 1 i 2 zawierają głównie szumy Pasma powyżej 6 to informacja o wolnozmiennych składowych sygnału Wartości współczynników i położenie maksimów różni się w zależności od typu zdarzenia kardiologicznego
Konstrukcja wektora cech Na podstawie analizy współczynników UDWT oraz wiedzy medycznej można stworzyć wektory cech opisujące konkretne sytuacje występujące w sygnale EKG UDWT [ d 1, d 2,, d n ] T f(.) [c 1, c 2,,c n ] T f(.) - okienkowa funkcja wybierająca, ustalona empirycznie odrzucenie szumów (wysokie częstotliwości) i wolnozmiennych składowych (np. falowanie linii izoelektrycznej) wybranie współczynników związanych z konkretnymi zdarzeniami EKG współczynniki przekształcenia falkowego wektor cech
Przykłady wektorów cech Wektory cech muszą jednoznacznie opisywać zdarzenia kardiograficzne Wektory a oraz e, opisujące poprawne zespoły QRS, cechuje duże wzajemne podobieństwo Jednocześnie wektory a i e odróżniają się od wektorów skonstruowanych dla innych miejsc sygnału EKG W rezultacie możliwa jest klasyfikacja zdarzeń EKG na podstawie wektorów cech
Klasyfikator radialna sieć neuronowa Dwie warstwy nieliniowa z Radialnymi Funkcjami Bazowymi jako funkcjami aktywacji, najczęściej funkcjami Gaussa r =exp r / 2 liniowa warstwa wyjściowa Uczenie hybrydowe dobór centrów i szerokości funkcji radialnych losowe klasteryzacja zbioru danych uczących (k-means, grupowanie hierarchiczne, metody probabilistyczne EM) wykorzystanie apriorycznej informacji dobór wag warstwy liniowej mogą być wyznaczone explicite, np. metoda macierzy pseudoodwrotnej wstecznej propagacji, inne metody krokowe
Uczenie sieci rozpoznawania wzorców Przygotowanie zbioru uczącego Skonstruowanie reprezentatywnych wektorów cech dla wybranych zdarzeń kardiologicznych (zarówno dla tych, które mają być wykrywane jak i dla tych, które mają być ignorowane przez sieć) Dla pojedynczego sygnału EKG o niewielkim zaszumieniu wystarcza od kilku do kilkunastu wektorów cech Uczenie sieci RBF k-means funkcja bazowa Gaussa z metryką euklidesową metoda macierzy pseudoodwrotnej
Testowanie algorytmu Typowy półgodzinny zapis EKG z biblioteki MIT-BIH: 650 000 próbek, czyli około 650 000 wektorów cech do przeanalizowania tylko 0-3000 interesujących punktów (QRS, VPC, A,...) Miarą skuteczności jest liczba wykrytych i poprawnie zaklasyfikowanych wzorców (TP) oraz liczba wzorców błędnie zaklasyfikowanych (FP) lub pominiętych (FN) [c 1,c 2,,c n ] T RBF [ y QRS, y VPC, ] T? Standardowe miary skuteczności czułość i specyficzność Se= TP TP FN Sp= TP TP FP
Wyniki Wiele istniejących algorytmów osiąga wartości Se i Sp na poziomie 99%. Rezultaty opracowanej metody są porównywalne Dla doświadczenia wykrywania poprawnych zespołów QRS w zbiorze testowym 19 sygnałów EKG czułość i specyficzność wynoszą odpowiednio: Se = 99.36% Sp = 99.76%
Implementacja Niezależne moduły języka Python dostęp do biblioteki sygnałów medycznych przekształcenia falkowe sieci RBF Narzędzia automatyzujące testowanie Należy zauważyć, że możliwa jest prosta implementacja sprzętowa przedstawionego algorytmu splot, decymacja, liniowo separowalna funkcja Gaussa, mnożenie, sumowanie
Efekty uboczne PyWavelets (http://www.pybytes.com/pywavelets) Forward and inverse Discrete Wavelet Transform, Stationary Wavelet Transform and Wavelet Packet signal analysis and reconstruction in Python. W ciągu krótkiego czasu biblioteka zyskała uznanie naukowców z wielu krajów. Obecnie używana jest np. do badania fal tsunami w Nowej Zelandii Trwają prace nad włączeniem jej do popularnej dystrybucji oprogramowania naukowego SciPy (http://wavelets.scipy.org) Pywfdb (http://www.pybytes.com/pywfdb) Python module for accessing PhysioBank database of physiologic signals.
Literatura [1] Paul S. Addison. Wavelet transforms and the ecg: a review. 26:R155--R199, Aug 2005. [2] Piotr Augustyniak. Transformacje falkowe w zastosowaniach elektrodiagnostycznych. Uczelniane Wydawnictwa Naukowo Dydaktyczne, Kraków, 2003. [3] Jan T. Białasiewicz. Falki i aproksymacje. WNT, 2000. [4] C. Bishop. Neural Networks for Pattern Recognition. Oxford University Press, 1995. [5] R. R. Coifman and D. L. Donoho. Translation invariant de noising. Lecture Notes in Statistics, 103, 1995. [6] Ingrid Daubechies. Ten lectures on wavelets. SIAM, 1992. [7] Python Software Foundation. Python programming language. Electronic Pages: http://www.python.org. [8] A. L. Goldberger, L. A. N. Amaral, L. Glass, J. M. Hausdor, P. Ch. Ivanov, R. G. Mark, J. E. Mietus, G. B. Moody, C. K. Peng, and H. E. Stanley. PhysioBank, PhysioToolkit, and PhysioNet: Components of a new research resource for complex physiologic signals. Circulation, 101(23):e215--e220, 2000 (June 13). [9] Simon Haykin. Neural Networks: A Comprehensive Foundation. Macmillan College Publishing Company, Inc., New York, 1994. [10] Andrew R. Houghton and David Gray. EKG jasno i zrozumiale. a medica press, 2. edition, 2001. [11] B. U. Kohler, C. Hennig, and R. Orglmeister. The principles of software qrs detection. IEEE Eng. in Medicine and Biology, 21(1):42-- 57, Jan/Feb 2002. [12] S. Mallat. Multiresolution approximation and wavelet orthonormal bases of L2(R). Technical Report Vol. 315, No1, Trans. Am. Math. Soc., Department of Statistics, 1989. [13] M. Misiti, Y. Misiti, G. Oppenheim, and J. Poggi. Wavelet Toolbox User's Guide. The MathWorks Inc., 2 edition, Jul 2002. [14] J. C. Nash. Compact Numerical Methods for Computers: Linear Algebra and Function Minimisation, chapter The Singular Value Decomposition and Its Use to Solve Least Squares Problems. Ch. 3, pages 30--48. Adam Hilger, Bristol, England, 2 edition, 1990.
Literatura [15] G. P. Nason and B. W. Silverman. The stationary wavelet transform and some statistical applications. Lecture Notes in Statistics, 103:281--299, 1995. [16] Mark L. J. Orr. Introduction to Radial Basis Function Networks.., Centre for Cognitive Science, University of Edinburgh, 1996. [17] Stanisław Osowski. Sieci neuronowe w ujęciu algorytmicznym. Wydawnictwa Naukowo Techniczne, Warszawa, 1995. [18] J.C. Pesquet, H. Krim, and H. Carfatan. Time invariant orthonormal wavelet representations. IEEE Trans. Sign. Proc., 44(8):1964-- 70, 1996. [19] T. Poggio and F. Girosi. Networks for approximation and learning,. Proceedings of the IEEE (special issue: Neural Networks I: Theory and Modeling), 78(9):1481--97, Sep 1990. [20] Leszek Rutkowski. Metody i techniki sztucznej inteligencji. Wydawnictwo Naukowe PWN, Warszawa, 2005. [21] Khalid Sayood. Kompresja danych wprowadzenie. Wydawnictwo RM, Warszawa, I edition, 2002. [22] Belle A. Shenoi. Introduction to Digital Signal Processing and Filter Design. Wiley Interscience, 2006. [23] L Y Shyu, Y H Wu, and W Hu. Using wavelet transform and fuzzy neural networks for vpc detection from the holter ecg. IEEE Trans. Biomed. Eng., 51:1269--73, 2004. [24] Y. Y. Tang, Yang L. H., Liu J., and H. Ma. Wavelet Theory and Its Application to Pattern Recognition. Machine Perception and Artificial Intelligence. World Science, Singapore, 2000. [25] Malcolm S. Thaler. The Only EKG Book You'll Ever Need. Lippincott Williams & Wilkins, 4. edition, 2003. [26] Władysław Z. Traczyk. Fizjologia człowieka w zarysie. Wydawnictwo lekarskie PZWL, 7. edition, 2002. [27] M. Unser and A. Aldroubi. A review of wavelets in biomedical applications,. Proceedings of the IEEE, 84(4):626--638, Apr 1996. [28] Przemysław Wojtaszczyk. Teoria Falek. PWN, Warszawa, 2000.... oraz niezliczone ilości artykułów, opracowań i publikacji.
Dziękuję za uwagę.