AKADEMIA GÓRNICZO-HUTNICZA im. St. Staszica w KRAKOWIE MIĘDZYWYDZIAŁOWA SZKOŁA INŻYNIERII BIOMEDYCZNEJ Przedmiot: Dedykowane algorytmy diagnostyki medycznej Numer projektu: QRS_clas_11 Temat projektu: Klasyfikacja uderzeń serca Spis treści: 1. ABSTRAKT... 3 2. WSTĘP... 4 2.1. CELE I ZAŁOŻENIA PROJEKTU... 4 2.2. ZARYS OGÓLNY PROPONOWANEGO ROZWIĄZANIA... 6 2.3. DYSKUSJA ALTERNATYWNYCH ROZWIĄZAŃ... 7 3. KONCEPCJA PROPONOWANEGO ROZWIĄZANIA... 10 3.1. SCHEMAT OGÓLNY ZAPROPONOWANEGO ROZWIĄZANIA... 10 3.2. PROCEDURY POPRZEDZAJĄCE WŁAŚCIWĄ KLASYFIKACJĘ... 11 3.3. KLASYFIKACJA... 15 3.2.1 Wyliczenie wektorów cech...16 3.2.2 Wyznaczenie wektorów cech reprezentujących dane klasy...17 3.2.3 Wykresy parametrów...20 3.2.4 Opis klas uwzględnionych w klasyfikacji...29 3.2.5 Drzewo decyzyjne...29 4. REZULTATY I WNIOSKI... 32-1-
4.1. OCENA JAKOŚCIOWA I ILOŚCIOWA ZASTOSOWANEGO ROZWIĄZANIA... 32 4.2. ANALIZA BŁĘDÓW W KLASYFIKACJI I ICH PRZYCZYN... 33 4.3 PROPOZYCJA MODYFIKACJI ZAPROPONOWANEJ METODY... 38 5. PODSUMOWANIE... 39 6. LITERATURA... 40 7. DODATEK A: OPIS OPRACOWANYCH NARZĘDZI I METODY POSTĘPOWANIA... 41 8. DODATEK B: REALIZACJA PROPONOWANEGO ROZWIĄZANIA... 41 9. DODATEK C. OPIS INFORMATYCZNYCH PROCEDUR... 41 10. DODATEK D. SPIS ZAWARTOŚCI DOŁĄCZONYCH NOŚNIKÓW (DYSKIETEK, CD ROMU) 47 Wykonały: Katarzyna Barczewska, Aleksandra Janosz Inżynieria Biomedyczna, specjalizacja: Informatyka i Elektronika Medyczna konsultant: dr hab. inż. Piotr Augustyniak, prof. AGH Wersja 4.1. Kraków, styczeń 2011. -2-
1. Abstrakt Celem projektu jest dokonanie klasyfikacji zespołów QRS reprezentowanych w przestrzeni jedno i wielokanałowej w celu określenia ich morfologii. Podstawą zaproponowanego rozwiązania jest wykorzystanie wektorów cech, stanowiących reprezentację wykrytych zespołów QRS, które skonstruowano na podstawie heurystycznych współczynników kształtu (stosunek pola do powierzchni, stosunek maksymalnej prędkości do maksymalnej amplitudy, ilość próbek, w których prędkość przekracza 40% prędkości maksymalnej) o raz parametrów zespołów w dziedzinie czasu (amplituda dodatnia, amplituda ujemna). Klasyfikację poprzedzono procedurami modyfikującymi surowy sygnał EKG w postaci trzykanałowego zapisu holterowskiego w celu dokładniejszego wyznaczenia współczynników. Na podstawie zbioru treningowego zapisów holterowskich wyznaczono warunki przynależności do odpowiednich klas (przypisanie danego zespołu QRS do odpowiedniej klasy następuje przy pomocy drzewa decyzyjnego). Następnie przetestowano jakość klasyfikatora z wykorzystaniem parametrów czułości i specyficzności oraz bazy sygnałów holterowskich. Zaproponowana metoda charakteryzuje się bardzo niską czułością i specyficznością (odpowiednio 28% i 34%), co może wynikać ze źle dobranego zestawy współczynników kształtu, źle dobranych warunków klasyfikacji, zbyt małej ilości sygnałów w zbiorze treningowym, a także z powodu niewiedzy o podstawie i sposobie dokonania klasyfikacji w zbiorze szkoleniowym. Główną zaletą klasyfikacji wektorów cech jest zmniejszenie nakładów obliczeniowych w stosunku do klasyfikacji sygnału w obrębie zespołu QRS, co jednak jest osiągane poprzez mniejszą kontrolę procesu klasyfikacji. Słowa kluczowe: automatyczna interpretacja EKG, klasyfikacja zespołów QRS, wektory cech, heurystyczne współczynniki kształtu -3-
2. Wstęp 2.1. Cele i założenia projektu Głównym zamierzeniem projektu jest wybór, ewentualna modyfikacja, a następnie implementacja algorytmu klasyfikacji (klasteryzacji) zespołów QRS reprezentowanych w przestrzeni jedno i wielokanałowej w celu określenia morfologii zespołów QRS. Klasyfikacja powinna udostępniać referencje do reprezentantów klas. Należy również dokonać oceny jakości klasyfikatora przy użyciu parametrów czułości i specyficzności oraz opisanej bazy sygnałów testowych. Projekt stanowi jeden z modułów tworzących aplikację do komputerowej analizy sygnału EKG, której przykładowe etapy przedstawiono na rys. 2.1. Komunikacja z pozostałymi projektami odbywa się poprzez pliki. Rys. 2.1. Podstawowe etapy automatycznej analizy zapisu EKG [Augustyniak, 2001] [Augustyniak, 2007]. Automatyczna interpretacja sygnału EKG charakteryzuje się wieloma zaletami. Umożliwia przetworzenie bardzo wielu zapisów z użyciem identycznych kryteriów czy wielokrotną analizę każdego zapisu w poszukiwaniu różnych patologii, a także standaryzuje postępowanie i rezultaty diagnostyczne oraz ułatwia archiwizację, transmisję i zarządzanie sygnałami i diagnozami. Nie może jednak zastąpić lekarskiej oceny zapisu EKG, gdyż istnieje wiele wątpliwości i trudności -4-
związanych np. z uwzględnieniem informacji pozakardiologicznej, możliwością formalizacji w sposób algorytmiczny wszystkich etapów postępowania diagnostycznego czy też odpowiedzialnością za diagnozę postawioną przez komputer. W znaczący jednak sposób wspomaga proces podejmowania decyzji przez lekarza i może pomóc uwidocznić pewne trudno dostrzegalne patologie [Augustyniak, 2007]. Celem klasyfikacji zespołów QRS jest wyodrębnienie grup (rodzajów kształtów) zespołów podobnych w zadanym zakresie tolerancji. Odmienny kształt zespołu jest spowodowany odmiennie przebiegającym pobudzeniem, czyli takim, którego źródło jest położone poza podstawowym generatorem rytmu). Dlatego też, liczba odmiennych grup pobudzeń oraz ich procentowy udział w zapisie EKG stanowi reprezentację ilości aktywnych ośrodków bodźcotwórczych. Ostatni etap klasyfikacji polega na wskazaniu rzeczywistego zespołu najlepiej reprezentującego daną klasę [Augustyniak, 2001]. Podstawą klasyfikacja zespołów QRS może być: a. surowy lub przetworzony sygnał w obrębie zespołu QRS Przetworzenie sygnału może polegać na filtracji dolnoprzepustowej lub podpróbkowaniu. Klasyfikacja bazuje na ustalaniu czy analizowany zespół przynależy do jednej z istniejących klas poprzez porównanie sygnału z wzorcem klasy przy założeniu pewnej tolerancji niepodobieństwa. Natomiast w przypadku braku stwierdzenia przynależności, zostaje utworzona nowa klasa. Porównanie może następować jednokrotnie lub z resynchronizacją (w przypadku bardziej rozbudowanych systemów analizy zapisu EKG). Porównanie z resynchronizacją polega na wybraniu wzajemnego przesunięcia sygnału i wzorca w ustalonym wcześniej zakresie, które gwarantuje najlepsze dopasowanie, przez co uzyskuje się kompensację przesunięcia czasowego punktu synchronizacji. Bardzo często stosowana jest również modulacja tolerancji niepodobieństwa odległością od centrum wzorca (im dalej od niego, tym większa tolerancja) oraz prędkością (im większa jest jej wartość, tym większa modulacja). Ta pierwsza, pozwala na uwypuklenie cech skupionych wewnątrz klasyfikowanego odcinka, kosztem zawartości jego marginesów. Druga natomiast zapobiega tworzeniu nowych klas na podstawie braku synchronizacji pomiędzy pracą serca a taktowaniem przetwornika a/c. b. wektor cech reprezentujących zespół QRS Przedmiotem klasyfikacji jest opisujący każdy zespół QRS wektor współczynników kształtu, z których każdy reprezentuje inną wielkość, przez co wartość tolerancji jest dobierana indywidualnie dla każdego pola. Nie ma również możliwości resynchronizacji. Poprawne określenie morfologii zespołów QRS wymaga wspólnego uwzględniania kilku współczynników, reprezentujących różne aspekty własności sygnału. Współczynnikami kształtu, które są rezultatami -5-
wstępnego przetwarzania sygnału w określonym zakresie i których dobór odbywa się doświadczalnie, mogą być: współczynnik Malinowskiej stosunek pola powierzchni figury zespołu QRS do obwodu, stosunek dodatniej części amplitudy do ujemnej, procentowy udział próbek, w których prędkość przekracza 1/3 prędkości maksymalnej, stosunek maksymalnej prędkości do maksymalnej amplitudy. Współczynniki powinny charakteryzować się nieczułością na niedokładności położenia punktu detekcji i nieprecyzyjnego określania granic przetwarzania, maksymalnym różnicowaniem swych wartości dla zespołów komorowych (V) i nadkomorowych (SV) oraz niezależnością w przypadku współczynników tworzących wektor cech. Ich wyznaczanie powinno odbywać się niskim nakładem mocy obliczeniowej. Przewaga klasyfikacji wektorów cech w stosunku do klasyfikacji sygnałów uwidacznia się w zmniejszeniu nakładów obliczeniowych, jednak odbywa się to kosztem mniejszej kontroli nad procesem klasyfikacji [Augustyniak, 2001] [Augustyniak 1998]. W przypadku konstruowania czy implementacji algorytmów klasyfikacji należy uwzględnić kilka podstawowych problemów. Jednym z nich jest możliwość reprezentacji dwóch identycznych zespołów QRS przez dwa zdecydowanie różniące się między sobą ciągi próbek, co wynika z braku synchronizacji próbkowania z akcją serca. Kolejnym jest wymóg poprzedzenia klasyfikacji lokalizacją punktu synchronizacji np. maksimum załamka R czy przybliżonego początku zespołu QRS. Ważne jest również odpowiednie wyznaczenie zakresu porównań lub obliczeń współczynnika kształtu [Augustyniak, 2001]. Przykładowe algorytmy klasyfikacji opisano w podpunkcie c) tego rozdziału. Bazują one na wykorzystaniu transformacji falkowej ([Wasilewski, 2006]), różnych miar podobieństwa ([Moraes i in. 2002]., [Chang i in., 2005]), funkcji Hermite a ([Lagerholm i in., 2000]) czy heurystycznych współczynników kształtu ([Augustyniak, 1998]). 2.2. Zarys ogólny proponowanego rozwiązania Podstawą klasyfikacji w proponowanym rozwiązaniu są wektory cech reprezentujące poszczególne zespoły QRS. Wektory te składają się ze współczynników kształtu, które można wyliczyć stosując odpowiednie wzory. Zdecydowano się na taką podstawę klasyfikacji, gdyż zastosowanie reprezentacji zespołów QRS przy pomocy wektorów cech zmniejsza ilość przetwarzanych informacji, a dzięki temu skraca i ułatwia przeprowadzanie potrzebnych obliczeń. Wektory cech -6-
należy bowiem wyliczyć dla wszystkich wykrytych zespołów QRS w zapisie holterowskim dla zbioru danych referencyjnych oraz dla danych testowych. Po wyznaczeniu wektorów cech dla każdego z wykrytych zespołów QRS, na podstawie zbioru treningowego zapisów holterowskich wyznaczono warunki przynależności do odpowiednich klas. Przypisanie danego zespołu QRS z zbioru sygnałów testujących do odpowiedniej klasy następuje przy pomocy drzewa decyzyjnego. Wybrany algorytm klasyfikacji zespołów QRS zaimplementowano przy pomocy języka C/C++, który umożliwia szybkie pisanie efektywnych programów. Łączy on w sobie zalety języków programowania strukturalnego wysokiego poziomu, takich jak hierarchiczna i modułowa struktura programu, możliwość wykorzystania modułów do innych programów, łatwość modyfikacji, redukcja błędów i czasu pisania programu, z zaletami niskiego poziomu języków asemblerowych [Marańda, 2006] [Pociecha, 2009]. Szczególnie istotna z punktu widzenia celu projektu jest możliwość łączenia poszczególnych modułów napisanych w języku C/C++ w jedną aplikację do komputerowej analizy sygnału EKG. Moduł służący do klasyfikacji powinien być zatem tak skonstruowany, aby w łatwy sposób dało się go połączyć z pozostałymi modułami, projektowanymi przez inne zespoły projektowe. 2.3. Dyskusja alternatywnych rozwiązań Jak wspomniano w podpunkcie a) tego rozdziału podstawą klasyfikacji zespołów QRS może być sygnał w obrębie zespołu QRS lub wektor cech reprezentujących zespół. Zaletą metod bazujących na reprezentacji zespołów QRS jest mniejsza złożoność obliczeniowa wynikająca z tego, że reprezentacja posiada znacznie mniejsze rozmiary (np. 2 bajty/zespół/kanał) niż wycinek sygnału w obrębie zespołu QRS (np. 10-12 bajtów/zespół na kanał). Stosowanie reprezentacji zespołów QRS pociąga jednak za sobą konieczność wyboru takich cech sygnału, które najlepiej różnicują dwa podstawowe typy morfologiczne: zespoły nadkomorowe i zespoły komorowe. Dodatkowym kryterium przydatności konkretnej reprezentacji jest również złożoność obliczeniowa związana z jej otrzymaniem. Dlatego powszechnie nie stosuje się kryterium czasu trwania zespołów QRS. Bardziej użytecznym współczynnikiem jest stosunek pola powierzchni do obwodu w obrębie zespołu QRS, który jest łatwy do wyznaczenie, zapewnia silne rozróżnianie zespołów QRS oraz przy jego stosowaniu nie jest wymagana dokładna synchronizacja wyodrębnionych zespołów QRS. Innymi przykładami stosowanych współczynników kształtu są m.in. stosunek maksymalnej prędkości do maksymalnej amplitudy czy stosunek dodatniej części amplitudy do ujemnej [Augustyniak, 1998]. Przykłady algorytmów klasyfikacji w oparciu o wycinki sygnałów w obrębie zespołów QRS opisano poniżej w podpunktach a-c. -7-
a. Klasyfikacja przy pomocy transformacji falkowej i sieci neuronowych Do klasyfikacji zespołów QRS można wykorzystać dwuwarstwową radialną sieć neuronową. Pierwsza warstwa takiej sieci jest warstwą nieliniową z radialnymi funkcjami bazowymi jako funkcjami aktywacji (funkcje Gaussa), a na wyjściu znajduje się liniowa warstwa wyjściowa. Sieć uczy się rozpoznawania wzorców sygnału EKG na podstawie przygotowanego zbioru uczącego zawierającego reprezentatywne wektory cech wybranych zdarzeń kardiologicznych. Przykładowe wektory cech przedstawia rys. 2.2. Cechy zespołów QRS uzyskuje się na podstawie transformacji falkowej sygnału EKG (współczynniki UDWT) z wykorzystaniem wiedzy medycznej. Skuteczność algorytmów klasyfikacji zespołów QRS wykorzystujących sieć jest bardzo wysoka standardowe miary skuteczności metody czułość i specyficzność przyjmują wartości ponad 99%. Koszt obliczeniowy metody jest jednak również bardzo duży [Wasilewski 2006]. Rys. 2.2. Wektory cech UDWT. Wektory cech a i e opisujące poprawne zespoły QRS cechuje duże podobieństwo. Wyraźnie sie za to odróżniają od wektorów opisujących inne miejsca sygnału EKG [Wasilewski, 2006]. b. Klasyfikacja przy pomocy funkcji Hermite a i sieci neuronowych. Inną metodą bazującą na działaniu sieci neuronowych jest metoda opisana przez [Lagerholm i in., 2000]. Każdy zespół QRS jest zapisywany za pomocą bazowych funkcji Hermite a (rys. 2.3-8-
a), których współczynniki reprezentują dany zespól QRS. Rysunek 1.3 b) pokazuje jak wygląda reprezentacja zespołu QRS przy pomocy funkcji Hermite a (krzywa u góry zapis sygnału EKG, krzywe poniżej reprezentacja sygnału EKG przy pomocy 3, 4, 5 i 6 funkcji Hermite a). Klasyfikacja odbywa się na podstawie wektorów cech zawierających obok współczynników funkcji Hermite a, parametr opisujący szerokość zespołu QRS oraz dwa parametry związane wielkością odstępu RR, a klasyfikatorem jest samoorganizująca się sieć neuronowa, która grupuje zespoły QRS w 25 różnych klas. Schemat działania algorytmu przedstawiono na rys. 2.4. Czułość metody wynosi 99%. Błędna klasyfikacja została przeprowadzona zaledwie dla 1.5% zespołów QRS [Lagerholm i in., 2000]. a) b) Rys. 2.3. a) Bazowe funkcje Hermite a, b) zespoły QRS jako funkcje Hermite a [Lagerholm i in., 2000]. Rys. 2.4. Schemat klasyfikacji przy pomocy funkcji Hermite a i SOM [Lagerholm i in., 2000]. c. Klasyfikacja na podstawie miar podobieństwa. Klasyfikacja na podstawie odległości Mahalanobisa jest metodą umożliwiającą automatyczną klasyfikację zespołów QRS w czasie rzeczywistym. Bazuje na cechach zespołów QRS z dziedziny czasu takich jak: szerokość, łączna suma powierzchni pod krzywą, suma wartości bezwzględnych różnic próbek oraz całkowita amplituda sygnału. Dzięki temu, że rozkład wartości tych cech jest rozkładem normalnym, jako klasyfikatora używa się odległości Mahalanobisa. Po wyekstrahowaniu z sygnału powyższych cech dla każdego z zespołów QRS, algorytm wylicza odległość -9-
Mahalanobisa pomiędzy wektorami cech poszczególnych zespołów QRS, a wektorem średnim reprezentujących daną klasę zespołów QRS. Zespól QRS jest przyporządkowany do określonej klasy na podstawie minimalnej odległości wektora jego cech od średniego wektora cech reprezentującego konkretną klasę (klasyfikator minimalnej odległości). Schemat klasyfikacji przedstawia rys. 2.5. Niewątpliwą zaletą tej metody w porównaniu z metodami bardziej kosztownymi obliczeniowo, wykorzystującymi sieci neuronowe lub logikę rozmytą, jest proste podejście do klasyfikacji zespołów QRS., które sprawia, że możliwe staje się wykonanie klasyfikacji zespołów QRS w czasie rzeczywistym. Kosztem prostych i szybkich obliczeń jest niższa w porównaniu np. z sieciami neuronowymi, czułość metody, która wynosi ok. 90%, specyficzność natomiast jest porównywalna i wynosi ok. 99%. Warto dodać, że skuteczność metody nie zależy od wyboru odprowadzenia. [Moraes i in. 2002]. Rys. 2.5. Schemat klasyfikacji na podstawie odległości Mahalanobisa. Wektor cech x danego zespołu QRS jest kolejno porównywany do wektorów reprezentujących poszczególne klasy 1,2,...,n, na podstawie klasyfikatora minimalnej odległości przyporządkowywany jest do klasy [Moraes i in. 2002]. Innymi miarami podobieństwa wykorzystywanymi w algorytmach klasyfikacji zespołów QRS są metryka miejska, metryka euklidesowa, znormalizowana korelacja krzyżowa oraz stopnie relacji szarości (grey relational grade) [Chang i in., 2005]. 3. Koncepcja proponowanego rozwiązania 3.1. Schemat ogólny zaproponowanego rozwiązania Podstawą zaproponowanego sposobu klasyfikacji jest wykorzystanie wektorów cech, powstałych na wskutek obliczenia heurystycznych współczynników kształtu opisanych szerzej -10-
w podrozdziale 3.2. Etap właściwej klasyfikacji poprzedzony jest procedurami, mającymi na celu odpowiednie przygotowanie sygnału tak, aby w łatwy i możliwie jak najdokładniejszy sposób wyznaczyć reprezentację poszczególnych zespołów QRS. Ogólny schemat zaproponowanego rozwiązania wraz z kolejnością wykonywania poszczególnych procedur zamieszczono na rys. 3.1. Rys. 3.1. Szczegółowy schemat zaproponowanego rozwiązania. 3.2. Procedury poprzedzające właściwą klasyfikację Argumentami wejściowymi do klasyfikatora jest sygnał elektrokardiograficzny w postaci trzykanałowego zapisu holterowskiego o częstotliwości próbkowania 128 Hz i skali amplitudowej 1 mv = 45 LSB (5,7 mv pełnej skali) oraz numery próbek w sygnale oryginalnym, przy których nastąpiła detekcja zespołów QRS. Sygnał zapisany jest 8-bitowo bez znaku, a indeks kanału jest wewnętrzny w stosunku do indeksu próbki. Ze względu na reprezentację wejściowego sygnału EKG oraz zaproponowany sposób przyporządkowania klas zespołom QRS w oparciu o wyznaczone -11-
wektory cech, etap klasyfikacji poprzedzono wstępnym przetwarzaniem sygnału EKG oraz niezbędnymi operacjami opisanymi poniżej. Planowano na początku dokonać synchronizacji kanałów, jednak ze względu na problemy z jej implementacją, zaniechano tego pomysłu. Prawdopodobnie przyczyna trudności leży w złej jakości sygnału w odprowadzeniu 0 oraz odprowadzeniu 1, co uwidoczniono na rys. 3.2 przedstawiającym surowy sygnał EKG. Dlatego też, dalsze przetwarzanie sygnału oraz klasyfikację dokonano w oparciu o sygnał uzyskany z kanału 2 (zastosowano algorytm jednoprzebiegowy). Dla każdego zapisu holterowskiego wczytano również odpowiadający mu plik qrs_attr.out stowarzyszony, obejmujący atrybuty zespołu QRS, uzyskane automatycznie przez oprogramowanie referencyjne i zweryfikowane przez eksperta. Jak wcześniej wspomniano zawarte w nim punkty detekcji wykorzystuje się jako argument wejściowy klasyfikatora zespołów QRS, natomiast klasy przypisane poszczególnym wykrytym zespołom, wykorzystywane są w tworzeniu zbioru treningowego oraz stanowią referencję rezultatów klasyfikacji przeprowadzonej według zaproponowanej w niniejszym projekcie metody. Rys. 3.2. Surowy sygnał oryginalny w poszczególnych kanałach, linia czerwona kanał 0, linia zielona kanał 1, linia niebieska kanał 2. Następnie w celu wygładzenia szumów wykonano filtrację, wykorzystując prosty filtr uśredniający o masce rozmiaru 1x5 z wagami równymi jedności. Jej rezultat przedstawiono na rys. 3.3. Zmniejszeniu uległa amplituda zespołów QRS oraz sygnał nabrał nieco schodkowego charakteru, nie stanowi to jednak znaczącej przeszkody podczas klasyfikacji QRS. Obliczono -12-
stosunek sygnału użytecznego do szumu (SNR) zdefiniowanego jako stosunek wartości bezwzględnej amplitudy zespołu QRS do średniej wartości bezwzględnej punktów na izolinii. Jego bieżące określenie stanowiło podstawę wykluczenia zespołu QRS z procesu klasyfikacji, w przypadku wartości mniejszej od ustalonego progu. Rys. 3.3. Sygnał EKG pochodzący z kanału 2 przed filtracją (po lewej) oraz po jej wykonaniu (po prawej). Kolejnym krokiem niezbędnym do dokładniejszego wyznaczenia współczynników heurystycznych opisujących kształt zespołów QRS jest wyznaczenie poziomu izolinii. Ze względu na fakt, iż załamki P i Q nie są dokładnie wyznaczone, wykorzystano algorytm wyznaczania izolinii zaproponowany w [Augustyniak, 2001]. Przebiega on w trzech etapach: 1) Poszukuje się w otoczeniu punktu detekcji na odcinku 30 ms próbek o takim samym znaku wartości prędkości, a następnie uśrednienia się wartości prędkości w wybranych punktach. 2) Na odcinku 250 ms przed punktem detekcji poszukuje się zadanej ilości próbek, która początkowo odpowiada 60 ms (w przypadku sygnałów wykorzystanych w projekcie jest to 8 próbek). Szukane punkty mają charakteryzować się wartością bezwzględną prędkości poniżej 1/4 średniej otrzymanej w obrębie zespołu QRS. Jeżeli wymagana ilość próbek nie zostaje znaleziona, następuje jej dekrementacja i procedura jest wznawiana. -13-
3) Po znalezieniu wymaganego odcinka, następuje uśrednianie wagowe próbek (waga jest odwrotnie proporcjonalna do wartości bezwzględnej lokalnej prędkości). Następnie uwzględniono wyznaczoną izolinię, przesuwając sygnał w taki sposób by znajdowała się ona na poziomie 0. Dokonano tego dla każdego wykrytego zespołu QRS z osobna w oparciu o poziom izolinii wyznaczony na podstawie odcinka chronologicznie poprzedzającego dany punkt detekcji, przez co redukuje się nieco ewentualne zjawisko płynięcia izolinii. Pamiętając o sposobie zapisu surowego sygnału EKG oraz wiedząc, że 1mV odpowiada 45LSB, a pełna skala wynosi 0 5,7 mv (czyli 1 LSB = 22 µv), przeskalowano sygnał. Rezultat przeskalowania i uwzględnienia poziomu izolinii przedstawiono na rys. 3.4. Rys. 3.4. Sygnał EKG po uwzględnieniu poziomu izolinii oraz przeskalowaniu amplitudy podanej w µv. Po wykonaniu powyższych operacji przygotowawczych, przystąpiono do etapu klasyfikacji zespołów QRS, opisany szerzej w podrozdziale 3.3. Wyznaczenie heurystycznych współczynników kształtu dla każdego z wykrytych zespołów QRS poprzedzono określeniem zakresu ich obliczeń, który dla każdego QRS zdefiniowano poprzez lokalizację przybliżonego początku oraz przybliżonego końca zespołu. Porównaniu podlega więc wyłącznie część sygnału pomiędzy wyznaczonymi punktami, co daje lepsze rezultaty niż określenie stałego zakresu dla wszystkich zespołów QRS. Sygnał EKG z nałożonymi punktami odpowiadającymi przybliżonemu początkowi oraz przybliżonemu końcowi zespołu QRS zaprezentowano na rys. 3.5. -14-
Rys. 3.5. Sygnał EKG z zaznaczonymi na zielono punktami przybliżonego początku i końca zespołu QRS. 3.3. Klasyfikacja Dane z bazy sygnałów EKG podzielono na dwa zbiory. Pierwszy to zbiór treningowy na podstawie którego zbudowano model klasyfikator. Drugi zbiór testowy, posłużył do sprawdzenia poprawności działania algorytmu. Zbiór treningowy stanowią pliki: ah_29_1.dcm; ah_29_2.dcm; ah_29_3.dcm; ah_29_4.dcm; ah_23_2.dcm; A zbiór testowy zawiera pliki: ah_23_1.dcm; ah_21_1.dcm; ah_21_2.dcm; ah_21_3.dcm; ah_21_4.dcm; Każdy z sygnałów z obu tych zbiorów ma przypisany do siebie zbiór (plik qrs_attr.out) zawierający listę wartości atrybutów opisowych (tzw. deskryptorów), czyli numeru konkretnej klasy, do jakiej -15-
dany zespół QRS został zaklasyfikowany. Są to klasy o numerach od -8 do 20. Liczebność poszczególnych klas dla zbioru treningowego przedstawia tab. 3.1. Nie zawiera klas od -7 do -1, które nie zostały wskazane w pliku referencyjnym. Tab. 3.1. Liczebność poszczególnych klas występujących w zbiorze treningowym. Numer klasy Liczebność Numer klasy Liczebność -8 7 10 5 0 5 11 9 1 413 12 14 2 3033 13 3 3 787 14 1 4 434 15 2 5 186 16 1 6 234 17 1697 7 25 18 1 8 33 19 1 9 4 20 1 Dalszej analizie poddano jedynie te klasy, których liczebność wynosi powyżej 100 zespołów QRS. Są to klasy: 1, 2, 3, 4, 5, 6 oraz 17. Pozostałe klasy zawierają zbyt mało zespołów QRS, aby na ich podstawie było możliwe wyznaczenie reprezentatywnych parametrów charakteryzujących dana klasę. 3.2.1 Wyliczenie wektorów cech Podstawą klasyfikacji w proponowanym rozwiązaniu są wektory cech reprezentujące poszczególne zespoły QRS. Wektory te składają się ze współczynników kształtu, które można wyliczyć stosując odpowiednie wzory [Augustyniak, 1998]: stosunek pola powierzchni do obwodu: h N ( s( n) ) n= 0 1 = 10 (3.1) N ( s( n) s( n 1) ) n= 1 stosunek maksymalnej prędkości do maksymalnej amplitudy: ( s( n) + s( n 2) 2s( n 1) ) max n= 2, N h5 = 1000 (3.2) max( s( n)) min( s( n)) n= 2, N n= 2, N -16-
ilość próbek, w których prędkość przekracza 40% prędkości maksymalnej: ( s( k) s( k 1) ) h10 = k : < 0.4 max s( n) s( n 1) n = 1, N (3.3) W dalszej części klasyfikacji wykorzystano także trzy dodatkowe cechy zespołu QRS, jakimi są: amplituda dodatnia oznaczona jako A max ; amplituda ujemna oznaczona jako A max ; stosunek dodatniej części amplitudy do ujemnej - oznaczony jako h 11 ; Jako podstawę klasyfikacji wybrano wektor cech reprezentujący zespół QRS. Zastosowanie reprezentacji zespołów QRS przy pomocy wektorów cech zmniejsza ilość przetwarzanych informacji, a dzięki temu skraca i ułatwia przeprowadzanie potrzebnych obliczeń. Wektory cech wyliczono dla wszystkich wykrytych zespołów QRS w zapisie holterowskim dla zbioru danych treningowych. 3.2.2 Wyznaczenie wektorów cech reprezentujących dane klasy Następnie, w celu wyznaczenia parametrów charakteryzujących konkretne klasy, dla wszystkich plików ze zbioru treningowego wykonano histogramy przedstawiające rozkład danego parametru w każdej klasie. Rys. 3.6 przedstawia przykładowe histogramy rozkładu parametrów h 1, h 5 i h 10. w najliczniejszych klasach (od 1 do 6) dla zbioru treningowego. -17-
Rys. 3.6. Histogramy parametrów h 1, h 5 i h 10 dla klas od 1 do 6 dla zbioru treningowego. Analizując histogramy, można zauważyć, że parametr h 10 nie jest dobrym parametrem do rozróżnienia poszczególnych klas przyjmuje wartości z bardzo wąskiego przedziału (najczęściej 5 7), a rozkład jego wartości w różnych klasach wygląda bardzo podobnie. Dużo lepszymi parametrami są za to h 5 i h 10. Jako parametry reprezentatywne dla klas zespołów QRS przyjęto środki najliczniejszych klas z histogramów. W przypadku niesymetrycznego rozkladu, gdy najliczniejsza klasa histogramu była dwa razy bardziej liczna od kolejnej, wartość parametru reprezentatywnego wyliczono jako -18-
średnią ważoną środków tych dwóch klas współczynnikami wagowymi były liczebności klas. Tab. 3.2 przedstawia zestawienie otrzymanych w te sposób reprezentantów cech dla poszczególnych klas. Tab. 3.2. Parametry h 1, h 5 i h 10 reprezentacyjne dla danych klas. Numer Parametry klasy h1 h5 h10 1 23 208 6 2 24 197 6 3 24 194 6 4 27 205 6 5 24 173 6 6 22 160 7 17 29 200 6 Zestawienie parametrów charakterystycznych dla poszczególnych klas potwierdza nieużyteczność parametru h 10 w klasyfikacji dla wszystkich klas oprócz 6 przyjmuje on taką sama wartość. Warto zwrócić uwagę, że pozostałe dwa parametry w niektórych przypadkach bardzo niewiele się różnią pomiędzy klasami. Dobrym przykładem są klasy 2 i 3, które charakteryzują się taką samą wartością parametru h 1, a i niewielką różnicą h 5. Wykres przedstawiony na rys. 3.7 pokazuje rozmieszczenie na płaszczyźnie punktach charakterystycznych dla różnych klas. Widać, że odległości pomiędzy niektórymi punktami są na tyle niewielkie, że może prowadzić do błędów w klasyfikacji. -19-
Rys. 3.7. Wykres przedstawiający zestawienie parametrów h 1, h 5 reprezentacyjnych z tab. 3.2 dla poszczególnych klas. 3.2.3 Wykresy parametrów W związku z tym, że punkty charakterystyczne różnych klas leżą tak blisko siebie, postanowiono sporządzić wykresy przestawiające zestawienie parametrów h 1, h 5 dla wszystkich zespołów QRS ze zbioru treningowego. Rys. 3.9 przedstawia zestawienie dla wszystkich zespołów QRS, natomiast na rys. 3.8 zestawiono osobne wykresy dla punktów odpowiadających danej klasie. Okazuje się, że chmury punktów odpowiadające różnym klasom bardzo często się pokrywają co oznacza, że klasyfikacja oparta jedynie na parametrach h 1, h 5 może prowadzić do błędnych wyników i zaklasyfikowania zespołów QRS do niewłaściwej klasy. Rys. 3.8. Legenda kolorów do wykresów parametrów. -20-
Rys. 3.9. Zestawienie parametrów h 1, h 5 dla wszystkich zespołów QRS ze zbioru treningowego. Kolory punktów odpowiadają ich przynależności do poszczególnych klas opisanych na legendzie znajdujące się na rys. 3.8. -21-
Rys. 3.10 Zestawienie parametrów na wykresach osobno dla każdej klasy od 1 do 6. Legenda kolorów na rys. 3.8. W związku z tym, że rozróżnienie chmur punktów jedynie na podstawie parametrów h 1, h 5 może spowodować błędną klasyfikację, wprowadzono dodatkowe trzy parametry: amplitudę dodatnią oznaczoną jako A max ; amplitudę ujemną oznaczoną jako A max ; -22-
stosunek dodatniej części amplitudy do ujemnej - oznaczony jako h 11 ; Okazało się, że parametr h 11, podobnie jak h 10, przyjmuje wartości z bardzo wąskiego przedziału i dlatego również został odrzucony. Dla pozostałych parametrów sporządzono wykresy zestawiające je w różnych kombinacjach. Wykresy zawierające punkty dla wszystkich klas zostały przedstawione na rys. 3.11 3. 16. Rys. 3.11. Wykres parametrów A max i h 1. Na podstawie wykresu parametrów A max i h 1 z rys. 3.11 można zaobserwować wyraźne wydzielenie się części punktów odpowiadających klasie 2 (różowych). Punkty klasy 5 i 6 (czerwone i czarne)grupują się w ograniczonym obszarze po lewej stronie wykresu. Punkty klasy 1 (granatowe) występują w tych samych miejscach, co punkty klasy 4 (żółte) i klasy 3 (zielone). Duża część pozostałych punktów odpowiadających klasie 2, podobnie jak wszystkie punkty klasy 17 (jasnoniebieski) występuje na całym obszarze wykresu. -23-
Rys. 3.12. Wykres parametrów A min i h 1. Na wykresie parametrów A min i h 1 z rys. 3.12 widać wyraźne oddzielenie chmur punktów klas 5 i 6 (czerwone i czarne) od klasy 4 (żółte). Punkty klasy 3 (zielone) znajdują się w obszarze występowania punktów klasy 5 i 6 oraz 3. Punkty klasy 1 (granatowe) znowu pokrywają się z punktami klasy 4 (żółte). A spośród punktów klasy 2 (różowe) ponownie wydzieliła się chmura, nie pokrywająca się z punktami żadnej innej klasy. Jednak większość punktów klasy 2 (różowe) znajduje się w obszarze występowania klas 1, 3 i 4, podobnie jak punkty klasy 17 (jasnoniebieski). -24-
Rys. 3.13. Wykres parametrów h 5 i A max. Na wykresie parametrów h 5 i A max z rys. 3.13 znowu można zaobserwować wydzielenie się chmury punktów dla klasy 2 (różowe). Punkty klas 5 i 6 (czerwone i czarne) skupiają się trochę niżej niż pozostałe, poniżej wartości h 5 = 200. Punkty klasy 1 pokrywają się z punktami klasy 4 (granatowe i żółte). Punkty klasy 3 (zielone) występują w tym samym obszarze, co punkty klas 1, 4, 5 i 6. Podobnie jak w przypadku poprzednich wykresów położenie dużej części punktów klasy 2 oraz punktów klasy 17 pokrywa się z położeniem punktów dla pozostałych klas. -25-
Rys. 3.14 Wykres parametrów h 5 i A min.. Wykres parametrów h 5 i A min z rys. 3.14 daje rozdzielenie chmur punktów klas 5 i 6 (czerwone i czarne) od 1 i 4 (granatowe i żółte). Punkty klasy 3 (zielone) występują zarówno w obszarze występowania punktów klas 5 i 6, jak i klas 1 i 4. Punkty klasy 3 (różowe) poza wydzieleniem jednego obszaru, pokrywają się z występowaniem pozostałych punktów, podobnie jak wszystkie punkty klasy 17 (jasnoniebieskie). -26-
Rys. 3.15 Wykres parametrów A min i A max. Na wykresie parametrów A min i A max z rys. 3.16 po raz kolejny można zaobserwować oddzielenie chmur punktów klas 5 i 6 (czerwone i czarne) od klas 1 i 4 (granatowe i żółte). Punkty klasy zielonej rozciągaja się na tym samym obszarze, co punkty klas 1, 4, 5, 6. Zestawienie analizy wszystkich wykresów wraz z zaznaczonymi obszarami wydzieleń chmur punktów odpowiadających poszczególnym klasom zamieszczono na rys. 3.17. -27-
Rys. 3.16 Zestawienie wszystkich wykresów wraz z naniesionymi liniami oddzielającymi obszary odpowiadające skupiskom punktów wydzielonych klas. -28-
3.2.4 Opis klas uwzględnionych w klasyfikacji W związku z tym, że na podstawie wykresów zestawiających cechy zespołów QRS dla różnych klas nie da się oddzielić od siebie niektórych chmur punktów odpowiadających różnym klasom, inne natomiast występują na całym obszarze, w klasyfikacji: nie uwzględniono klasy 17, która nie występuje w plikach zbioru testowego, nie uwzględniono klasy 3, która nie wyodrębniła się na żadnym wykresie; klasy 1 i 4 połączono razem i nowej klasie nadano numer 14; klasy 5 i 6 połączono razem i nowej klasie nadano numer 56; uwzględniono niezmienioną klasę 2; Dokonano również odrzucenia części zespołów QRS. Zespół QRS może zostać nieklasyfikowany w jednym z trzech poniższych przypadków: 1. zawiera się w części rozbiegowej klasyfikatora (pierwszych 70. zespołów) system przypisuje zespołowi QRS klasę równą -1, 2. obliczone współczynniki heurystyczne są równe zeru, co dzieje się wtedy, gdy algorytm wyznaczania przybliżonego początku i przybliżonego końca zespołu nie znajduje punktów im odpowiadających (kształt zespołu QRS odbiega od standardowego) system przypisuje zespołowi QRS klasę równą -9, 3. zostaje przekroczony dopuszczalny próg SNR (stosunku sygnału do szumu), ustalony na wartość SNR = 3 system przypisuje zespołowi QRS klasę równą -5. 3.2.5 Drzewo decyzyjne Opierając się na wynikach interpretacji wykresów z rozdz. 3.2.4 zaprojektowano drzewo decyzyjne. Drzewo działa w ten sposób, że po przypisaniu zespołowi QRS numeru klasy, odrzuca je z przeszukiwanego w kolejnych krokach zbioru. Warunki opisane w poszczególnych krokach sprawdzają położenie punktów względem obszarów odpowiadających zaznaczonych na wykresach z rys. 3.16 opisanych w rozdz. 3.2.4. Krok 1: Sprawdzenie, czy zespół QRS należy do części rozbiegowej sygnału (czy jest jednym pierwszych 70 zarejestrowanych zespołów). Jeśli TAK: przypisanie zespołowi QRS klasy -1; Jeśli NIE: przejście do kroku 2. -29-
Krok 2: Sprawdzenie, czy obliczone współczynniki heurystyczne są równe zeru (czy kształt zespołu QRS odbiega od standardowego) Jeśli TAK: przypisanie zespołowi QRS klasy -9; Jeśli NIE: przejście do kroku 3. Krok 3: Sprawdzenie, czy w obrębie zespołu QRS zostaje przekroczony dopuszczalny próg SNR. Jeśli TAK: przypisanie zespołowi QRS klasy -5; Jeśli NIE: przejście do kroku 4. Krok 4: Sprawdzenie, czy cechy zespołu QRS spełniają któryś z warunków: A max < 1100 (3.4) lub A > A 1200 (3.5) min max lub h1 > 20 0. 07Amin (3.6) lub A min > 200 (3.7) Jeśli TAK: przypisanie zespołowi QRS klasy 2; Jeśli NIE: przejście do kroku 5. Krok 5: Sprawdzenie, czy cechy zespołu QRS spełniają następujące warunki: A <.83A 2500 (3.8) min 0 max lub h < 175 (3.9) 5 lub h1 < 0.05Amin 14 lub (3.10) -30-
h5 < 0.23Amin 15 h i < 11.11h1 5 + i h 1 < 45 500 (3.11) (3.12) Jeśli TAK: przypisanie zespołowi QRS klasy 56; Jeśli NIE: przejście do kroku 6. Krok 6: Sprawdzenie, czy cechy zespołu QRS spełniają następujące warunki: A min < 200 (3.13) i h >.23A 15 (3.14) 5 0 min i A >.83A 2500 (3.15) max 0 max i A < A 1200 (3.16) min max i h1 < 20 0. 07Amin (3.17) i h >.05A 14 (3.18) 1 0 min i h 1 < 90 Jeśli TAK: przypisanie zespołowi QRS klasy 14; Jeśli NIE: przejście do kroku 7. Krok 7 Przypisanie pozostałym zespołom klasy 0. -31-
4. Rezultaty i wnioski 4.1. Ocena jakościowa i ilościowa zastosowanego rozwiązania Jakość klasyfikatora sprawdzono z użyciem standardowych miar skuteczności czułości i specyficzności oraz sygnałów testowych w postaci pięciu opisanych trzykanałowych zapisów holterowskich, zawartych w bazie stworzonej na potrzeby projektów dotyczących etapów interpretacji elektrokardiogramów: ah_23_1.dcm długość zapisu 60 min; ah_21_1.dcm długość zapisu 15 min; ah_21_2.dcm długość zapisu 15 min; ah_21_3.dcm długość zapisu 15 min; ah_21_4.dcm długość zapisu 15 min. Standardowymi miarami skuteczności są czułość i specyficzność. Duża czułość wskazuje, że klasyfikator prawidłowo przypisuje większość klas zespołom QRS zgodnie z klasami ustalonymi przez oprogramowanie referencyjne). Dokonując przyporządkowania wykrytych zespołów QRS do analizowanej klasy, można uzyskać następujące rezultaty: prawdziwie dodatni (true positive, TP) otrzymuje się, gdy klasyfikator przypisuje taką samą klasę zespołowi QRS jak wyznaczona przez oprogramowanie referencyjne i zweryfikowana przez eksperta (poprawna klasyfikacja) ; nieprawdziwie dodatni (false positive, FP) uzyskuje się w przypadku, gdy klasyfikator przypisuje analizowaną klasę zespołowi QRS, która różni się od wyznaczonej przez oprogramowanie referencyjne i zweryfikowana przez eksperta (fałszywie wykryta klasa) prawdziwie ujemny (true negative, TN) za taki rezultat uznaje się każdy prawidłowo przyporządkowany (tzn. zgodny z klasą wyznaczoną przez oprogramowanie referencyjne) zespół QRS do klasy innej niż analizowana klasa; nieprawdziwie ujemny (false negative, FN) otrzymywany w przypadku pominięcia zespołu QRS, który powinien należeć do danej klasy zgodną z wyznaczoną przez system referencyjny. Specyficzność oraz czułość klasyfikatora dla można opisać odpowiednio wzorami (4.1) oraz (4.2) (4.1) (4.2) -32-
gdzie: N liczności poszczególnych rezultatów. Uzyskane wartości parametrów dla zbioru testowego przedstawiono w tabeli 4.1. Parametry obliczono na podstawie połączonej klasy 1 i 4 (w przypadku gdy klasyfikator przyporządkuje klasę 14 zespołowi QRS, który system referencyjny sklasyfikował jako klasę 1 lub 4, to jest to rezultat TP), połączonej klasy 5 i 6 (sytuacja analogiczna jak w przypadku klas 1 i 4) oraz klasy 2. Uzyskiwane wartości czułości są bardzo małe, w przypadku sygnału ah_23_1 wynosi ona mniej niż 1%. Wskazuje to na to, że obrana metoda klasyfikacji nie spełnia swoich założeń. Możliwymi przyczynami może być zbyt mały zbiór treningowy lub też nieprawidłowa klasyfikacja sygnałów dokonana przez oprogramowanie referencyjne, które wykorzystano do tworzenia drzewa decyzyjnego w niniejszym projekcie. Tab. 4.1. Zestawienie czułości i specyficzności klasyfikatora uzyskane dla poszczególnych sygnałów testowych. ah_21_1 ah_21_2 ah_21_3 ah_21_4 ah_23_1 Średnia Odch. Czułość Se 20,3 % 28,4% 21,1% 9,7% 0,2% 15,9% 11,1% Specyficzność Sp 28,8% 80,4% 30,8% 5% 0,3% 29,1% 31,8% Następnie postanowiono sprawdzić czułość i specyficzność klasyfikatora dla sygnałów należących do zbioru testowego. Wyniki przestawiono w tabeli 4.2. Bardzo wysoką czułość uzyskano dla sygnału ah_23_2. Sygnał ten charakteryzuje się praktycznie samym występowaniem zespołów QRS klasy 2. Autorki projektu przypuszczają, że zespoły QRS w tym sygnale charakteryzują się wektorem cech odbiegającym od innych reprezentantów tej klasy, gdyż na wykresach parametrów (rys. 3.9 3.15) w przypadku punktów charakteryzujących klasę 2 można zauważyć ich podział na 2 grupy, z których jedną łatwo oddzielić od punktów charakteryzujących inne klasy. Tab. 4.2. Zestawienie czułości i specyficzności klasyfikatora uzyskane dla poszczególnych sygnałów treningowych. ah_29_1 ah_29_2 ah_29_3 ah_29_4 ah_23_2 Średnia Odch. Czułość Se 59,6 % 44,2% 14,7% 46,6% 92,1% 51,4% 28% Specyficzność Sp 17,4% 67,6% 25,7% 73,3% 98,8% 56,6% 34,2% 4.2. Analiza błędów w klasyfikacji i ich przyczyn Na podstawie plików z klasyfikacją przeprowadzoną przez eksperta, porównano klasy występujące w zbiorze treningowym, na bazie którego konstruowano klasyfikator oraz klasy ze zbioru testowego. W zbiorze testowym występuje mniej klas zespoły QRS przynależą do klas od - -33-
8 do 14. Klasy o liczebności powyżej 100 to klasy 1, 2, 3, 4, 6. W tab. ( ) zestawiono liczebności dla wszystkich klas z tego zbioru. Widać, że jedna z bardzo licznych klas zbioru treningowego (klasa 6) ma w zbiorze testowym tylko 11 reprezentantów, w ogóle nie występuje tu klasa 17. Tab. 4.3 Liczebność poszczególnych klas występujących w zbiorze testowym. Numer klasy Liczebność Numer klasy Liczebność -8 8 7 99 0 42 8 10 1 4075 9 14 2 1613 10 11 3 1434 11 1 4 871 12 1 5 11 13 2 6 934 14 1 Na rys. 4.1 4.6 zestawiono porównanie wykresów parametrów dla zbioru treningowego i testowego. Kolory dla poszczególnych klas przyjęto tak samo jak na wszystkich wcześniej przedstawionych wykresach legendę kolorów można znaleźć na rys. 3.8. Rys. 4.1 Porównanie wykresów parametrów h 5 i h 1 dla zbioru treningowego (wykres po lewej) i testowego (wykres po prawej). Na wykresie parametrów h 5 i h 1 (rys. 4.1) można zaobserwować, że punkty odpowiadające klasie 6 (czarne) nie zawierają się w obszarze wyznaczonym przez prostą wyznaczoną na podstawie wykresu dla zbioru treningowego -34-
Rys. 4.2 Porównanie wykresów parametrów A min i A max dla zbioru treningowego (wykres po lewej) i testowego (wykres po prawej). Na wykresach parametrów A min i A max (rys. 4.2) widać, że punkty danych klas całkiem zmieniły swoje położenie i znajdują się w zupełnie innych przedziałach niż te, na podstawie których wyszukuje je klasyfikator. Chmura punktów odpowiadających klasie 6 (czarna) zamieniła się miejscami z chmura punktów klasy 4 (żółte) i dla zbiory testowego punkty dla klasy 4 i 6 występują w innych przedziałach niż te, które zadano klasyfikatorowi. Punkty klasy 4 (żółte) oraz 1(granatowe) ze zbioru testowego skupiły się za to w miejscu odpowiadającym punktom klasy 2 ze zbiory treningowego. Rys. 4.3 Porównanie wykresów parametrów A max i h 1 dla zbioru treningowego (wykres po lewej) i testowego (wykres po prawej) Analizując wykresy parametrów A max i h 1 dla zbiory treningowego i testowego (rys. 4.3), można zauważyć, że punkty klas 1 i 4 (granatowa i żółta) zmieniły położenie z obszaru o A max >1200 do -35-
obszaru, gdzie A max <1200. Zupełnie odwrotnie stało się z punktami klasy 2. Jedynie punkty klasy 6 i 3 (czarne i zielone) zachowały swoje położenie. Rys.4.4 Porównanie wykresów parametrów h 5 i A max dla zbioru treningowego (wykres po lewej) i testowego (wykres po prawej) Podobnie wygląda sytuacja z punktami klas 4 i 6 (zielone i czarne) dla wykresu h 5 i A max (rys. 4.4). Punkty klasy 6 jedynie delikatnie przesunęły się ku wyższym wartościom parametru, h 5 niestety w tym przypadku nawet tak delikatne przesunięcie wpływa na błędy w klasyfikacji. Punkty te opuściły bowiem w dużej części obszar, jaki na podstawie zbioru treningowego przypisywał im klasyfikator. Większy problem pojawia się w przypadku punktów klasy 1, 2 i 4 (granatowe, różowe i żółte), których położenie na wykresie przedstawiającym zbiór testowy jest zupełnie inne niż na wykresie dla zbioru treningowego. Rys. 4.5 Porównanie wykresów parametrów A min i h 1 dla zbioru treningowego (wykres po lewej) i testowego (wykres po prawej). -36-
Punkty klasy 6 zmieniają z kolei obszar klasyfikacji dla zbioru testowego w przypadku wykresu parametrów A min i h 1 (rys. 4.5). Obszary występowania zmieniają się także dla wszystkich pozostałych klas. Rys. 4.6 Porównanie wykresów parametrów h 5 i A min dla zbioru treningowego (wykres po lewej) i testowego (wykres po prawej) Żadna z klas nie zachowuje swojego położenia tez w przypadku wykresu parametrów h 5 i A min, co można zobaczyć na rys. 4.6. Powodami nieprawidłowej klasyfikacji mogą być: Źle dobrane cechy zespołów QRS. Możliwe, że klasyfikacja dałaby lepsze wyniki, gdyby wybrano inne parametry charakteryzujące zespoły QRS. Duże rozbieżności w wartościach parametrów charakteryzujących jedną klasę. Występujące w niektórych miejscach duże zakłócenia oraz pomniejszenie wartości lokalnych ekstremów sygnału przez zastosowanie filtracji uśredniającej. Jednak wszystkie pliki były przefiltrowane przy pomocy takiego samego filtra, a zatem filtracja nie powinna mieć znaczącego wpływu na wyniki klasyfikacji. Za mała ilość plików w zbiorze treningowym. Postępując według proponowanego rozwiązania na podstawie 5 zapisów sygnału EKG nie da się wyznaczyć klasyfikatora, który będzie się nadawać do klasyfikacji zespołów QRS w dowolnym innym sygnale. Na przykładzie zbioru testowego widać, że każdy zapis sygnału EKG charakteryzuje się innymi parametrami i nawet zespoły QRS należące do tej samej klasy, mogą się charakteryzować bardzo różnymi wartości poszczególnych parametrów. Niezsynchronizowanie kanałów. Gdyby kanały były zsynchronizowane, wektory cech dla 1 zespołu QRS składałyby się z trzy razy większej ilości parametrów, ponieważ zespól ten -37-
byłby reprezentowany w każdym z trzech kanałów i w każdym z nich można by wyliczyć zaproponowane parametry. Niedokładne wyznaczenie izolinii w okolicy danego zespołu QRS; Nie znajomość algorytmu wykorzystywanego przez program do automatycznej analizy sygnału EKG, na podstawie którego powstała klasyfikacja zapisana w plikach referencyjnych. 4.3 Propozycja modyfikacji zaproponowanej metody Według autorek projektu lepszym rozwiązaniem zagadnienia klasyfikacji zespołów QRS byłoby inne podejście do tematu, nie uwzględniające, przynajmniej w początkowej fazie, danych z plików zawierających klasyfikacje wykonaną przez program do analizy sygnału EKG. Dla każdego zapisu sygnału EKG należałoby podejść osobno i na podstawie parametrów charakteryzujących występujące w sygnale zespoły QRS, wyznaczyć odpowiednią ilość klas, które wystarczyłyby do opisania wszystkich zespołów QRS zawartych w sygnale. Ilość klas można wyznaczyć na podstawie dendrogramów. Przykładowy dendrogram dla pliku ah_21_2.dcm dla kanału 2 przedstawia rys. 4.7. Rys. 4.7 Przykładowy dendrogram, wykonany na podstawie wektorów cech składających się z parametrów h 1, h 5 i h 10 dla wszystkich wykrytych zespołów QRS w pliku ah_21_2.dcm. -38-
Analizując dendrogram dla tego pliku, można stwierdzić, że zespoły QRS, które zawierają się w zapisanym w nim sygnale można podzielić na dwie główne klasy. Każdy kolejny podział będzie wiązał się z tym że klasy będą do siebie coraz bardziej podobne, co może skutkować błędami w klasyfikacji. Na podstawie analizy dendrogramu dla każdego zapisu sygnału EKG można by wyznaczyć optymalną ilość klas zespołów QRS, a potem wyznaczyć parametry reprezentatywne dla każdej wyznaczonej klasy albo zestawić je na wykresach 2D i 3D. Ilość klas oraz uzyskane dla nich parametry reprezentatywne można by wtedy porównać z wynikami klasyfikacji przeprowadzonej przez eksperta. 5. Podsumowanie Proponowane rozwiązanie problemu klasyfikacji zespołów QRS nie przyniosło oczekiwanych rezultatów. Klasyfikację zespołów QRS zaprojektowano bazując na wynikach interpretacji sygnału EKG dokonanej przy użyciu specjalnego programu do analizy zapisów elektrokardiograficznych. W celu zmniejszenia ilości przetwarzanych informacji, wykorzystano wektory cech opisujące zespoły QRS. Wybrane parametry budujące wektory okazały się nie wystarczające do skonstruowania klasyfikatora umożliwiającego dokonanie klasyfikacji dowolnego sygnału EKG. Klasyfikator wykorzystywał zależności pomiędzy wyliczonymi parametrami, którymi były stosunek maksymalnej prędkości do maksymalnej amplitudy, ilość próbek, w których prędkość przekracza 40% prędkości maksymalnej, stosunek pola powierzchni do obwodu, wartość amplitudy dodatniej i ujemnej, a także ich stosunek. Badania literaturowe poprzedzające wykonanie części praktycznej projektu, wykazały, że przy zastosowaniu tych parametrów można uzyskać bardzo dobre wyniki klasyfikacji zespołów QRS [Moraes i in., 2002], [Augustyniak, 1998]. W celu wyznaczenia parametrów reprezentatywnych dla każdej klasy dokonano analizy histogramów, a także przedstawiono zależności poszczególnych parametrów na szeregu wykresów, na podstawie których wyznaczono warunki przynależności do poszczególnych klas. Warunki przynależności do poszczególnych klas wykorzystano w konstrukcji drzewa decyzyjnego, na podstawie którego klasyfikator dokonuje przyporządkowania klasy do danego zespołu QRS. Błędy w klasyfikacji dokonywanej przez zaprojektowany klasyfikator są najprawdopodobniej związane ze złym doborem parametrów opisujących zespoły QRS, dużym podobieństwem poszczególnych klas, niedokładnością wyznaczenia izolinii. Wobec niezadowalających wyników dla czułości i specyficzności klasyfikacji, zaproponowano alternatywne rozwiązanie problemu klasyfikacji uderzeń serca. Rozwiązanie to polega na wyznaczaniu klas zespołów QRS na podstawie dendrogramów oraz na wyznaczaniu parametrów reprezentatywnych dla uzyskanych klas na -39-
podstawie analizy statystycznej oraz wykresów zestawiających parametry opisujące zespoły QRS, a następnie na porównaniu otrzymanych w ten sposób wyników klasyfikacji z klasyfikacja przeprowadzoną przez specjalistyczne oprogramowanie do analizy sygnałów elektrokardiograficznych. 6. Literatura [Augustyniak, 1998] Augustyniak P., Optymalizacja wyboru reprezentacji zespołów skurczowych dla celów klasyfikacji zapisów holterowskich, materiały konferencyjne, Techniki Informatyczne w Medycynie, Jaszowiec 15-17. 10. 1998 [Augustyniak, 2001] Augustyniak P., Przetwarzanie sygnałów elektrodiagnostycznych, Uczelnianie Wydawnictwa Naukowo-Dydaktyczne, Kraków, 2001 [Augustyniak, 2007] Augustyniak P., Elektrokardiografia cyfrowa, prezentacja ppt, WEAIE AGH, 2007 [Chang i in., 2005] Chang K.-Ch., Wen Ch., Yeh M.-F., Lee R.-G., A comparision of similarity measures for clustering of QRS complexes, Biomedical Engineering Applications, Basis & Communications, Vol. 17 No. 6 December 2005 [Lagerholm i in., 2000] Lagerholm M., Peterson C., Braccini G., Edenbrandt L., Sörnmo L., Clustering ECG Complexes Using Hermite Functions and Self-Organizing Maps. IEEE Transactions on Biomedical Engineering, Vol. 47, No. 7, July 2000 [Marańda, 2006] Marańda W., Algorytmy i struktury danych. Prezentacja ppt, 2006. Dostępne na: http://neo.dmcs.p.lodz.pl/aisd/algorytmy_i_sieci_dzialan.pdf, data odwiedzenia strony: 26.11.2010 [Moraes i in. 2002] Moraes J.C.T.B., Seixas M.O., Vilani F.N., Costa E.V., A Real Time QRS Complex Classification Method using Mahalanobis Distance. Materiały konferencyjne, Computers in Cardiology, Memphis 22-25.09.2002 [Pociecha, 2009] Pociecha D., Język C - Część 1. Materiały dydaktyczne, 2009. Dostępne na: http://home.agh.edu.pl/~danpoc/dydaktyka/jezyk%20c%20-%20cz.1.pdf, data odwiedzenia strony: 26.11.2010 [Wasilewski, 2006] Wasilewski F., Analiza i klasyfikacja sygnałów medycznych za pomocą przeksztalceń falkowych. Prezentacja ppt, 2006. Dostępna na: http://filipwasilewski.pl/site_media/docs/wavelets-neural-networks-and-ecg-2006.pdf, data odwiedzenia strony: 26.11.2010-40-