Analiza Danych Case study Analiza diagnostycznej bazy danych Marek Lewandowski, inf59817 zajęcia: środa, 9.

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

ALGORYTM RANDOM FOREST

Analiza Danych Sprawozdanie regresja Marek Lewandowski Inf 59817

Systemy uczące się wykład 2

ALGORYTMY SZTUCZNEJ INTELIGENCJI

Data Mining Wykład 5. Indukcja drzew decyzyjnych - Indeks Gini & Zysk informacyjny. Indeks Gini. Indeks Gini - Przykład

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

Laboratorium 5. Adaptatywna sieć Bayesa.

Przykład eksploracji danych Case 1.X

Laboratorium 6. Indukcja drzew decyzyjnych.

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

Wprowadzenie do uczenia maszynowego

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

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

IMPLEMENTACJA SIECI NEURONOWYCH MLP Z WALIDACJĄ KRZYŻOWĄ

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

Laboratorium 4. Naiwny klasyfikator Bayesa.

Projekt Sieci neuronowe

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

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

Wprowadzenie do klasyfikacji

Określanie ważności atrybutów. RapidMiner

Elementy modelowania matematycznego

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

Modelowanie glikemii w procesie insulinoterapii

WEKA klasyfikacja z użyciem sztucznych sieci neuronowych

Ćwiczenie 6 - Hurtownie danych i metody eksploracje danych. Regresja logistyczna i jej zastosowanie

Drzewa Decyzyjne, cz.2

Laboratorium 11. Regresja SVM.

Informacje i materiały dotyczące wykładu będą publikowane na stronie internetowej wykładowcy, m.in. prezentacje z wykładów

Klasyfikacja. Indeks Gini Zysk informacyjny. Eksploracja danych. Klasyfikacja wykład 2

Systemy uczące się Lab 4

Sprawozdanie z zadania Modele predykcyjne (2)

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

Data Mining podstawy analizy danych Część druga

Systemy uczące się wykład 1

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

Metody eksploracji danych Laboratorium 4. Klasyfikacja dokumentów tekstowych Naiwny model Bayesa Drzewa decyzyjne

Data Mining Wykład 4. Plan wykładu

Algorytmy klasyfikacji

Metody Sztucznej Inteligencji II

Agnieszka Nowak Brzezińska Wykład III

Testowanie modeli predykcyjnych

1. Eliminuje się ze zbioru potencjalnych zmiennych te zmienne dla których korelacja ze zmienną objaśnianą jest mniejsza od krytycznej:

WYKŁAD 6. Reguły decyzyjne

Metody probabilistyczne klasyfikatory bayesowskie

Podstawy sztucznej inteligencji

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

Uczenie się pojedynczego neuronu. Jeśli zastosowana zostanie funkcja bipolarna s y: y=-1 gdy z<0 y=1 gdy z>=0. Wówczas: W 1 x 1 + w 2 x 2 + = 0

Ćwiczenie 12. Metody eksploracji danych

Reguły asocjacyjne w programie RapidMiner Michał Bereta

Wprowadzenie Sformułowanie problemu Typy reguł asocjacyjnych Proces odkrywania reguł asocjacyjnych. Data Mining Wykład 2

WEKA klasyfikacja z użyciem sztucznych sieci neuronowych

Sztuczna Inteligencja Tematy projektów Sieci Neuronowe

Metody klasyfikacji i rozpoznawania wzorców. Najważniejsze rodzaje klasyfikatorów

SIEĆ NEURONOWA DO OCENY KOŃCOWEJ PRZEDSIĘWZIĘCIA (PROJEKTU)

Metody eksploracji danych Laboratorium 2. Weka + Python + regresja

ID1SII4. Informatyka I stopień (I stopień / II stopień) ogólnoakademicki (ogólno akademicki / praktyczny) stacjonarne (stacjonarne / niestacjonarne)

Zadanie 1. Analiza Analiza rozkładu

Analiza Statystyczna

r. Warszawa UCZENIE SIĘ MASZYN. Drzewa i lasy losowe Dokumentacja końcowa. Autor: Krzysztof Marcinek Prowadzący: Paweł Cichosz

Klasyfikacja obiektów Drzewa decyzyjne (drzewa klasyfikacyjne)

WYKŁAD 11 Uczenie maszynowe drzewa decyzyjne

Zadanie 0 gdy nie mamy logiki rozmytej. Zadanie 1- gdy już mamy logikę rozmytą

Wstęp do sieci neuronowych, wykład 02 Perceptrony c.d. Maszyna liniowa.

Kompresja danych Streszczenie Studia Dzienne Wykład 10,

Sztuczna inteligencja : Algorytm KNN

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

Drzewa decyzyjne. Inteligentne Obliczenia. Wydział Mechatroniki Politechniki Warszawskiej. Anna Sztyber

Inteligentne systemy przeciw atakom sieciowym

Zaawansowana eksploracja danych - sprawozdanie nr 1 Rafał Kwiatkowski 89777, Poznań

Automatyczna predykcja. Materiały/konsultacje. Co to jest uczenie maszynowe? Przykład 6/10/2013. Google Prediction API, maj 2010

W narzędziu typu Excel, Calc czy Gnumeric napisz formułę logiczną która wyznaczy wartośd przynależności dla podanej temperatury do zbioru gorąco.

Wybór / ocena atrybutów na podstawie oceny jakości działania wybranego klasyfikatora.

Inteligentne systemy decyzyjne: Uczenie maszynowe sztuczne sieci neuronowe

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

WYKORZYSTANIE SIECI NEURONOWEJ DO BADANIA WPŁYWU WYDOBYCIA NA SEJSMICZNOŚĆ W KOPALNIACH WĘGLA KAMIENNEGO. Stanisław Kowalik (Poland, Gliwice)

Wykład 4: Statystyki opisowe (część 1)

Drzewa decyzyjne i lasy losowe

METODY STATYSTYCZNE W BIOLOGII

Eksploracja danych OCENA KLASYFIKATORÓW. Wojciech Waloszek. Teresa Zawadzka.

Identyfikacja istotnych atrybutów za pomocą Baysowskich miar konfirmacji

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

Sieci neuronowe w Statistica

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

STATYSTYKA MATEMATYCZNA

Indukowane Reguły Decyzyjne I. Wykład 3

Elementy inteligencji obliczeniowej

PROGNOZOWANIE OSIADAŃ POWIERZCHNI TERENU PRZY UŻYCIU SIECI NEURONOWYCH**

Zadania i funkcje skrzyń biegów. Opracował: Robert Urbanik Zespół Szkół Mechanicznych w Opolu

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

SIEĆ NEURONOWA DO OCENY KOŃCOWEJ PRZEDSIĘWZIĘCIA (PROJEKTU)

PROGNOZOWANIE PORÓWNAWCZE ENERGII PROCESOWEJ ZESTAWÓW MASZYN DO ROBÓT ZIEMNYCH JAKO CZYNNIKA RYZYKA EMISYJNOŚCI CO2

Temat: Sieci neuronowe oraz technologia CUDA

Analiza metod wykrywania przekazów steganograficznych. Magdalena Pejas Wydział EiTI PW

Agnieszka Nowak Brzezińska Wykład III

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

Data Mining z wykorzystaniem programu Rapid Miner

Cel projektu: Wymogi dotyczące sprawozdania:

Sieć przesyłająca żetony CP (counter propagation)

Transkrypt:

Analiza Danych Case study Analiza diagnostycznej bazy danych Marek Lewandowski, inf59817 lewandowski.marek@gmail.com zajęcia: środa, 9.00

