• Nie Znaleziono Wyników

Biblioteka Newmat

W dokumencie Rozbudowa systemu KTDA (Stron 39-50)

7. Technologie i narzędzia

7.4.  Biblioteka Newmat

Newmat  jest biblioteką języka C++ udostępniającą użytkownikom podstawowe operacje na macierzach. Biblioteka kładzie główny nacisk na operacje stosowane w obliczeniach statystycznych.

W pracy korzysta się z wersji biblioteki Newmat10.

W bieżącym rozdziale zaprezentowano przykłady użycia systemu.

Zademonstrowane   funkcje   wybrano   pod   kątem   ukazania   możliwości oprogramowania w jak najszerszym zakresie. Przede wszystkim skupiono się na nowo powstałych funkcjach.

Przykład   8.1.  Obliczenie   współczynników   wiarygodności   dla wygenerowanego zbioru danych „RP”.

Procedurę rozpoczynamy od uruchomienia programu, a następnie wygenerowaniu   specjalnego   zbioru   danych   „RP”.   W   tym   celu z widocznego menu kontekstowego wybieramy kolejno opcje: 

Plik   Utwórz zbiór danych RP→  

Po wybraniu tej opcji pojawia się okno dialogowe, w którym należy zadać parametry aktualnie generowanego zbioru:

Rysunek 8.1. Okno wyboru parametrów generowanego zbioru danych.

Zatwierdzając wybór w głównym oknie programu powinien pojawić się obiekt reprezentujący wygenerowany zbiór:

Rysunek 8.2. Utworzenie obiektu zbioru danych.

Wygenerowany   zbiór   możemy   przejrzeć.   W   tym   celu   prawym przyciskiem   myszy   należy   kliknąć   interesujący   nas   zbiór   danych, a następnie wybrać opcję  Widok. Naszym oczom ukaże się nowe okno zawierające tabelę, w której każdy rekord odpowiada innemu obiektowi, a   także   komplet   histogramów   obrazujących   rozkład   wartości poszczególnych atrybutów.

Warto   również   zauważyć,   że   wraz   z   generacją   zbioru   danych automatycznie   został   utworzony   system   decyzyjny   z   domyślnym atrybutem  decyzyjnym.   Jeśli   potrzebujemy   utworzyć   system   decyzyjny bazujący   na   innym   atrybucie,   to   w   tym   celu   należy   klikając   prawym przyciskiem   myszy   na   zbiorze   danych   wybrać   opcję  Utwórz   system decyzyjny, a następnie w oknie dialogowym wybrać właściwy atrybut decyzyjny.

Rysunek 8.3. Okno przeglądu zbioru danych.

Kolejnym krokiem procedury jest odkrycie w systemie decyzyjnym wyłaniających wzorców. Dokonać tego możemy na trzy sposoby:

 odkrywanie   wyłaniających   wzorców   z   użyciem   drzewa decyzyjnego;

 odkrywanie wyłaniających wzorców z użyciem maksymalnych częstych zbiorów;

 załadowanie   uprzednio   odkrytych   wyłaniających   wzorców z pliku ARFF.

W   przykładzie   skorzystamy   z   pierwszej   możliwości.   Klikając prawym przyciskiem myszy na systemie decyzyjnym wybieramy:

Odkryj wyłaniające wzorce   Algorytm drzewa decyzyjnego

Po   tej   czynności   system   wyświetli   okno   dialogowe   służące   do nastawy parametrów algorytmu:

Rysunek 8.4. Okno wyboru parametrów algorytmu odkrywania wyłaniających wzorców.

Zatwierdzając   wybór   przyciskiem  OK  program   wykona   operację odkrywania   wyłaniających   wzorców.   Po   jej   zakończeniu   do   głównego okna   programu   dodany   zostaje   obiekt   reprezentujący   odkryte wyłaniające wzorce:

Rysunek 8.5. Utworzenie obiektu wyłaniających wzorców.

W   następnym   kroku   utworzymy   klasyfikator   CAEP.

Oprogramowanie   umożliwia   podjęcie   decyzji,   czy   chcemy   zbudować klasyfikator na podstawie wszystkich wyłonionych wzorców, czy tylko na kilku wybranych. Wykorzystamy drugą możliwość.

Klikając prawym przyciskiem myszy na obiekcie reprezentującym wyłaniające wzorce wybieramy opcję Utwórz klasyfikator CAEP bazując na   wybranych   wzorcach.   System   wyświetla   okno   dialogowe z możliwością wyboru wzorców użytych w dalszym procesie analizy:

Rysunek 8.6. Okno wyboru wyłaniających wzorców wykorzystanych w dalszym procesie analizy.

Po   wyborze   i   jego   zatwierdzeniu   w   głównym   oknie   programu pojawia się nowo utworzony obiekt wyrażający klasyfikator CAEP.

Mając do dyspozycji klasyfikator możemy przystąpić do finalnego etapu  procedury,   tj.   obliczenia  współczynników  wiarygodności.   W  tym celu   klikając   prawym   przyciskiem   myszy   na   obiekcie   klasyfikatora wybieramy opcję  Użyj do obliczenia współczynników wiarygodności.

Wyświetlone   zostaje   kolejne   okno   dialogowe,   w   którym   wybieramy system decyzyjny, który zostanie poddany przetwarzaniu:

