Konkurs z przedmiotu eksploracja i analiza danych: problem regresji i klasyfikacji

Podobne dokumenty
Eksploracja danych. KLASYFIKACJA I REGRESJA cz. 2. Wojciech Waloszek. Teresa Zawadzka.

Aproksymacja funkcji a regresja symboliczna

SYSTEMY UCZĄCE SIĘ WYKŁAD 4. DRZEWA REGRESYJNE, INDUKCJA REGUŁ. Dr hab. inż. Grzegorz Dudek Wydział Elektryczny Politechnika Częstochowska

SYSTEMY UCZĄCE SIĘ WYKŁAD 10. PRZEKSZTAŁCANIE ATRYBUTÓW. Dr hab. inż. Grzegorz Dudek Wydział Elektryczny Politechnika Częstochowska.

ALGORYTM RANDOM FOREST

Algorytmy klasteryzacji jako metoda dyskretyzacji w algorytmach eksploracji danych. Łukasz Przybyłek, Jakub Niwa Studenckie Koło Naukowe BRAINS

SAS wybrane elementy. DATA MINING Część III. Seweryn Kowalski 2006

w analizie wyników badań eksperymentalnych, w problemach modelowania zjawisk fizycznych, w analizie obserwacji statystycznych.

WYKŁAD 6. Reguły decyzyjne

mgr inż. Magdalena Deckert Poznań, r. Metody przyrostowego uczenia się ze strumieni danych.

Algorytmy klasyfikacji

Systemy uczące się Lab 4

Maciej Piotr Jankowski

Wprowadzenie do klasyfikacji

Klasyfikatory: k-nn oraz naiwny Bayesa. Agnieszka Nowak Brzezińska Wykład IV

Sztuczna Inteligencja Projekt

Agnieszka Nowak Brzezińska

Metody probabilistyczne klasyfikatory bayesowskie

Analiza Danych Sprawozdanie regresja Marek Lewandowski Inf 59817

Agnieszka Nowak Brzezińska Wykład III

Agnieszka Nowak Brzezińska Wykład III

Wprowadzenie do uczenia maszynowego

Sztuczna Inteligencja Projekt

Elementy modelowania matematycznego

Drzewa decyzyjne i lasy losowe

Eksploracja Danych. wykład 4. Sebastian Zając. 10 maja 2017 WMP.SNŚ UKSW. Sebastian Zając (WMP.SNŚ UKSW) Eksploracja Danych 10 maja / 18

WSPOMAGANIE DECYZJI - MIŁOSZ KADZIŃSKI LAB IV ZBIORY PRZYBLIŻONE I ODKRYWANIE REGUŁ DECYZYJNYCH

Tadeusz Pankowski

E: Rekonstrukcja ewolucji. Algorytmy filogenetyczne

Klasyfikacja obiektów Drzewa decyzyjne (drzewa klasyfikacyjne)

ALGORYTMY SZTUCZNEJ INTELIGENCJI

Dopasowanie prostej do wyników pomiarów.

Algorytmy genetyczne w interpolacji wielomianowej

Metody systemowe i decyzyjne w informatyce

Algorytmy decyzyjne będące alternatywą dla sieci neuronowych

Identyfikacja istotnych atrybutów za pomocą Baysowskich miar konfirmacji

Modelowanie glikemii w procesie insulinoterapii

B jest globalnym pokryciem zbioru {d} wtedy i tylko wtedy, gdy {d} zależy od B i nie istnieje B T takie, że {d} zależy od B ;

Optimizing Programs with Intended Semantics

INDUKOWANE REGUŁY DECYZYJNE ALORYTM APRIORI JAROSŁAW FIBICH

Sprawozdanie z zadania Modele predykcyjne (2)

Systemy uczące się wykład 1

Wprowadzenie do programu RapidMiner Studio 7.6, część 4 Michał Bereta

Text mining w programie RapidMiner Michał Bereta

Projekt Sieci neuronowe

Systemy pomiarowo-diagnostyczne. Metody uczenia maszynowego wykład I dr inż. 2015/2016

Algorytmy i struktury danych. Wykład 4 Tablice nieporządkowane i uporządkowane

RILL - przyrostowy klasyfikator regułowy uczący się ze zmiennych środowisk


Przykład eksploracji danych o naturze statystycznej Próba 1 wartości zmiennej losowej odległość

OSTASZEWSKI Paweł (55566) PAWLICKI Piotr (55567) Algorytmy i Struktury Danych PIŁA

Klasyfikacja publikacji biomedycznych w konkursie JRS 2012 Data Mining Competition - Szkic koncepcji

SYSTEMY UCZĄCE SIĘ WYKŁAD 3. DRZEWA DECYZYJNE. Dr hab. inż. Grzegorz Dudek Wydział Elektryczny Politechnika Częstochowska.