Spis treści: 1 Wprowadzenie... 4 2 Dostępne dane... 5 3 Przygotowanie danych do eksploatacji... 7 3.1 Błędy znalezione w danych... 7 3.2 Oprogramowanie:... 7 3.3 Dyskretyzacja danych... 8 4 Badanie zależności między atrybutami... 9 4.1 Jednowymiarowe zależności między atrybutami... 9 4.2 Określanie ważności atrybutów... 10 5 Odkrywanie wiedzy w danych... 11 5.1 Opis zastosowanych algorytmów... 11 5.1.1 Drzewa decyzyjne... 11 5.1.2 Drzewa decyzyjne J48 z zastosowaniem cross - validation... 11 5.1.3 Adaptatywna sieć Bayes a... 11 5.1.4 Perceptron Wielowarstwowy Multilayer Perceptron... 12 5.2 Rezultaty... 12 5.2.1 Drzewa decyzyjne... 12 5.2.1.1 Drzewo decyzyjne dla atrybutu D1, dane po dyskretyzacji... 12 5.2.1.2 Drzewo decyzyjne dla atrybutu D2, dane po dyskretyzacji... 12 5.2.1.3 Drzewo decyzyjne dla atrybutu D1, dane po dyskretyzacji, wersja cheap 13 5.2.1.4 Drzewo decyzyjne dla atrybutu D2, dane po dyskretyzacji, wersja cheap 13 5.2.1.5 Drzewo decyzyjne dla atrybutu D1, dane przed dyskretyzacją... 14 5.2.1.6 Drzewo decyzyjne dla atrybutu D1, dane przed dyskretyzacją... 14 5.2.1.7 Drzewo decyzyjne dla atrybutu D1, dane przed dyskretyzacją, wersja cheap... 14 5.2.1.8 Drzewo decyzyjne dla atrybutu D2, dane przed dyskretyzacją, wersja cheap... 15 5.2.2 Adaptatywne sieci Bayes a... 15 5.2.2.1 Adaptatywna sieć Bayes a dla atrybutu D1, dane po dyskretyzacji... 15 5.2.2.2 Adaptatywna sieć Bayes a dla atrybutu D2, dane po dyskretyzacji... 16 5.2.2.3 Adaptatywna sieć Bayes a dla atrybutu D1, dane po dyskretyzacji, wersja cheap... 16 5.2.2.4 Adaptatywna sieć Bayes a dla atrybutu D2, dane po dyskretyzacji, wersja cheap... 16 5.2.2.5 Adaptatywna sieć Bayes a dla atrybutu D1, dane przed dyskretyzacją... 17 5.2.2.6 Adaptatywna sieć Bayes a dla atrybutu D2, dane przed dyskretyzacją... 18 5.2.2.7 Adaptatywna sieć Bayes a dla atrybutu D1, dane przed dyskretyzacją, wersja cheap... 18 5.2.2.8 Adaptatywna sieć Bayes a dla atrybutu D2, dane przed dyskretyzacją, wersja cheap... 19 5.2.3 Drzewa decyzyjne J48 z cross - validation... 20 5.2.3.1 Drzewo decyzyjne dla atrybutu D2, dane przed dyskretyzacją... 20 5.2.3.2 Drzewo decyzyjne dla atrybutu D2, dane przed dyskretyzacją, wersja cheap... 20 5.2.3.3 Drzewo decyzyjne dla atrybutu D2, dane po dyskretyzacji... 21 5.2.3.4 Drzewo decyzyjne dla atrybutu D2, dane po dyskretyzacji, wersja cheap 21 5.2.3.5 Drzewo decyzyjne dla atrybutu D1, dane przed dyskretyzacją, wersja cheap... 22 2

5.2.3.6 Drzewo decyzyjne dla atrybutu D1, dane przed dyskretyzacją... 22 5.2.3.7 Drzewo decyzyjne dla atrybutu D1, dane po dyskretyzacji... 22 5.2.3.8 Drzewo decyzyjne dla atrybutu D1, dane po dyskretyzacji, wersja cheap 23 5.2.4 Perceptron wielowarstwowy (Multilayer perceptron)... 23 5.2.4.1 Perceptron wielowarstwowy dla atrybutu decyzyjnego d1, dane przed dyskretyzacją... 23 5.2.4.2 Perceptron wielowarstwowy dla atrybutu decyzyjnego d1, dane przed dyskretyzacją, wersja cheap... 23 5.2.4.3 Perceptron wielowarstwowy dla atrybutu decyzyjnego d2, dane przed dyskretyzacją... 24 5.2.4.4 Perceptron wielowarstwowy dla atrybutu decyzyjnego d2, dane przed dyskretyzacją, wersja cheap... 24 5.2.4.5 Perceptron wielowarstwowy dla atrybutu decyzyjnego d1, dane po dyskretyzacji... 24 5.2.4.6 Perceptron wielowarstwowy dla atrybutu decyzyjnego d1, dane po dyskretyzacji, wersja cheap... 24 5.2.4.7 Perceptron wielowarstwowy dla atrybutu decyzyjnego d2, dane po dyskretyzacji... 25 5.2.4.8 Perceptron wielowarstwowy dla atrybutu decyzyjnego d2, dane po dyskretyzacji, wersja cheap... 25 5.3 Podsumowanie:... 25 6 Interpretacja wyników... 27 6.1 Reguły... 27 6.1.1 Drzewo decyzyjne dla atrybutu D1, dane przed dyskretyzacją... 27 6.1.2 Drzewo decyzyjne dla atrybutu D1, dane przed dyskretyzacją, wersja bez wyników najdroższych pomiarów... 27 6.1.3 Drzewo decyzyjne dla atrybutu D1, dane po dyskretyzacji... 28 6.1.4 Drzewo decyzyjne dla atrybutu D1, dane po dyskretyzacji, wersja bez wyników najdroższych pomiarów... 28 6.1.5 Atrybut decyzyjny D2, dane nie poddane dyskretyzacji... 28 6.1.6 Atrybut decyzyjny D2, dane nie poddane dyskretyzacji, wersja bez wyników najdroższych pomiarów... 29 6.1.7 Drzewo decyzyjne dla atrybutu D2, dane po dyskretyzacji... 29 6.1.8 Drzewo decyzyjne dla atrybutu D2, dane po dyskretyzacji, wersja bez wyników najdroższych pomiarów... 30 6.2 Punkty podziału w korzeniach drzew... 30 7 Literatura... 32 3

1 Wprowadzenie Pewne przedsiębiorstwo komunikacyjno transportowe wykorzystuje jeden podstawowy typ autobusów. Autobusy te podlegają regularnym przeglądom stanu technicznego. Zbiera się również dane o ich bieżącej eksploatacji. Na stanowisku diagnostycznym bada się przede wszystkim parametry układu napędowego, takie jak aktualna maksymalna moc silnika, moment obrotowy, osiągana prędkość maksymalna, ciśnienie sprężania w tłokach, zawartość elementów smołowatych w spalinach i inne. Dane eksploatacyjne dotyczą głównie zużycia paliwa i oleju w różnych okresach roku. Dane dotyczą autobusów tego samego typu eksploatowanych w podobnych warunkach. Zawierają one wartości następujących parametrów, będących symptomami stanu technicznego: s1 prędkość maksymalna [km/h], s2 ciśnienie sprężania [Mpa], s3 zawartość elementów smołowatych w spalinach wylotowych [%], s4 moment obrotowy silnika [Nm], s5 letnie zużycie paliwa [l/100km], s6 zimowe zużycie paliwa [l/100km], s7 zużycie oleju [l/1000km], s8 aktualna moc silnika [KM]. Dostępne są również dwa atrybuty decyzyjne: D1 atrybut klasyfikuje pojazdy na dwie klasy: sprawne ( 1 ) i niesprawne ( 2 ) D2 atrybut klasyfikuje pojazdy na trzy klasy: sprawne ( 1 ), wymagające drobnych napraw i obserwacji ( 2 ) oraz przeznaczone do remontu ( 3 ) Celem niniejszej analizy jest zbudowanie klasyfikatora stanu technicznego autobusów (względem podanych atrybutów decyzyjnych i wskazanych klas decyzyjnych) na podstawie udostępnionych przez przedsiębiorstwo komunikacyjno transportowe danych historycznych. 4