Rysunek 8.7. Okno wyboru systemu decyzyjnego poddanego analizie.

Zatwierdzając   decyzję   współczynniki   wiarygodności   dla   danego systemu   decyzyjnego   zostają   wyznaczone,   co   w   systemie   objawia   się ukazaniem kolejnego obiektu:

Rysunek 8.8. Utworzenie obiektu zbierającego wyznaczone współczynniki wiarygodności.

System umożliwia także przejrzenie wyników działania procedury w   przejrzystej   formie   tabelarycznej.   Aby   skorzystać   z   tej   możliwości należy, klikając prawym przyciskiem myszy na obiekcie reprezentującym współczynniki wiarygodności, wybrać opcję Widok.

Wyświetlone zostaje okno zawierające wszelkie dane o badanych obiektach:

Rysunek 8.9. Okno przeglądu wyników analizy.

W   ramach   niniejszej   pracy   dyplomowej   z   powodzeniem zrealizowano   rozbudowę   systemu   KTDA.   Spełnione   zostały   wszystkie wymogi zawarte w specyfikacji wymagań.

Modernizacja   już   istniejącego   systemu   wymaga   przyjęcia odpowiedniego rygoru pracy. Ze względu na fakt, że system KTDA jest oprogramowaniem dedykowanym, przed przystąpieniem do właściwych działań autor zapoznał się z dziedziną problemu. W obrębie tych działań znalazło   się   przyswojenie   podstawowych   pojęć   z   zakresu   eksploracji danych, procesu analizy wiarygodności danych, wyłaniających wzorców oraz   współczynników   wiarygodności.   Zrozumienie   przytoczonych zagadnień   umożliwiło   dokładną   analizę   wymagań   stawianych rozbudowywanemu systemowi.

Po   przyswojeniu   wiedzy   dziedzinowej   nadszedł   czas   na   wybór narzędzi   i   technologii   stosowanych   do   rozwiązania   zadania.

Zdecydowano   się   użyć   większości   bibliotek,   którymi   posłużono   się w inicjalnej wersji projektu. Z racji tego, że były to propozycje nieznane autorowi, należało poświęcić czas na zapoznanie się z nimi.

Zdecydowanie   najbardziej   czasochłonnym   etapem   okazała   się analiza architektury systemu. Ponadto autor musiał przyzwyczaić się do konwencji stosowanych przez swojego poprzednika, co również stanowiło pewne wyzwanie.

Po   rzetelnym   przygotowaniu   teoretycznym   przystąpiono   do właściwej   pracy   nad   kodem   źródłowym   aplikacji   oraz   wprowadzaniem nowych   funkcjonalności   systemu.   Wraz   z   upływem   czasu   autor   coraz lepiej   orientował   się   w   organizacji   kodu   źródłowego   oraz   bieglej posługiwał się wykorzystywanymi narzędziami. Poskutkowało to tym, że implementacje   kolejnych   funkcji   pojawiały   się   w   krótszych   odstępach czasu.

Ostatecznie  udało się  zrealizować wszystkie  założone  cele  pracy.

System KTDA został wyposażony w nowe, praktyczne funkcje, elastyczną architekturę,   aktualne   wersje   bibliotek   oraz   nie   sprawia   żadnych trudności podczas uruchamiania na współczesnych maszynach.

1. Krzysztof   Tomaszewski  „Analiza   wiarygodności   danych z wykorzystaniem   wyłaniających   wzorców”,   praca   dyplomowa magisterska,   Politechnika   Warszawska,   Wydział   Elektroniki i Technik Informacyjnych, Instytut Informatyki, Warszawa, 2005 2. Andrzej Dominik  „Analiza danych z zastosowaniem teorii zbiorów

przybliżonych”,   praca   dyplomowa   magisterska,   Politechnika Warszawska,   Wydział   Elektroniki   i   Technik   Informacyjnych, Instytut Informatyki, Warszawa, 2004

3. Mariusz   Walkiewicz  „Ocena   wiarygodności   danych”,   praca dyplomowa   magisterska,   Politechnika   Warszawska,   Wydział Elektroniki   i   Technik   Informacyjnych,   Instytut   Informatyki, Warszawa, 2004

4. Zdzisław   Pawlak  „Rough  sets   –   Basic   notions”,  ICS   PAS  Reports, Warszawa, 1981

5. Zdzisław   Pawlak  „Systemy   informacyjne   ­   podstawy   teoretyczne”, WNT, Warszawa, 1983

6. Guozhu   Dong,   Jinyan   Li  „Efficient   Mining   of   Emerging   Patterns:

Discovering   Trends   and   Differences”,   Proceedings   of   the   SIGKDD (5th   ACM   International   Conference   on   Knowledge   Discovery   and Data Mining), 1999

7. Mosche   Lichman,   UCI   Machine   Learning   Repository,   Irvine,   CA:

University   of   California,   School   of   Information   and   Computer Science, 2013, http://archive.ics.uci.edu/ml

11. Projekt Code::Blocks, 

http://www.codeblocks.org/

12. Projekt Git,          

https://git­scm.com/

13. Biblioteka wxWidgets, 

https://www.wxwidgets.org/

14. Biblioteka Newmat, 

http://www.robertnz.net/nm_intro.htm

W dokumencie Rozbudowa systemu KTDA (Stron 39-50)

Powiązane dokumenty