1.7. Eksploracja danych: pogłębianie, przeszukiwanie i wyławianie

Klasyfikacja. Sformułowanie problemu Metody klasyfikacji Kryteria oceny metod klasyfikacji. Eksploracja danych. Klasyfikacja wykład 1

dr inż. Jarosław Forenc

Algorytmy klasyfikacji

Uwaga: szarych kropek po pokolorowaniu nie uwzględniaj w klasyfikowaniu kolejnych szarych.

Algorytmy, które estymują wprost rozkłady czy też mapowania z nazywamy algorytmami dyskryminacyjnymi.

9.9 Algorytmy przeglądu

OSTASZEWSKI Paweł (55566) PAWLICKI Piotr (55567) Algorytmy i Struktury Danych PIŁA

Metoda tabel semantycznych. Dedukcja drogi Watsonie, dedukcja... Definicja logicznej konsekwencji. Logika obliczeniowa.

Sortowanie. Bartman Jacek Algorytmy i struktury

Laboratorium 11. Regresja SVM.

Sztuczna Inteligencja Tematy projektów Sieci Neuronowe

Metody Sztucznej Inteligencji II

WARSZTATY METODYCZNE (dla nauczycieli matematyki szkół ponadgimnazjalnych)

Rozpoznawanie obrazów

Algorytmy i str ruktury danych. Metody algorytmiczne. Bartman Jacek

Metoda Karnaugh. B A BC A

Bydgoskie Centrum Archiwizacji Cyfrowej sp. z o.o.

Sztuczna inteligencja : Algorytm KNN

Metody klasyfikacji danych - część 1 p.1/24

Systemy uczące się wykład 2

Data Mining podstawy analizy danych Część druga

Schemat programowania dynamicznego (ang. dynamic programming)

Języki formalne i automaty Ćwiczenia 8

Witaj, tutaj Marcin Grodecki. Tym razem chcę pokazać cztery mniej znane sposoby na wyszukiwanie okazyjnych cenowo mieszkań.

Metoda list prostych Wykład II. Agnieszka Nowak - Brzezińska

< K (2) = ( Adams, John ), P (2) = adres bloku 2 > < K (1) = ( Aaron, Ed ), P (1) = adres bloku 1 >

Następnie przypominamy (dla części studentów wprowadzamy) podstawowe pojęcia opisujące funkcje na poziomie rysunków i objaśnień.

W dalszej części dokumentu przedstawiamy skrócony opis kluczowych funkcji systemu. Niniejszy dokument nie zawiera opisu technicznego systemu.

Wyszukiwanie binarne

KLASYFIKACJA. Słownik języka polskiego

Algorytmy i struktury danych

8. Drzewa decyzyjne, bagging, boosting i lasy losowe

METODY INŻYNIERII WIEDZY

Wstęp do programowania

Programowanie genetyczne, gra SNAKE

Przygotowanie materiału uczącego dla OCR w oparciu o aplikację Wycinanki.

Word. Korespondencja seryjna

Moduł TUCT. A następnie, w wyświetlonym oknie Audience planes.

Metoda eliminacji Gaussa. Autorzy: Michał Góra

Wnioskowanie bayesowskie

ZeroR. Odpowiada zawsze tak samo Decyzja to klasa większościowa ze zbioru uczącego A B X 1 5 T 1 7 T 1 5 T 1 5 F 2 7 F

Zadanie 1: Piętnastka

Meta-uczenie co to jest?

Kodowanie i kompresja Streszczenie Studia Licencjackie Wykład 11,

Metody Kompilacji Wykład 3

Raporty dodatkowe nr 1 Ewidencja Wyposażenia PL+

Transkrypt:

Konkurs z przedmiotu eksploracja i analiza danych: problem regresji i klasyfikacji Michał Witczak Data Mining 20 maja 2012 r. 1. Wstęp Dostarczone zostały nam 4 pliki, z których dwa stanowiły zbiory uczące a dwa inne były zbiorami testującymi. Jedno z zadań stanowił problem regresji a drugi problem klasyfikacji. Należało stworzyć modele rozwiązania dla obu problemów, zastosować je dla zbiorów testujących. Następnie uzyskane wyniki będą sprawdzone przez prowadzącą. Zbiór danych uczących dla problemu klasyfikacji zawierał ponad 2 tysiące instancji. Każdy z nich opisany przez 13 atrybutów, które dzielą instancje na dwie klasy. W zbiorze część argumentów ma charakter dyskretny a część decyzyjny. Tyle samo atrybutów i tyle samo przypadków zawierał zbiór danych uczących dla problemu regresji. W tym przypadku również są to argumenty ciągłe, jak i dyskretne. 2. Opis użytych metod i otrzymanych modeli 2.1. Problem regresji Przed przystąpieniem do badania postanowiono zebrać informacje, które algorytmy zaimplementowane w Wece nadają się do problemu regresji. Z wybranych metod najlepsze okazały się M5P oraz IBk (k najbliższych sąsiadów). Zdecydowano się na metodę M5P ponieważ przy wyłączeniu jednego z jej parametrów (wygładzania) dawała znakomite wyniki. Metoda, która kryje się w Wece pod nazwą M5P ma być rozwinięciem algorytmu M5. Algorytm ten ma bazować na budowaniu zwykłych drzew decyzyjnych, z tą różnicą, że w liściach mogą występować funkcje regresji zamiast klas tak jak to ma miejsce w problemach klasyfikacji. Przy budowie drzewa algorytm wybiera tak atrybuty, aby zmniejszyć przedział wartości klasy na poszczególnych gałęziach. Innymi słowy drzewo jest w budowane w taki sposób, aby każdy liść zawierał jak najmniejszy przedział wartości. Po utworzeniu drzewa wykonywany jest pruning, który może prowadzić do braku ciągłości pomiędzy sąsiednimi liśćmi w drzewie. Dlatego po tym uruchamiana jest procedura zwana wygładzaniem, która analizuje wartości funkcji w poszczególnych liściach i dopasowuje ich wartości w górę drzewa do samego korzenia. Po tej fazie następuje generowanie reguł. Z drzewa za pomocą algorytmów heurystyk wybierany jest jeden najlepszy liść, który usuwany z drzewa tworząc regułę(usuwane są również przypadki które

pokrywają ten liść ze zbioru uczącego). Krok ten powtarzany jest aż wszystkie przypadki ze zbioru uczącego się zostaną pokryte zostaną przez przynajmniej jedną regułę. Następnie wybierane są reguły, które utworzą model. Niestety nie udało się dotrzeć do informacji na jakiej podstawie wybierane są te reguły konkretnie w M5P, wiadomo jednak że np. w podstawowej wersji stosowano np. proste podejście wybierające reguły, które miały największe pokrycie. Algorytm M5P różnie się od klasycznego M5 między innymi tym, że podczas usuwania liści z drzewa stosowane jest surrogate splitting, które sprawia, że tak naprawdę z drzewa nie są usuwane liście, tylko zastępowane przez uśrednione wartości z pobieranych liści. Ostatecznie wybrano metodę M5P z włączoną wygładzaniem i minimalną liczbą przypadków w liściu określoną jako 4. W opisie algorytmu znajdujemy informacje, że wygładzanie ma polepszać jakość rozwiązania. Jednak wynik na zbiorze pokazywał odwrotną sytuacje. Postanowiono zaufać jednak osobom, które mają lepszą wiedzę o sposobie funkcjonowania tego algorytmu. Sama predykcja na podstawie modelu powinna odbywać się w dwóch krokach. W pierwszym kroku dany przypadek powinien przejść do odpowiedniego liścia, w którym będzie znajdować się odwołanie do odpowiedniej reguły (równania atrybutów ze współczynnikami), przy użyciu której można wyznaczyć daną wartość dla poszczególnego przypadku. 2.2. Problem klasyfikacji Wybór metody rozpoczął się oczywiście od analizy zestawu uczącego. Zauważono, że argumenty, które przyjmują wartości ciągłe nie wnoszą wiele do poprawy wyników. Skorzystano z algorytmów tworzących rankingi atrybutów, wbudowanych w Wekę. Wyniki potwierdziły przypuszczenie, że należy odrzucić atrybuty o ciągłych wartościach. Postanowiono, jednak pozostawić dwa z nich, które według rankingu były najbardziej przydatne. Sprawdzono większość algorytmów klasyfikujących dostępnych w Wece. Poszukiwania rozpoczęły się prostych, pojedynczych klasyfikatorów. Najlepsze wyniki uzyskano przy użyciu sieci Bayesowskich oraz tabeli decyzyjnych. Metoda wyznaczania tabel decyzyjnych uzyskała minimalnie lepsze rezultaty niż budowanie sieci bayerowskich, dlatego w dalszej części postanowiono szukać rozwiązania przy użyciu multi klasyfikatorów bazujących na tej metodzie. Poza tym przy klasyfikacja i tak bazowała tylko na argumentach dyskretnych, więc bardziej naturalne wydało się zastosowanie tabel decyzyjnych. Tabela decyzyjna jest oczywiście powiązana z pojęciem reguł decyzyjnych. Są to klasyfikatory hierarchiczne które tworzą reguły: Jeżeli <warunek> to <wynik1> albo <wynik2>. Budowanie tablic decyzyjnych sprowadza się tak naprawdę do uogólnienia, zminimalizowania reguł decyzyjnych, wyeliminowania nadmiarowych atrybutów. W dalszej kolejności badano możliwość zastosowania tej metody w multi klasyfikatorach. Przypuszczono, że może uda się wykorzystać dwa pozostawione argumenty, które przyczynią się do poprawy klasyfikacji. Dlatego spróbowano zastosować klasyfikator z założonym filtrem (FilteredClassifier) dyskretyzacji. Sądzono, że takie rozwiązanie pozwoli na wykorzystanie dwóch argumentów, które dotychczas nie były brane pod uwagę przy klasyfikowaniu. Jednak przeglądając tablicę decyzyjną zauważono, że argumenty te dalej pozostają bezużyteczne. W dalszej kolejności