2 Dostępne dane Udostępnione zostały wartości pomiarów 80 autobusów: s1 s2 s3 s4 s5 s6 s7 s8 D1 D2 lp MaxSpeed Compr_preasure blacking torque summer_cons winter_cons oil_cons horsepower 1 90 2.52 38 481.8 26.4 0.7 145 1 1 2 76 2.11 70 420 22.0 25.5 2.7 110 2 3 3 63 1.96 82 400 22.0 24.8 3.7 10 3 4 90 2.48 49 477 21.9 25.1 1.0 138 1 1 5 85 2.45 52 460 21.8 25.2 1.4 130 6 72 2.20 73 425 23.7.4 2.8 112 2 3 7 88 2.50 50 480 21.6 24.7 1.1 140 1 1 8 87 2.48 56 465 22.8 27.6 1.4 135 1 1 9 90 2.56 16 486 26.5 27.3 0.2 150 1 1 10 60 1.95 95 400 23.3 24.8 4.4 96 2 3 11 80 2.41 60 451.7 26.1 1.7 125 12 78 2.4 63 448 21.8 26.0 1.9 120 13 90 2.58 26 482 22.4 24.5 0.4 148 1 1 14 62 1.98 93 400 22 28.4 3.9 100 2 3 15 82 2.5 54 462.0 26.3 1.4 132 16 65 2.22 67 402 22.0 23.9 2.3 103 2 3 17 90 2.48 51 468 22.0 26.5 1.2 138 1 1 18 90 2.60 15 488 20 23.2 0.1 150 1 1 19 76 2.39 65 428 27 33.4 2 116 2 3 20 85 2.42 50 454 21.5 26.3 1.3 129 21 85 2.41 58 450 22 25.5 1.5 126 22 88 2.47 48 458 22.4 25.1 1.1 130 1 1 23 60 1.93 90 400 24 28.7 4 95 2 3 24 64 2.20 71 420 23.5.2 2.6 105 2 3 25 75 2.39 64 432 22.2 25.1 1.7 114 2 2 26 74 2.36 64 420 21.9 25.4 1.9 110 2 2 27 68 2.15 70 400 22 26 2.6 100 2 3 28 70 2.2 65 412 22.8 25.3 2.1 102 2 3 29 90 2.58 18 480 20.8 23.4 0.3 146 1 1 30 83 2.39 64 445 22.6 2 120 2 2 31 80 2.40 60 442 21.5 25.4 1.6 119 32 88 2.49 44 478 21.8 25.2 0.9 138 1 1 33 87 2.46 51 462.2 25 1.2 133 1 1 34 85 2.40 55 445 23 26.2 1.5 120 35 87 2.5 46 479 21.5 25.2 1 136 1 1 36 85 2.41 65 450 22 26.1 1.9 125 37 90 2.48 40 480 22 25 0.8 139 1 1 38 72 2.36 64 428 21.9 25.4 2 11 3 39 75 2.37 60 440 22.4 26 1.8 120 2 2 40 75 2.36 68 443.6 2.1 113 2 3 41 85 2.48 61 458 21.5 25.2 1.9 126 5

42 86 2.48 52 462 22.4.8 1.5 129 1 1 43 86 2.49 58 462.3 25.2 1.6 130 1 1 44 88 2.5 48 475 22 24.5 1.1 140 1 1 45 68 2.2 88 422 22.5 25.7 3.2 108 2 3 46 72 2.36 78 424 22.4 25.5 2.8 112 2 3 47 75 2.35 66 425 22.9 26..4 114 2 3 48 82 2.38 65 430 23 25.8 2.3 115 2 3 49 90 2.55 38 482 20.8 24.6 0.7 146 1 1 50 84 2.36 64 438 23.3 26.2 2.1 119 2 3 51 90 2.54 40 480 21.8 25.1 0.9 145 1 1 52 89 2.51 46 470 22 25.5 1.1 141 1 1 53 85 2.48 60 440 22.2 26.3 1.8 120 54 90 2.52 45 479 21.6 25.1 1 145 1 1 55 90 2.54 47 482 24.9 1 145 1 1 56 85 2.5 60 446 21.9 24.6 1.9 123 1 1 57 88 2.56 50 465 21.6 24.5 1.2 137 1 1 58 84 2.32 65 428 22.0 25..2 116 2 3 59 86 2.47 54 452 22 25.1 1.6 125 1 1 60 66 2.29 86 402 23.3 26.6 3.2 105 2 3 61 90 2.60 34 486 21.5 0.6 148 1 1 62 67 2.24 86 406 23.5 27 3 104 2 3 63 75 2.36 67 428 22.9 26..5 112 2 3 64 86 2.42 60 444 22 25.2 1.8 122 65 88 2.51 50 475 22 25 1 142 1 1 66 85 2.38 63 440 21.8 26 2.1 120 2 2 67 72 2.30 85 420 22 25.2 3.1 110 2 3 68 75 2.4 69 428 20.9 25.6 2.4 115 2 3 69 65 2 94 400 24.7.2 4.1 98 2 3 70 87 2.4 60 460 22 25.6 1.7 131 1 1 71 88 2.46 50 468 22.4.9 1.2 137 1 1 72 90 2.58 31 484 20.9 23.6 0.5 146 1 1 73 88 2.5 49 464 22.5.2 1.2 138 1 1 74 87 2.48 52 465 21.9 24.6 1.4 135 1 1 75 86 2.5 55 456 22.0 25.1 1.5 130 1 1 76 88 2.52 46 472 21.8 23.8 1.1 141 1 1 77 74 2.42 67 422.5.7 2.3 116 n 2 78 70 2.2 65? 22.9 26..1 102 2 3 79 90 2.62 49 468 218 26.4 1.7 145 1 1 80 85 2,45 52 460 21.8 25.2 1.4 130 6

3 Przygotowanie danych do eksploatacji 3.1 Błędy znalezione w danych - pomiar numer 10: brak separatora kolumn (uznano za błąd wprowadzania danych i dodano separator, ) - pomiar 77: wartość atrybutu D1 spoza dziedziny (pomiar odrzucono) - pomiar 78: wartość atrybutu s4 spoza dziedziny (pomiar odrzucono) - pomiar 79: wartość atrybutu s5 jeden rząd wielkości większa od średniej dla wszystkich pomiarów (uznano za błąd wprowadzania danych i zmieniono wartość 218 na 21.8) - pomiar 80: zmieniona wartość separatora części całkowitej od ułamkowej dla atrybutu s2 (uznano za błąd wprowadzania danych i zmieniono wartość 2,45 na 2.45) 3.2 Oprogramowanie: W trakcie procesu analizy danych wykorzystane zostały: pakiet Oracle Data Miner 10.2, baza danych Oracle 10g, Weka 3-5 oraz Microsoft Excel XP. Dane zostały wprowadzone do bazy danych Oracle 10g do tabeli zdefiniowanej w następujący sposób: create table autobusy ( A0 number(2), MaxSpeed number(3), Compr_preasure number(3,2), blacking number(2), torque number(4), summer_cons number(4,1), winter_cons number(4,1), oil_cons number(4,1), horsepower number(3), d1 number(1) check (d1 in (1, 2)), d2 number(1) check (d2 in (1, 2, 3)) ); a także do programu Weka 3-5 do pliku zdefiniowanego w poniższy sposób: @relation 'autobusy_1' @attribute LP real @attribute MaxSpeed real @attribute ComprPreasure real @attribute blacking real @attribute torque real @attribute summer_cons real @attribute winter_cons real @attribute oil_cons real @attribute horsepower real @attribute d1 {1,2} @attribute d2 {1,2,3} 7

3.3 Dyskretyzacja danych Zgodnie z propozycją eksperta od diagnostyki samochodowej przyjęto następujące granice przedziałów: s1 : (-, 74>, (74, 79>, (79, 85>, (85, ) s2 : (-, 2.2>, (2.2, 2.4>, (2.4, ) s3 : (-, 59>, (59, ) s4 : (-, 441>, (441, ) s5 : (-, 22>, (22, ) s6 : (-, 25.2>, (25.2, ) s7 : (-, 1.2>, (1.2, ) s8 : (-, 119>, (119, ) Dane po dyskretyzacji zostały zapisane w perspektywie bazy danych (do analizy przez Oracle Data Miner) oraz w pliku (do analizy w programie Weka) o następującej strukturze: @relation 'autobusy_discret' @attribute LP real @attribute maxspeed {1,2,3,4} @attribute ComprPreasure {1,2,3} @attribute Blacking {1,2} @attribute torque {1,2} @attribute summer_cons {1,2} @attribute winter_cons {1,2} @attribute oil_cons {1,2} @attribute horsepower {1,2} @attribute d1 {1,2} @attribute d2 {1,2,3} @data 8

4 Badanie zależności między atrybutami 4.1 Jednowymiarowe zależności między atrybutami Poniższa tabela przedstawia wartości współczynników korelacji Pearsona obliczonych dla każdej pary atrybutów (dane nie poddane dyskretyzacji). MaxSpeed Compr_preasure blacking torque summer_cons winter_cons oil_cons horsepower 1 0,907045041-0,85466 0,932-0,36468501-0,3353116-0,89855 0,9271379 MaxSpeed 1-0,85069 0,8906-0,35257768-0,3342781-0,91395 0,89333 Compr_preasure 1-0,901 0,32439985 0,3974472 0,96371-0,9116111 blacking 1-0,37297796-0,3698168-0,92482 0,982742 torque 1 0,7356084 0,3537-0,3612481 summer_cons 1 0,38012-0,3546784 winter_cons 1-0,9188285 oil_cons 1 horsepower Z powyższych obliczeń widać, iż istnieje silna korelacja (bądź to pozytywna bądź negatywna) pomiędzy: MaxSpeed horsepower (93%) MaxSpeed oil_cons (-90%) MaxSpeed torque (93%) MaxSpeed blacking (-85%) MaxSpeed Compr_preasure (91%) Compr_preasure horsepower (90%) Compr_preasure oil_cons (-91%) Compr_preasure torque (89%) Compr_preasure blacking (-85%) Blacking horsepower (-91%) Blacking oil_cons (96%) Blacking torque (-90%) Torque horsepower (98%) Torque oil_cons (-92%) Oil_cons horsepower (-91%) Odkryte zależności pozwalają stwierdzić, iż nie wszystkie atrybuty mogą być podczas analizy użyteczne. Być może niektóre z nich mogłyby zostać zastąpione, bez spadku jakości analizy, przez inne. Należy zauważyć niskie wartości współczynników korelacji Pearsona pomiędzy wartościami pomiarów zużycia paliwa i oleju a wartościami pozostałych atrybutów. Uzyskany rezultat pozwala sądzić, iż za pomocą wyników pomiarów zużycia paliwa i oleju nie będzie można określać wielkości pozostałych atrybutów. Przeprowadzono również analizę pod kątem występowania między atrybutami zależności nieliniowych (wykładniczych i wielomianowych). Interpretacja wykresów zależności pomiędzy zmiennymi pozwala jednoznacznie stwierdzić, że w badanym zbiorze danych występują tylko liniowe (lub bardzo bliskie liniowym) zależności. 9

4.2 Określanie ważności atrybutów Ważność atrybutów dla drzewa o atrybucie decyzyjnym D1: Name Rank Importance TORQUE 1 0.678465138 COMPR_PREASURE 2 0.598613949 HORSEPOWER 3 0.573343359 MAXSPEED 4 0.510328278 BLACKING 5 0.463623903 OIL_CONS 6 0.221469596 WINTER_CONS 7 0.070521837 SUMMER_CONS 8 0.04510052 Ważność atrybutów dla drzewa o atrybucie decyzyjnym D2: Name Rank Importance MAXSPEED 1 0.710756916 HORSEPOWER 2 0.598280849 TORQUE 3 0.572458028 COMPR_PREASURE 4 0.498717836 BLACKING 5 0.477736732 OIL_CONS 6 0.388487235 WINTER_CONS 7 0.108704468 SUMMER_CONS 8-0.020595982 Ważność atrybutów wyznaczona została za pomocą algorytmu Minimum Description Length (MDL) pakietu Oracle Data Miner dla danych nie poddanych dyskretyzacji. Algrotym MDL działa w następujący sposób: Każdy atrybut (atrybut określający) traktowany jest jako prosty model przynależności atrybutu decyzyjnego (atrybut określany) do jednej z klas decyzyjnych. Z każdą wartością atrybutu określającego (i) skojarzonych jest n i przykładów w zbiorze trenującym oraz rozkład prawdopodobieństwa p ij dla m wartości atrybutu określanego (różne wartości określane jako j). Z faktu, iż liczba przykładów uczących wynosi n i wynika, iż istnieje co najwyżej n i p ij różnych przypadków w danych. Z kombinatoryki wynika natomiast, iż liczba m różnych wartości spośród n elementów wynosi: n m. m Stąd też rozmiar listy dla atrybutu określającego wynosi: ni m log 2. i m Całkowita długość opisu dla atrybutu określającego wynosi więc: ni m log 2 log 2 ( pij ). i m i j Ranking atrybutów określających budowany jest na podstawie miejsca na liście (posortowanej rosnąco) odpowiadających opisów długości. 1 1 http://download-uk.oracle.com/docs/html/b10698_01/3predict.htm#1005930 10

5 Odkrywanie wiedzy w danych 5.1 Opis zastosowanych algorytmów Do budowy modeli wykorzystano cztery typy algorytmów: - drzewa decyzyjne (Oracle Data Miner) - drzewa decyzyjne J48 z zastosowaniem cross validation (Weka) - adaptatywna sieć Bayes a (Oracle Data Miner) - perceptron wielowarstwowy z zastosowanie cross validation(weka) Każdy algorytm wykorzystywany był zarówno dla atrybutu decyzyjnego D1 jak i D2, z uwzględnieniem danych przed i po dyskretyzacji. Zgodnie z życzeniem klienta zbudowano również modele ( cheap ) wykorzystujące dane bez uwzględnienia najdroższych w diagnostyce samochodowej pomiarów (compr_preasure [ciśnienie sprężania] oraz torque [moment obrotowy]). Łącznie zbudowano więc 32 modele. 5.1.1 Drzewa decyzyjne Oracle nie udostępnia szczegółowych informacji na temat zaimplementowanych algorytmów, można więc jedynie domyślać się zastosowanych rozwiązań. Najprawdopodobniej użyto metody CART (Classification and Regression Tree). Podczas budowania modeli zastosowano następujące parametry: - metryka jednorodności (homogeneity metric): Gini - maksymalna głębokość: 10 - podział danych wejściowych: 70% budowa modelu, 30% testowanie 5.1.2 Drzewa decyzyjne J48 z zastosowaniem cross - validation Algorytm J48 dostępny w oprogramowaniu Weka jest, wg dokumentacji technicznej, wersją znanego w literaturze algorytmu C4.5. Idea algorytmu C4.5 opiera się na schemacie zstępującej indukcji drzewa decyzyjnego na podstawie danych treningowych. Metoda ta bardzo dobrze radzi sobie z problemem brakujących wartości oraz uzyskuje wysoką jakość klasyfikacji. Ponieważ dostępnych było zaledwie ok. 80 atrybutów, zatem należało dokonać specyficznego podziału zbioru na część uczącą i testującą. Wykorzystano metodę cross validation, która polega na dziesięciokrotnym (zastosowane ustawienie algorytmu) podziale zbioru na część uczącą i testującą w stosunku 9:1 (90% danych przeznaczonych do treningu a 10% do testowania). Zastosowanie cross validation zdecydowanie poprawia jakość danych przeznaczonych do uczenia się na zbiorze. 5.1.3 Adaptatywna sieć Bayes a Producent (Oracle) zapewnia, iż wprowadzony przez niego algorytm charakteryzuje się szybkością, skalowalnością, małą liczbą parametrów oraz przyjaznym dla człowieka produktem wynikowym w postaci zbioru reguł. Algorytm ABN (Adaptative Bayes Network) buduje model wykorzystujący zasadę MDL (Minimum Description Length) oraz redukcję tablicy warunkowo niezależnych cech sieci. Każda z nich zawiera jedno, bądź więcej, wyrażenie prawdopodobieństwa warunkowego. W analizie wykorzystano model Single 11

Feature (równoważny drzewu decyzyjnemu C4.5 zawierającemu uproszczenie polegające na traktowaniu atrybutów numerycznych jako kategorycznych). 5.1.4 Perceptron Wielowarstwowy Multilayer Perceptron Perceptron wielowarstwowy jest jedną z częściej stosowanych struktur neuropodobnych. Posiada on szczególną własność: komórki perceptronowe pogrupowane są w warstwy a przesyłanie informacji w sieci odbywa się tylko w jednym kierunku (od warstwy wejściowej do warstwy wyjściowej) nie są więc możliwe sprzężenia zwrotne. Perceptron wielowarstwowy posiada tzw. warstwy ukryte, w których dane z warstwy wejściowej podlegają nieliniowemu przetworzeniu zanim dojdą do wyjścia sieci. Model jest trenowany metodą uczenia nadzorowanego za pomocą algorytmu propagacji wstecznej błędu. Podczas budowy modelu zastosowano opcję cross validation (patrz: 5.1.2). 5.2 Rezultaty 5.2.1 Drzewa decyzyjne 5.2.1.1 Drzewo decyzyjne dla atrybutu D1, dane po dyskretyzacji Trafność klasyfikacji: 94,58% 1 41 1 2 9 Node ID Predicate Predicted Value Confidence Cases Support True 1 0.5714286 56.0 1.0 > TORQUE is in 0.9583333 24.0 0.42857143 > TORQUE is in 2 1 0.96875 32.0 0.5714286 5.2.1.2 Drzewo decyzyjne dla atrybutu D2, dane po dyskretyzacji Trafność klasyfikacji: 87,46% 3 1 34 1 0 2 1 14 3 3 0 0 25 12

Node ID Predicate Predicted Value Confidence Cases Support true 1 0.4489796 49.0 1.0 > MAXSPEED is in { 3 } 3 0.5 28.0 0.5714286 >> HORSEPOWER is in 1 3 0.8235294 17.0 0.3469388 >> HORSEPOWER is in 2 2 0.90909094 11.0 0.2244898 > MAXSPEED is in 4 1 1.0 21.0 0.42857143 5.2.1.3 Drzewo decyzyjne dla atrybutu D1, dane po dyskretyzacji, wersja cheap Trafność klasyfikacji: 87,92% 1 47 1 2 3 27 Node ID Predicate Predicted Value Confidence Cases Support true 1 0.61290324 62.0 1.0 > HORSEPOWER is in 0.95454544 22.0 0.3548387 > HORSEPOWER is in 2 1 0.925 40.0 0.6451613 5.2.1.4 Drzewo decyzyjne dla atrybutu D2, dane po dyskretyzacji, wersja cheap Trafność klasyfikacji: 87,46% 3 1 34 1 0 2 1 14 3 3 0 0 25 Node ID Predicate Predicted Value Confidence Cases Support true 1 0.4489796 49.0 1.0 > MAXSPEED is in { 3 } 3 0.5 28.0 0.5714286 >> HORSEPOWER is in 1 3 0.8235294 17.0 0.3469388 >> HORSEPOWER is in 2 2 0.90909094 11.0 0.2244898 > MAXSPEED is in 4 1 1.0 21.0 0.42857143 13

5.2.1.5 Drzewo decyzyjne dla atrybutu D1, dane przed dyskretyzacją Trafność klasyfikacji: 96,67% 1 48 0 2 9 Node ID Predicate Predicted Value Confidence Cases Support True 1 0.56363636 55.0 1.0 > COMPR_PREASURE <= 2.395 2 1.0 23.0 0.4181818 > COMPR_PREASURE > 2.395 1 0.96875 32.0 0.58181816 5.2.1.6 Drzewo decyzyjne dla atrybutu D1, dane przed dyskretyzacją Trafność klasyfikacji: 84,24% 3 1 34 1 0 2 1 15 2 3 0 3 22 Node ID Predicate Predicted Value Confidence Cases Support true 1 0.45 40.0 1.0 > MAXSPEED <= 85.5 3 0.5652174 23.0 0.575 >> COMPR_PREASURE <= 2.37 3 1.0 12.0 0.3 >> COMPR_PREASURE >2.37 2 0.8182 11.0 0.275 > MAXSPEED > 85.5 1 1.0 17.0 0.425 5.2.1.7 Drzewo decyzyjne dla atrybutu D1, dane przed dyskretyzacją, wersja cheap Trafność klasyfikacji: 92,5% 1 46 2 2 9 14

Node ID Predicate Predicted Value Confidence Cases Support True 1 0.56363636 55.0 1.0 > BLACKING <= 62.0 1 0.9677419 31.0 0.56363636 > BLACKING > 62.0 2 0.9583333 24.0 0.43636364 5.2.1.8 Drzewo decyzyjne dla atrybutu D2, dane przed dyskretyzacją, wersja cheap Trafność klasyfikacji: 63,79% 3 1 34 1 0 2 1 17 0 3 0 16 9 Node ID Predicate Predicted Value Confidence Cases Support true 1 0.45 40.0 1.0 > MAXSPEED <= 85.5 3 0.5652174 23.0 0.575 >> BLACKING <= 79.5 2 0.75 12.0 0.3 >> BLACKING > 79.5 3 1.0 11.0 0.275 > MAXSPEED > 85.5 1 1.0 17.0 0.425 5.2.2 Adaptatywne sieci Bayes a 5.2.2.1 Adaptatywna sieć Bayes a dla atrybutu D1, dane po dyskretyzacji Trafność klasyfikacji: 94,58% 1 47 1 2 9 Rule Id If (condition) Then (classification) Confidence (%) Support (%) 3 TORQUE in 2.0 D1 equal 1.0 0.9598684 0.61290324 15

5.2.2.2 Adaptatywna sieć Bayes a dla atrybutu D2, dane po dyskretyzacji Trafność klasyfikacji: 75,02% 3 1 34 1 0 2 1 16 1 3 0 9 16 Rule Id If (condition) Then (classification) Confidence (%) Support (%) 5 MAXSPEED in 4.0 D2 equal 1.0 0.9626467 0.42857143 4 MAXSPEED in 3.0 D2 equal 2.0 0.678356 0.24489796 2 MAXSPEED in 1.0 D2 equal 3.0 0.89193076 0.20408164 5.2.2.3 Adaptatywna sieć Bayes a dla atrybutu D1, dane po dyskretyzacji, wersja cheap Trafność klasyfikacji: 87,92% 1 47 1 2 3 27 Rule Id If (condition) Then (classification) Confidence (%) Support (%) 3 HORSEPOWER in 2.0 D1 equal 1.0 0.9137355 0.64516127 5.2.2.4 Adaptatywna sieć Bayes a dla atrybutu D2, dane po dyskretyzacji, wersja cheap Trafność klasyfikacji: 75,02% 3 1 34 1 0 2 1 16 1 3 0 9 16 16

Rule Id If (condition) Then (classification) Confidence (%) Support (%) 5 MAXSPEED in 4.0 D2 equal 1.0 0.9626467 0.42857143 4 MAXSPEED in 3.0 D2 equal 2.0 0.678356 0.24489796 2 MAXSPEED in 1.0 D2 equal 3.0 0.89193076 0.20408164 5.2.2.5 Adaptatywna sieć Bayes a dla atrybutu D1, dane przed dyskretyzacją Trafność klasyfikacji: 87,92% 1 47 1 2 3 27 Rule Id If (condition) Then (classification) Confidence (%) Support (%) 18 MAXSPEED in 85.0 D1 equal 1.0 0.89000326 0.16129032 21 MAXSPEED in 88.0 D1 equal 1.0 0.9847597 0.12903225 23 MAXSPEED in 90.0 D1 equal 1.0 0.9847597 0.11290322 20 MAXSPEED in 87.0 D1 equal 1.0 0.9847597 0.08064516 19 MAXSPEED in 86.0 D1 equal 1.0 0.9847597 0.06451613 10 MAXSPEED in 72.0 D1 equal 2.0 0.9839808 0.06451613 11 MAXSPEED in 75.0 D1 equal 2.0 0.9839808 0.06451613 14 MAXSPEED in 80.0 D1 equal 1.0 0.9847597 0.032258064 8 MAXSPEED in 68.0 D1 equal 2.0 0.9839808 0.032258064 12 MAXSPEED in 76.0 D1 equal 2.0 0.9839808 0.032258064 5 MAXSPEED in 65.0 D1 equal 2.0 0.9839808 0.032258064 15 MAXSPEED in 82.0 D1 equal 1.0 0.50632954 0.032258064 13 MAXSPEED in 78.0 D1 equal 1.0 0.9847597 0.016129032 22 MAXSPEED in 89.0 D1 equal 1.0 0.9847597 0.016129032 16 MAXSPEED in 83.0 D1 equal 2.0 0.9839808 0.016129032 3 MAXSPEED in 63.0 D1 equal 2.0 0.9839808 0.016129032 7 MAXSPEED in 67.0 D1 equal 2.0 0.9839808 0.016129032 4 MAXSPEED in 64.0 D1 equal 2.0 0.9839808 0.016129032 9 MAXSPEED in 70.0 D1 equal 2.0 0.9839808 0.016129032 17 MAXSPEED in 84.0 D1 equal 2.0 0.9839808 0.016129032 6 MAXSPEED in 66.0 D1 equal 2.0 0.9839808 0.016129032 17

5.2.2.6 Adaptatywna sieć Bayes a dla atrybutu D2, dane przed dyskretyzacją Trafność klasyfikacji: 85,79% 3 1 34 1 0 2 1 17 0 3 0 5 20 Rule Id If (condition) Then (classification) Confidence (%) Support (%) 22 MAXSPEED in 90.0 D2 equal 1.0 0.9626467 0.2244898 17 MAXSPEED in 85.0 D2 equal 2.0 0.7749916 0.12244898 20 MAXSPEED in 88.0 D2 equal 1.0 0.9626467 0.06122449 19 MAXSPEED in 87.0 D2 equal 1.0 0.9626467 0.06122449 18 MAXSPEED in 86.0 D2 equal 1.0 0.9626467 0.06122449 10 MAXSPEED in 75.0 D2 equal 2.0 0.5873519 0.06122449 5 MAXSPEED in 65.0 D2 equal 3.0 0.9674086 0.040816326 11 MAXSPEED in 76.0 D2 equal 3.0 0.9674086 0.040816326 8 MAXSPEED in 72.0 D2 equal 3.0 0.9674086 0.040816326 13 MAXSPEED in 80.0 D2 equal 2.0 0.95274615 0.040816326 14 MAXSPEED in 82.0 D2 equal 3.0 0.5533321 0.040816326 7 MAXSPEED in 67.0 D2 equal 3.0 0.9674086 0.020408163 3 MAXSPEED in 63.0 D2 equal 3.0 0.9674086 0.020408163 4 MAXSPEED in 64.0 D2 equal 3.0 0.9674086 0.020408163 2 MAXSPEED in 60.0 D2 equal 3.0 0.9674086 0.020408163 6 MAXSPEED in 66.0 D2 equal 3.0 0.9674086 0.020408163 16 MAXSPEED in 84.0 D2 equal 3.0 0.9674086 0.020408163 21 MAXSPEED in 89.0 D2 equal 1.0 0.9626467 0.020408163 12 MAXSPEED in 78.0 D2 equal 2.0 0.95274615 0.020408163 15 MAXSPEED in 83.0 D2 equal 2.0 0.95274615 0.020408163 5.2.2.7 Adaptatywna sieć Bayes a dla atrybutu D1, dane przed dyskretyzacją, wersja cheap Trafność klasyfikacji: 87,92% 1 47 1 2 3 27 18

Rule Id If (condition) Then (classification) Confidence (%) Support (%) 18 MAXSPEED in 85.0 D1 equal 1.0 0.89000326 0.16129032 21 MAXSPEED in 88.0 D1 equal 1.0 0.9847597 0.12903225 23 MAXSPEED in 90.0 D1 equal 1.0 0.9847597 0.11290322 20 MAXSPEED in 87.0 D1 equal 1.0 0.9847597 0.08064516 19 MAXSPEED in 86.0 D1 equal 1.0 0.9847597 0.06451613 10 MAXSPEED in 72.0 D1 equal 2.0 0.9839808 0.06451613 11 MAXSPEED in 75.0 D1 equal 2.0 0.9839808 0.06451613 14 MAXSPEED in 80.0 D1 equal 1.0 0.9847597 0.032258064 8 MAXSPEED in 68.0 D1 equal 2.0 0.9839808 0.032258064 12 MAXSPEED in 76.0 D1 equal 2.0 0.9839808 0.032258064 5 MAXSPEED in 65.0 D1 equal 2.0 0.9839808 0.032258064 15 MAXSPEED in 82.0 D1 equal 1.0 0.50632954 0.032258064 13 MAXSPEED in 78.0 D1 equal 1.0 0.9847597 0.016129032 22 MAXSPEED in 89.0 D1 equal 1.0 0.9847597 0.016129032 16 MAXSPEED in 83.0 D1 equal 2.0 0.9839808 0.016129032 3 MAXSPEED in 63.0 D1 equal 2.0 0.9839808 0.016129032 7 MAXSPEED in 67.0 D1 equal 2.0 0.9839808 0.016129032 4 MAXSPEED in 64.0 D1 equal 2.0 0.9839808 0.016129032 9 MAXSPEED in 70.0 D1 equal 2.0 0.9839808 0.016129032 17 MAXSPEED in 84.0 D1 equal 2.0 0.9839808 0.016129032 6 MAXSPEED in 66.0 D1 equal 2.0 0.9839808 0.016129032 5.2.2.8 Adaptatywna sieć Bayes a dla atrybutu D2, dane przed dyskretyzacją, wersja cheap Trafność klasyfikacji: 85,79% 3 1 34 1 0 2 1 17 0 3 0 5 20 Rule Id If (condition) Then (classification) Confidence (%) Support (%) 22 MAXSPEED in 90.0 D2 equal 1.0 0.9626467 0.2244898 17 MAXSPEED in 85.0 D2 equal 2.0 0.7749916 0.12244898 20 MAXSPEED in 88.0 D2 equal 1.0 0.9626467 0.06122449 19 MAXSPEED in 87.0 D2 equal 1.0 0.9626467 0.06122449 18 MAXSPEED in 86.0 D2 equal 1.0 0.9626467 0.06122449 10 MAXSPEED in 75.0 D2 equal 2.0 0.5873519 0.06122449 5 MAXSPEED in 65.0 D2 equal 3.0 0.9674086 0.040816326 11 MAXSPEED in 76.0 D2 equal 3.0 0.9674086 0.040816326 8 MAXSPEED in 72.0 D2 equal 3.0 0.9674086 0.040816326 13 MAXSPEED in 80.0 D2 equal 2.0 0.95274615 0.040816326 14 MAXSPEED in 82.0 D2 equal 3.0 0.5533321 0.040816326 19

7 MAXSPEED in 67.0 D2 equal 3.0 0.9674086 0.020408163 3 MAXSPEED in 63.0 D2 equal 3.0 0.9674086 0.020408163 4 MAXSPEED in 64.0 D2 equal 3.0 0.9674086 0.020408163 2 MAXSPEED in 60.0 D2 equal 3.0 0.9674086 0.020408163 6 MAXSPEED in 66.0 D2 equal 3.0 0.9674086 0.020408163 16 MAXSPEED in 84.0 D2 equal 3.0 0.9674086 0.020408163 21 MAXSPEED in 89.0 D2 equal 1.0 0.9626467 0.020408163 12 MAXSPEED in 78.0 D2 equal 2.0 0.95274615 0.020408163 15 MAXSPEED in 83.0 D2 equal 2.0 0.95274615 0.020408163 5.2.3 Drzewa decyzyjne J48 z cross - validation 5.2.3.1 Drzewo decyzyjne dla atrybutu D2, dane przed dyskretyzacją Trafność: 92,31% 3 1 33 2 0 2 1 15 2 3 0 4 oil_cons <= 1.9 MaxSpeed <= 85: 2 (16.0/1.0) MaxSpeed > 85: 1 (35.0/1.0) oil_cons > 1.9 horsepower <= 119: 3 (25.0) horsepower > 119: 2 (2.0) 5.2.3.2 Drzewo decyzyjne dla atrybutu D2, dane przed dyskretyzacją, wersja cheap Trafność: 93,58% 3 1 34 1 0 2 1 15 2 3 0 4 20

oil_cons <= 1.9 MaxSpeed <= 85: 2 (16.0/1.0) MaxSpeed > 85: 1 (35.0/1.0) oil_cons > 1.9 horsepower <= 119: 3 (25.0) horsepower > 119: 2 (2.0) 5.2.3.3 Drzewo decyzyjne dla atrybutu D2, dane po dyskretyzacji Trafność: 93,59% 3 1 34 1 0 2 1 14 3 3 0 0 25 horsepower = 1: 3 (28.0/3.0) horsepower = 2 maxspeed = 1: 1 (0.0) maxspeed = 2: 2 (2.0) maxspeed = 3: 2 (13.0/1.0) maxspeed = 4: 1 (35.0/1.0) 5.2.3.4 Drzewo decyzyjne dla atrybutu D2, dane po dyskretyzacji, wersja cheap Trafność: 93,59% 3 1 34 1 0 2 1 14 3 3 0 0 25 horsepower = 1: 3 (28.0/3.0) horsepower = 2 maxspeed = 1: 1 (0.0) maxspeed = 2: 2 (2.0) maxspeed = 3: 2 (13.0/1.0) maxspeed = 4: 1 (35.0/1.0) 21

5.2.3.5 Drzewo decyzyjne dla atrybutu D1, dane przed dyskretyzacją, wersja cheap Trafność: 92,31% 1 44 4 2 2 28 oil_cons <= 1.9 MaxSpeed <= 76: 2 (3.0) MaxSpeed > 76: 1 (48.0) oil_cons > 1.9: 2 (27.0) 5.2.3.6 Drzewo decyzyjne dla atrybutu D1, dane przed dyskretyzacją Trafność: 98,79% 1 48 0 2 9 ComprPreasure <= 2.39: 2 (29.0) ComprPreasure > 2.39: 1 (49.0/1.0) 5.2.3.7 Drzewo decyzyjne dla atrybutu D1, dane po dyskretyzacji Trafność: 97,43% 1 47 1 2 9 torque = 1: 2 (30.0/1.0) torque = 2: 1 (48.0/1.0) 22

5.2.3.8 Drzewo decyzyjne dla atrybutu D1, dane po dyskretyzacji, wersja cheap Trafność: 93,58% 1 46 2 2 2 28 horsepower = 1: 2 (28.0/1.0) horsepower = 2: 1 (50.0/3.0) 5.2.4 Perceptron wielowarstwowy (Multilayer perceptron) 5.2.4.1 Perceptron wielowarstwowy dla atrybutu decyzyjnego d1, dane przed dyskretyzacją Trafność: 94.87 % 1 46 2 2 2 28 5.2.4.2 Perceptron wielowarstwowy dla atrybutu decyzyjnego d1, dane przed dyskretyzacją, wersja cheap Trafność: 93,58% 1 45 3 2 2 28 23

5.2.4.3 Perceptron wielowarstwowy dla atrybutu decyzyjnego d2, dane przed dyskretyzacją Trafność: 88,46% 3 1 32 3 0 2 2 14 2 3 0 2 23 5.2.4.4 Perceptron wielowarstwowy dla atrybutu decyzyjnego d2, dane przed dyskretyzacją, wersja cheap Trafność: 82,05% 3 1 31 3 1 2 4 12 2 3 0 4 21 5.2.4.5 Perceptron wielowarstwowy dla atrybutu decyzyjnego d1, dane po dyskretyzacji Trafność: 92,31% 1 44 4 2 2 28 5.2.4.6 Perceptron wielowarstwowy dla atrybutu decyzyjnego d1, dane po dyskretyzacji, wersja cheap Trafność: 92,31% 1 45 3 2 3 27 24

5.2.4.7 Perceptron wielowarstwowy dla atrybutu decyzyjnego d2, dane po dyskretyzacji Trafność: 88,46% 3 1 33 2 0 2 1 13 4 3 0 2 23 5.2.4.8 Perceptron wielowarstwowy dla atrybutu decyzyjnego d2, dane po dyskretyzacji, wersja cheap Trafność: 89,74% 3 1 33 2 0 2 1 13 4 3 1 0 24 5.3 Podsumowanie: Trafność wszystkich zbudowanych modeli przedstawia poniższa tabela: Drzewo decyzyjne D1 D2 discret nondiscret discret nondiscret regular cheap regular cheap Regular cheap regular cheap 94,58% 87,92% 96,67% 92,50% 87,46% 87,46% 84,24% 63,79% Drzewo decyzyjne J48 cross validation D1 D2 discret nondiscret discret nondiscret regular cheap regular cheap regular cheap regular cheap 97,43% 93,58% 98,79% 92,31% 93,59% 93,59% 92,31% 93,59% Adaptatywna sieć Bayes a D1 D2 discret nondiscret Discret nondiscret regular cheap regular cheap regular cheap regular cheap 94,58% 87,92% 87,92% 87,92% 75,02% 75,02% 85,79% 85,79% Wielowarstwowy Perceptron cross - validation D1 D2 discret nondiscret discret nondiscret regular cheap regular cheap regular cheap regular cheap 92,31% 92,31% 94,87% 93,58% 88,46% 89,74% 88,46% 82,05% 25

Drzewo decyzyjne J48 z zastosowaniem cross validation uzyskało najlepszą jakość klasyfikacji w prawie każdym zbudowanym modelu (wielowarstwowy perceptron tylko w jednym przypadku modelu dla atrybutu decyzyjnego D1, dla danych niedyskretnych, bez wyników pomiarów najdroższych atrybutów okazał się lepszy o zaledwie jeden punkt procentowy) i to rozwiązanie należy przyjąć jako modelowe. Pozostałe algorytmy również osiągnęły dobrą trafność, jednakowoż specyficzna implementacja drzewa C4.5, jaką jest J48 oraz zastosowanie mechanizmu cross validation pozwoliły zbudować modele o bardzo wysokiej czystości klasyfikacji. Co nie jest również bez znaczenia, przedstawione przez J48 reguły są łatwe do interpretacji dla człowieka. Wielowarstwowy perceptron, który osiągnął lepszą trafność klasyfikacji w jednym z ośmiu przypadków, jest rozwiązaniem typu czarna skrzynka zbudowany model nie jest w żaden sposób tłumaczone. Adaptatywna sieć Bayes a generuje, w szczególności dla danych nie poddanych dyskretyzacji, bardzo dużo reguł, gęsto dzielących dziedzinę atrybutu określającego. Zjawisko to sprawia wrażenie zbytniego dopasowania budowanego modelu do konkretnych danych uczących (czyli przetrenowania modelu). Wydaje się, iż anomalii tej udało się uniknąć w przypadku modeli wykorzystujących algorytmy drzew decyzyjnych. 26

6 Interpretacja wyników 6.1 Reguły Ze względu na uzyskane wyniki eksperymentów, można przyjąć, że drzewa decyzyjne J48 najlepiej interpretują dostarczone dane. W wyniku przeprowadzonej analizy klient uzyskuje zestaw reguł, które mogą być stosowane do oceny stanu technicznego pojazdów, w zależności od dostępnych danych (dyskretne, ciągłe) i atrybutu decyzyjnego (D1, D2). 6.1.1 Drzewo decyzyjne dla atrybutu D1, dane przed dyskretyzacją Jeżeli ciśnienie sprężania jest mniejsze bądź równe niż 2.39 Mpa, to autobus jest niesprawny. W przeciwnym przypadku autobus jest sprawny. Macierz pomyłek dla tego klasyfikatora: 1 48 0 2 9 Klasyfikator pomylił się tylko raz. Jeden z autobusów niesprawnych został oceniony jako sprawny. 6.1.2 Drzewo decyzyjne dla atrybutu D1, dane przed dyskretyzacją, wersja bez wyników najdroższych pomiarów Jeżeli zużycie oleju jest mniejsze bądź równe 1.9 l/1000km i prędkość maksymalna jest mniejsza bądź równa 76 km/h, to autobus jest niesprawny. Jeżeli zużycie oleju jest mniejsze bądź równe 1.9 l/1000km i prędkość maksymalna jest większa niż 76 km/h, to autobus jest sprawny. Jeżeli zużycie oleju jest większe niż 1.9 l/1000km to autobus jest niesprawny. Macierz pomyłek dla tego klasyfikatora wygląda następująco: 1 44 4 2 2 28 Klasyfikator pomylił się 6 razy (na 78 prób). Dwa razy autobus niesprawny został sklasyfikowany jako sprawny, a cztery razy autobus sprawny został oceniony jako niesprawny. 27

6.1.3 Drzewo decyzyjne dla atrybutu D1, dane po dyskretyzacji Jeżeli moment obrotowy silnika jest mniejszy bądź równy 441Nm, to autobus jest niesprawny. W przeciwnym przypadku jest sprawny. Macierz pomyłek dla tego klasyfikatora: 1 47 1 2 9 Klasyfikator pomylił się dwa razy. Jeden raz uznał autobus niesprawny jako sprawny i jeden raz autobus sprawny jako niesprawny. 6.1.4 Drzewo decyzyjne dla atrybutu D1, dane po dyskretyzacji, wersja bez wyników najdroższych pomiarów Jeżeli moc silnika jest mniejsza bądź równa 119 KM, to autobus jest niesprawny. W przeciwnym przypadku autobus jest sprawny. Macierz pomyłek dla tego klasyfikatora: 1 46 2 2 2 28 Klasyfikator pomylił się cztery razy. Dwa razy uznał autobus niesprawny jako sprawny i dwa razy autobus niesprawny jako sprawny. 6.1.5 Atrybut decyzyjny D2, dane nie poddane dyskretyzacji Jeżeli zużycie oleju jest mniejsze bądź równe 1.9 l/1000km, a prędkość maksymalna jest mniejsza bądź równa 85 km/h to autobus wymaga drobnych napraw i obserwacji. Jeżeli zużycie oleju jest mniejsze bądź równe 1.9 l/1000km, a prędkość maksymalna jest większa niż 85 km/h, to autobus jest sprawny. Jeżeli zużycie oleju jest większe niż 1.9 l/1000km, a moc silnika mniejsza bądź równa niż 119 KM, to autobus jest niesprawny. Jeżeli zużycie oleju jest większe niż 1.9 l/1000km, a moc silnika większa niż 119 KM, to autobus wymaga drobnych napraw i obserwacji. Macierz pomyłek dla tego klasyfikatora wygląda następująco: 3 1 33 2 0 2 1 15 2 3 0 4 Klasyfikator pomylił się 6 razy (na 78 prób). Jeden raz sklasyfikował pojazd, który powinien być przeznaczony do drobnych napraw i obserwacji jako sprawny. Dwa autobusy sprawne i jeden niesprawny zostały sklasyfikowane jako wymagające drobnych napraw 28

i obserwacji. Dwa razy autobusy wymagające drobnych napraw i obserwacji zostały ocenione jako niesprawne. 6.1.6 Atrybut decyzyjny D2, dane nie poddane dyskretyzacji, wersja bez wyników najdroższych pomiarów Jeżeli zużycie oleju jest mniejsze bądź równe 1.9 l/1000km, a prędkość maksymalna jest mniejsza bądź równa 85 km/h to autobus wymaga drobnych napraw i obserwacji. Jeżeli zużycie oleju jest mniejsze bądź równe 1.9 l/1000km, a prędkość maksymalna jest większa niż 85 km/h, to autobus jest sprawny. Jeżeli zużycie oleju jest większe niż 1.9 l/1000km, a moc silnika mniejsza bądź równa niż 119 KM, to autobus jest niesprawny. Jeżeli zużycie oleju jest większe niż 1.9 l/1000km, a moc silnika większa niż 119 KM, to autobus wymaga drobnych napraw i obserwacji. Macierz pomyłek dla tego klasyfikatora wygląda następująco: 3 1 34 1 0 2 1 15 2 3 0 4 Klasyfikator pomylił się 5 razy (na 78 prób). Jeden raz sklasyfikował pojazd, który powinien być przeznaczony do drobnych napraw i obserwacji jako sprawny. Jeden autobus sprawny i jeden niesprawny zostały sklasyfikowane jako wymagające drobnych napraw i obserwacji. Dwa razy autobusy wymagające drobnych napraw i obserwacji zostały ocenione jako niesprawnei. 6.1.7 Drzewo decyzyjne dla atrybutu D2, dane po dyskretyzacji Jeżeli moc silnika jest mniejsza bądź równa niż 119KM, to autobus jest niesprawny. Jeżeli moc silnika jest większa niż 119KM i prędkość maksymalna jest mniejsza lub równa 74 km/h lub większa niż 85 km/h, to autobus jest sprawny. Jeżeli moc silnika jest większa niż 119KM, a prędkość maksymalna jest większa niż 74 km/h i mniejsza lub równa 85 km/h, to autobus wymaga drobnych napraw i obserwacji. Macierz pomyłek dla tego klasyfikatora wygląda następująco: 3 1 34 1 0 2 1 14 3 3 0 0 25 Klasyfikator pomylił się 5 razy (na 78 prób). Jeden raz sklasyfikował pojazd, który powinien być przeznaczony do drobnych napraw i obserwacji jako sprawny. Jeden raz autobus sprawny został sklasyfikowany jako wymagający drobnych napraw i obserwacji. Trzy razy autobusy wymagające drobnych napraw i obserwacji zostały ocenione jako niesprawne. 29

6.1.8 Drzewo decyzyjne dla atrybutu D2, dane po dyskretyzacji, wersja bez wyników najdroższych pomiarów. Jeżeli moc silnika jest mniejsza bądź równa niż 119KM, to autobus jest niesprawny. Jeżeli moc silnika jest większa niż 119KM i prędkość maksymalna jest mniejsza lub równa 74 km/h lub większa niż 85 km/h, to autobus jest sprawny. Jeżeli moc silnika jest większa niż 119KM, a prędkość maksymalna jest większa niż 74 km/h i mniejsza lub równa 85 km/h, to autobus wymaga drobnych napraw i obserwacji. Macierz pomyłek dla tego klasyfikatora wygląda następująco: 3 1 34 1 0 2 1 14 3 3 0 0 25 Klasyfikator pomylił się 5 razy (na 78 prób). Jeden raz sklasyfikował pojazd, który powinien być przeznaczony do drobnych napraw i obserwacji jako sprawny. Jeden raz autobus sprawny został sklasyfikowany jako wymagający drobnych napraw i obserwacji. Trzy razy autobusy wymagające drobnych napraw i obserwacji zostały ocenione jako niesprawne. 6.2 Punkty podziału w korzeniach drzew Algorytm drzew decyzyjnych J48 dla danych ciągłych stosował następujące punkty podziałów w korzeniach drzew: - zużycie oleju: 1.9 - ciśnienie sprężania: 2,39 Dyskretyzacja danych, wg wskazówek eksperta diagnostyki samochodowej, dokonana została wg następujących granic przedziałów: s1 : (-, 74>, (74, 79>, (79, 85>, (85, ) s2 : (-, 2.2>, (2.2, 2.4>, (2.4, ) s3 : (-, 59>, (59, ) s4 : (-, 441>, (441, ) s5 : (-, 22>, (22, ) s6 : (-, 25.2>, (25.2, ) s7 : (-, 1.2>, (1.2, ) s8 : (-, 119>, (119, ) Ekspert twierdził, że skrajne przedziały oznaczają pojazdy niesprawne i sprawne, zatem punkty podziału w drzewach decyzyjnych, dla danych nie zdyskretyzowanych, powinny pokrywać się z granicami tychże przedziałów. Zastanawia stosunkowo duża różnica między punktem podziału wybieranym przez drzewo, a punktem wskazanym przez eksperta, dla atrybutu zużycie oleju (pozostałe atrybuty, z pewnym marginesem, wpisują się w podział zaproponowany przez rzeczoznawcę). Wytłumaczeniem tego może być fakt, iż istnieje jakaś zależność przechodnia pomiędzy atrybutem zużycie oleju 30

a innymi atrybutami określającymi (wskazywałaby na to tabela współczynników korelacji Pearsona Persona punktu 4.1) powodująca, że atrybut ten uzyskuje większą zdolność podziału na czystsze klasy, jeśli brany jest pod uwagę wspólnie z innym atrybutem. Innym wytłumaczeniem jest specyfika dostępnych danych. Okazuje się, iż podział zaproponowany przez eksperta nie dzieli danych względem atrybutu decyzyjnego w sposób jednoznaczny. Histogramy wg podziału zaproponowanego przez eksperta (gdy zużycie oleju > 1.2) Wartość D1 Liczba wystąpień 2 2 30 Wartość D2 Liczba wystąpień 1 9 2 18 3 25 Histogramy wg podziału dokonanego przez algorytm (gdy zużycie oleju > 1.9) Wartość D2 Liczba wystąpień 1 0 2 2 3 25 Histogramy wg podziału dokonanego przez algorytm (gdy zużycie oleju <= 1.9) Wartość D2 Liczba wystąpień 1 35 2 16 3 0 Histogramy wg podziału dokonanego przez algorytm (gdy zużycie oleju > 1.9) Wartość D1 Liczba wystąpień 1 0 2 27 Histogramy wg podziału dokonanego przez algorytm (gdy zużycie oleju <= 1.9) Wartość D1 Liczba wystąpień 1 48 2 3 Wartość ciśnienia sprężania podana przez eksperta jako granica przedziału jest bardzo zbliżona do wartości wybranej przez algorytm budowy drzewa decyzyjnego, więc uznano, że żadne anomalie tam nie występują. 31

7 Literatura 1. Dokumentacja techniczna Oracle Data Miner 2. Dokumentacja techniczna Weka 3. http://logic.mimuw.edu.pl/grant2003/prace/bmsclatkowski.pdf 4. http://www.aaai.org/aitopics/html/trees.html 5. http://server.eletel.p.lodz.pl/~pstrumil/ann/ann_mlp1.pdf 6. Notatki własne z wykładu i laboratorium 32