próbowano uzyskać jakieś rozwiązanie, które pozwoli wykorzystywać te argumenty. Nie udało się tego osiągnąć. Być może poczyniono błędne założenia. Ostatecznie użyto więc klasyfikatora FilteredClassifier z parametrami -F "weka.filters.supervised.attribute.discretize -R first-last" -W weka.classifiers.rules.decisiontable -D -- -X 1 -R -S "weka.attributeselection.exhaustivesearch. Czyli użyto klasyfikatora tabel decyzyjnych, który z kolei jako funkcję oceny miał ustawione kombinacje Accuracy (skuteczność, dla argumentów dyskretnych) z RMSE (błąd średniokwadratowy dla argumentów ciągłych), co też miało być wskazówką, że użycie dwóch ciągłych argumentów może być możliwe. Jako metodę wyszukiwania wybrano oczywiście przeszukiwanie wyczerpujące, co prawda nie dało to poprawy rezultatu w zbiorze uczącym, ale może dać jakiś rezultat w zbiorze testowym. Filtrem była dyskretyzacja. 3. Rezultaty 3.1. Problem regresji W wyniku działania algorytmu otrzymaliśmy drzewo decyzyjne, w którym widać zastosowanie pruningu (różna głębokość poszczególnych gałęzi) a na liściach znajdują się odwołania do reguł decyzyjnych. Zauważono, że drzewo operowało tylko na 5 atrybutach. 3.1 fragment drzewa z odwłaniami do 4 pierwszych reguł Same reguły mają postać równania z różnymi współczynnikami przy atrybutach. Reguł jest 28 ale operują już na wszystkich atrybutach (nie wszystkie). 3.2 1 z 28 reguł wygenerowanych przez algorytm Analiza dopasowania stworzonego na podstawie działania tego algorytmu wprawia w osłupienie. Zwłaszcza, gdy porównamy wyniki z działania prostych algorytmów. Być może źle został odczytany sposób działania algorytmu i przyjęto błędne założenia. Jednak pewne raporty i

opracowania, które traktują o tym algorytmie często wskazują go jako ten, z którego pomocą uzyskano najlepszą predykcję. 3.3 Analiza wyników uzyskanych na zbiorze uczącym 3.2. Problem klasyfikacji W wyniku działania klasyfikatora uzyskano tablicę decyzyjną, która zawiera 36 reguł, co sugeruje że, albo nie można było ich zredukować, albo ten algorytm tego nie przeprowadza, ponieważ taka liczba reguł jest równa ilości kombinacji jaką można uzyskać z trzech atrybutów, które brały udział w procesie klasyfikacji. 3.4 Tablica decyzyjna uzyskana w jako rezultat działania algorytmu Uzyskana skuteczność na poziomie 71% wydaje się dość wysoka, jednak pryzmat wielkości instancji, która posłużyła za zbiór uczący (2200 przypadków) nie jest to już tak imponujący wynik.

3.5 Analiza skuteczności uzyskanego modelu Sensivity: 70,03% Specificity: 74% Total accuracy: 71,6% 4. Podsumowanie Przy obu problemach zauważono, że dobór algorytmu może mieć kolosalne znaczenie w wynikach. Algorytmy zawierały argumenty zarówno o dziedzinie ciągłej, jak i dyskretnej, dlatego w problemie klasyfikacji trudno było określić, który typ klasyfikatora zastosować. Oczywiście, jak się później okazało, atrybuty ciągłe były w tym przypadku bezużyteczne. Jest to kolejna rzecz na którą należało zwrócić uwagę przy budowaniu modelu. Warto zatem przeprowadzać analizę przydatności atrybutów przed przystępowaniem do budowy modeli. Problem regresji pokazał nam, że jest duża dysproporcja pomiędzy rezultatami uzyskiwanymi za pomocą prostych algorytmów, takich jak regresja liniowa, a zaawansowanymi algorytmami (M5P). Przy okazji poznano sposób działania kilku algorytmów stosowanych do tych dwóch typów problemów, o których wcześniej autor nie miał szerszego rozeznania. Ponadto warto podać informacje czego tak naprawdę dotyczyły zbiory danych, lub czy były to dane sztucznie wygenerowane. Analiza zbiorów testowych pochłonęła również sporo czasu przy badaniach.