Pobieranie prezentacji. Proszę czekać

Pobieranie prezentacji. Proszę czekać

Synteza logiczna w eksploracji danych

Podobne prezentacje


Prezentacja na temat: "Synteza logiczna w eksploracji danych"— Zapis prezentacji:

1 Synteza logiczna w eksploracji danych
Eksploracja danych (Data mining)  jest dynamicznie rozwijającą się dziedziną informatyki o coraz szerszych zastosowaniach niemal w każdej dziedzinie życia • bankowości • lingwistyce • marketing • farmakologii • telekomunikacji Również w MEDYCYNIE 1

2 Zastosowania

3 Zastosowania LERS LERS (Learning from Examples Based on Rough Sets)
J. Grzymała-Busse, LERS – a Data Mining System, in Data Mining and Knowledge Discovery Handbook, 2005, VIII, , DOI: / X_65 J. Grzymała-Busse, et al., Melanoma Prediction Using Data Mining System LERS, Proc. 25th Ann. International Conference Computer Software and Applications (COMPSAC). Chicago (Illinois, USA), IEEE Comp. Soc., Los Alamitos (California, USA) 2001, pp 3

4 Eksploracja danych…. Eksploracja danych
Przez eksplorację danych rozumie się proces automatycznego odkrywania znaczących i dotychczas nieznanych informacji z dużych baz danych, czyli informacji ujawniających ukrytą wiedzę o badanym przedmiocie. Potrafi zdiagnozować pacjenta Potrafi przeprowadzić sondaż Eksploracja danych Potrafi wykryć anomalie w sieci Potrafi podjąć decyzję o przyznaniu kredytu klientowi banku Nazywa się również odkrywaniem wiedzy w bazach danych (ang. knowledge discovery in databases).

5 Pozyskiwanie wiedzy z baz danych
na abstrakcyjnym poziomie algorytmów polega na Redukcji atrybutów Uogólnianiu reguł decyzyjnych i wielu innych procedurach… Jaki jest związek tych algorytmów z algorytmami syntezy logicznej? 5

6 Są to algorytmy przetwarzające ogromne bazy danych…
Eksploracja danych a synteza logiczna  Eksploracja danych Synteza logiczna Redukcja atrybutów Uogólnianie reguł decyzyjnych Hierarchiczne podejmowanie decyzji Redukcja argumentów Minimalizacja funkcji boolowskich Dekompozycja funkcjonalna Są to algorytmy przetwarzające ogromne bazy danych…

7 Komputerowe systemy eksploracji danych
ROSETTA Rough Set Toolkit for Analysis of Data: Biomedical Centre (BMC), Uppsala, Sweden. 7

8 WEKA, ROSE • Preprocess - wczytanie i wstępne przetwarzanie danych,
University of Waikato, Hamilton, New Zealand • Preprocess - wczytanie i wstępne przetwarzanie danych, • Classify-klasyfikacja danych, • Cluster - klasteryzacja, inaczej analiza skupień, • Associate - indukcja reguł asocjacyjnych, • Select attributes — selekcja cech znaczących, • Visualize - wizualizacja danych.

9 Znaczenie eksploracji danych
Wiele rzeczywistych zjawisk opisuje się tablicami danych a b d e 1 2 3 4 5 6 Ob i e k t y Klasyfikacja (Decyzja) W tablicach takich obiekty reprezentowane w poszczególnych wierszach opisywane są wartościami atrybutów a, b, d. Jednocześnie obiekty są klasyfikowane, kolumna e.

10 Tablice i reguły decyzyjne
1 2 3 4 5 6 Tablice takie można również reprezentować za pomocą wyrażeń logicznych zwanych regułami decyzyjnymi: U1: (a,1)  (b,0)  (d,1) (e,1) U5: (a,1)  (b,1)  (d,2) (e,2) redukcja atrybutów redukcja (generacja) reguł decyzyjnych

11 Uogólnianie reguł Metoda uogólniania reguł decyzyjnych:
Wyrażenia takie można „upraszczać” za pomocą metod stosowanych w syntezie logicznej. Np. metodą analogiczną do ekspansji można uogólniać (minimalizować) reguły decyzyjne. Metoda uogólniania reguł decyzyjnych: Tworzy się macierz porównań M, Wyznacza minimalne pokrycie M, Atrybutami reguły minimalnej są atrybuty należące do minimalnego pokrycia M.

12 Przykład generacji reguł
Tablica decyzyjna Tablica reguł minimalnych U a b c d e 1 2 3 4 5 6 7 a b c d e 1 2

13 Przykład: uogólniamy U1
b c d e 1 2 3 4 5 6 7 1 d c b a M = Macierz M powstaje przez porównanie obiektów: (u1, u3), (u1, u4), ..., (u1, u7). Wynikiem porównania są wiersze M. Dla takich samych wartości atrybutów odpowiedni m=0, dla różnych m=1.

14 Przykład: uogólniamy U1
b c d e 1 2 1 d c b a M = a, b, c, d a, b, d b, d b a, d Minimalne pokrycia są: {a,b} oraz {b,d}, Wyznaczone na ich podstawie minimalne reguły: U a b c d e 1 - 2 (a,1) & (b,0)  (e,1) (b,0) & (d,1)  (e,1)

15 Przykład uogólniania reguł cd.
Po uogólnieniu obiektu u1  u2. U a b c d e 1 - 2 3 4 5 6 7 U a b c d e 1 - 2 u2 można usunąć

16 Przykład uogólniania reguł c.d.
b c d e 1 2 3 4 5 6 7 Dla obiektu u3 Dla obiektu u4 (a,0)  (e,0) (b,1) & (d,1)  (e,0) Niestety po uogólnieniu ani u3 nie pokrywa u4, ani u4 nie pokrywa u3

17 Przykład uogólniania reguł c.d.
b c d e 1 2 3 4 5 6 7 Dla obiektu u5 u6, u7 (d,2)  (e,2)

18 Reguły minimalne Uogólnione reguły decyzyjne: (a,1) & (b,0)  (e,1)
(a,0)  (e,0) (b,1) & (d,1)  (e,0) (d,2)  (e,2) a b c d e 1 2 w innym zapisie: (a,1) & (b,0)  (e,1) (a,0)  (b,1) & (d,1)  (e,0) (d,2)  (e,2)

19 Interpretacja reguł uogólnionych
Takie metody stosuje się w przypadkach, gdy dysponuje się zbiorem obiektów, których przynależność do odpowiedniej klasy jest znana, a celem jest klasyfikacja nowych danych. Pierwotna tablica decyzyjna: zapisane są w niej dane zebrane do tej pory i już sklasyfikowane Ale pojawia się nowy zestaw danych a=1,b=1, c=1, d= 1 Jaka decyzja? U a b c d e 1 2 3 4 5 6 7 a b c d e 1 2 Na uogólnionych regułach jest to oczywiste! e = 0

20 Przykładowa baza (tablica) danych
Wyniki badań i diagnozy 7 pacjentów Pacjenci Badanie1 Badanie2 Badanie3 Badanie4 Badanie5 Badanie6 Badanie7 Badanie8 Diagnoza P1 1 D3 P2 P3 2 P4 D1 P5 D2 P6 P7 Wyniki badań i symptomy choroby zapisane są symbolicznymi wartościami atrybutów Reguły decyzyjne (Bad_1=1)&(Bad_2=1)…&(Bad_5=1)…&(Bad_8=0)=>(Diagnoza=D3)

21 Uogólnione reguły decyzyjne
Pacjenci Badanie1 Badanie2 Badanie3 Badanie4 Badanie5 Badanie6 Badanie7 Badanie8 Diagnoza P1 1 D3 P2 P3 2 P4 D1 P5 D2 P6 P7 (Bad_2=1)&(Bad_4=1)=>(Diagnoza=D3) (Bad_4=1)&(Bad_7=0)=>(Diagnoza=D3) (Bad_1=0)&(Bad_3=1)&(Bad_6=0)=>(Diagnoza=D1) ( (Bad_3=1)&(Bad_5=0)&(Bad_6=0)=>(Diagnoza=D1) (Bad_2=0)=>(Diagnoza=D2) (Bad_1=0)&(Bad_4=1)&(Bad_6=0)&(Bad_8=0)=>(Diagnoza=D2) Reguły decyzyjne: Reguły decyzyjne wygenerowane z pierwotnej bazy danych używane są do klasyfikowania nowych obiektów.

22 Uogólnione reguły decyzyjne…
…mogą być zastosowane do zdiagnozowania nowego pacjenta. Bad1 Bad2 Bad3 Bad4 Bad5 Bad6 Bad7 Bad8 Diagnoza P1 1 D3 P2 P3 2 P4 D1 P5 D2 P6 P7 Nowy pacjent 1 ??? (Bad_2=1)&(Bad_4=1)=>(Diagnoza=D3) (Bad_4=1)&(Bad_7=0)=>(Diagnoza=D3) (Bad_1=0)&(Bad_3=1)&(Bad_6=0)=>(Diagnoza=D1) (Bad_3=1)&(Bad_5=0)&(Bad_6=0)=>(Diagnoza=D1) (Bad_2=0)=>(Diagnoza=D2) (Bad_1=0)&(Bad_4=1)&(Bad_6=0)&(Bad_8=0)=>(Diagnoza=D2) Dla nowego pacjenta Diagnoza = D3

23 Redukcja atrybutów Poszukiwanie takich podzbiorów atrybutów, które zachowują podział obiektów na klasy decyzyjne taki sam, jak wszystkie atrybuty Bad1 Bad2 Bad3 Bad4 Bad5 Bad6 Bad7 Bad8 Diagnoza P1 1 D3 P2 P3 2 P4 D1 P5 D2 P6 P7 Bad1 Bad6 Bad7 Bad8 Diagnoza P1 1 D3 P2 P3 P4 D1 P5 D2 P6 P7 { Bad_1 Bad_4 Bad_6 Bad_8 } { Bad_1 Bad_6 Bad_7 Bad_8 } { Bad_1 Bad_3 Bad_6 } { Bad_1 Bad_2 Bad_6 Bad_8 }

24 UC Irvine Machine Learning Repository
Rosnące wymagania   Wymagania na przetwarzanie coraz większych baz danych rosną, natomiast metody i narzędzia eksploracji danych stają się coraz mniej skuteczne UC Irvine Machine Learning Repository Say clearly that the appropriate equivalent for generalization of decision rules from data mining it is the typical procedure of Boolean function minimization; the reduction of attributes corresponds to the reduction of arguments; while the hierarchical decision-making is nothing but a functional decomposition. Breast Cancer Database Audiology Database Dermatology Database

25 Breast Cancer Database:
Diagnostyka raka piersi Breast Cancer Database: Ocena spoistości masy nowotworowej Ocena jednolitości rozmiaru komórek Ocena jednolitości kształtu komórek …. 9. Występowanie podziałów komórkowych (mitoza) Instancje (obiekty): 699 (dane poszczególnych pacjentów) Liczba atrybutów: 10 Klasyfikacja (2 klasy) Sources: Dr. WIlliam H. Wolberg (physician); University of Wisconsin Hospital ;Madison; Wisconsin; USA

26 Breast Cancer Database (fragment)
ID a1 a2 a3 a4 a5 a6 a7 a8 a9 a10 5 1 2 3 4 7 10 6 8 9  Są to dane po procesie dyskretyzacji 26

27 ………………….. RULE_SET breast_cancer RULES 35
(x9=1)&(x8=1)&(x2=1)&(x6=1)=>(x10=2) (x9=1)&(x2=1)&(x3=1)&(x6=1)=>(x10=2) (x9=1)&(x8=1)&(x4=1)&(x3=1)=>(x10=2) (x9=1)&(x4=1)&(x6=1)&(x5=2)=>(x10=2) ………………….. (x9=1)&(x6=10)&(x1=10)=>(x10=4) (x9=1)&(x6=10)&(x5=4)=>(x10=4) (x9=1)&(x6=10)&(x1=8)=>(x10=4) REDUCTS (27) { x1, x2, x3, x4, x6 } { x1, x2, x3, x5, x6 } { x2, x3, x4, x6, x7 } { x1, x3, x4, x6, x7 } { x1, x2, x4, x6, x7 } ……………. { x3, x4, x5, x6, x7, x8 } { x3, x4, x6, x7, x8, x9 } { x4, x5, x6, x7, x8, x9 }

28 Diagnostyka raka piersi (dla danych numerycznych)
Reguły decyzyjne dla Breast Cancer Database (dla danych numerycznych) LERS (p8,1..1.5) & (p3,1..1.5) & (p4,1..1.5) -> (diagnoza.zdrowy) (p9,1..1.5) & (p6,1..1.5) & (p2, ) -> (diagnoza,zdrowy) (p7,1..2.5) & (p5, ) -> (diagnoza,zdrowy) (p5,1..2.5) & (p8,1..1.5) & (p2, ) -> (diagnoza,zdrowy) (p9,1..1.5) & (p8, ) & (p5, ) & (p1, ) -> (diagnoza,zdrowy) (p6, ) & (p8, ) & (p7, ) -> (diagnoza,rak) (p8, ) & (p4, ) -> (diagnoza,rak) (p6, ) & (p8, ) & (p3, ) -> (diagnoza,rak) (p9,1..1.5) & (p8, ) & (p1, ) -> (diagnoza,rak) (p6, ) & (p9, ) & (p8, ) -> (diagnoza,rak)

29 Inne bazy danych z zakresu medycyny
Audiology Database Dermatology Database Number of instances: 200 training cases Number of attributes: 71 Classification (24 classes) Number of Instances: 366 Number of attributes: 34 Classification (6 classes) Source Information: Nilsel Ilter, M.D., Ph.D., Gazi University, School of Medicine 06510 Ankara, Turkey Phone: +90 (312) Sources: (a) Original Owner: Professor Jergen at Baylor College of Medicine (b) Donor: Bruce Porter 29

30 UC Irvine Machine Learning Repository
Breast Cancer Database Audiology Database Say clearly that the appropriate equivalent for generalization of decision rules from data mining it is the typical procedure of Boolean function minimization; the reduction of attributes corresponds to the reduction of arguments; while the hierarchical decision-making is nothing but a functional decomposition. Dermatology Database Co jest przyczyną takiej sytuacji?

31 Porównanie Espresso i RSES
.type fr .p 9 .e TABLE extlbis ATTRIBUTES 8 x1 numeric 0 x2 numeric 0 x3 numeric 0 x4 numeric 0 x5 numeric 0 x6 numeric 0 x7 numeric 0 x8 numeric 0 OBJECTS 9 (x1=1)&(x5=1)&(x6=1)&(x2=1)=>(x8=0) (x1=1)&(x2=0)&(x5=1)&(x3=0)&(x4=0)&(x6=0)=>(x8=0) (x4=0)&(x1=1)&(x2=0)&(x7=0)=>(x8=1) (x2=1)&(x4=0)&(x5=1)&(x6=0)=>(x8=1)

32 … co uzyskamy stosując RSES
do realizacji sprzętu ESPRESSO RSES

33 Porównanie… Przykład sugeruje, że algorytmy stosowane w komputerowych systemach eksploracji danych nie są najskuteczniejsze. I być może warto je opracować na nowo korzystając z lepszych metod syntezy logicznej. Przykładem potwierdzającym tę tezę jest redukcja atrybutów, stosowana w RSES, ROSE, WEKA… 33

34 Inna metoda obliczania reduktów…
Klasyczną metodę można znacznie usprawnić wykorzystując stosowaną w syntezie logicznej procedurę uzupełniania funkcji boolowskiej. Obliczanie reduktów można sprowadzić do obliczania uzupełnienia jednorodnej funkcji boolowskiej. Procedura ta (nazwana UNATE_COMPLEMENT) została opracowana jako fragment procedury COMPLEMENT programu Espresso. Nigdy nie była stosowana do obliczania reduktów 34

35 Przykład – metoda klasyczna
Pokrycie kolumnowe (przypomnienie) M: x1 x2 x4 x3 x4 x1 x2 x1 x4 (x1 + x2 + x4) (x3 + x4) (x1 + x2) (x1 + x4) = = x1x3 + x2x4 +x1x4 To są wszystkie minimalne pokrycia kolumnowe macierzy M 35

36 Przykład – metoda uzupełniania
x3x4 x1x2 00 01 11 10 1 x1x3 + x2x4 +x1x4 To samo co poprzednio! 36

37 Metoda obliczania reduktów…
jest równoważna obliczaniu Complementu (Uzupełnienia) funkcji boolowskiej, reprezentowanej Tablicą porównań. Espresso (Rozdział 6 ) 37

38 Przykład TL27 Tablica porównań Tablica porównań
1 .i 7 .o 1 .type fr .p 9 .e Tablica porównań Tablica porównań nie jest funkcją boolowską 38

39 Redukcja (usuwanie) wierszy tabl. porównań
.i 7 .o 1 .type fr .p 9 .e Zredukowana tablica porównań .i 7 .o 1 .p 6 .end reprezentuje funkcję boolowską 39

40 Do obliczenia uzupełnienia zastosujmy…
Espresso {x1,x3,x4,x6,x7} {x2,x3,x4,x6} .i 7 .o 1 .p 6 .end {x2,x4,x5,x6} {x2,x4,x6,x7} ESPRESSO .i 7 .o 1 .p 4 .end

41 Algorytm obliczania reduktów…
polega na obliczaniu Complementu (Uzupełnienia) jednorodnej funkcji boolowskiej, reprezentowanej Tablicą (macierzą) porównań. Uzupełnienie oblicza się dla zero-jedynkowej macierzy M. Sprytna procedura uzupełniania polega na iteracyjnym rozkładzie zbioru kostek macierzy M na kofaktory. Kofaktory te są obliczane tak długo, aż odpowiadające im zbiory kostek staną się „łatwe” do obliczenia ich uzupełnienia. Proces kończy „scalanie” wyników cząstkowych. 41

42 ROZKŁAD 42

43 SCALANIE Dokładnie tak samo jak w metodzie klasycznej!
C(x7) = x7 [ ]+  = [ ] C(x1) = x1 [ ]+  = [ ] C(x2) = x [ ] = Minimalne pokrycia: x2, x3, x2, x5, x2, x7, x1, x3, x7 Dokładnie tak samo jak w metodzie klasycznej! Niezbędne: + x4, x6 43

44 Funkcja KAZ Przed redukcją Po redukcji Redukcja argumentów/atrybutów
.type fr .i 21 .o 1 .p 31 .end Po redukcji Redukcja argumentów/atrybutów Ile jest takich rozwiązań Jedno z wielu rozwiązań po redukcji argumentów

45 Czas obliczeń RSES = 70 min.
Funkcja KAZ .type fr .i 21 .o 1 .p 31 .end Wszystkich rozwiązań: z minimalną i najmniejszą liczbą argumentów jest 35, z minimalną liczbą argumentów jest: 5574 Czas obliczeń RSES = 70 min. Czas obliczeń dla nowej metody= 234 ms. 18 tysięcy razy szybciej! (Błyskawica)

46 Bezwzględna przewaga metody uzupełniania!
Eksperymenty  database attr. inst. RSES/ROSETTA compl. method reducts house 17 232 1s 187ms 4 breast-cancer -wisconsin 10 699 2s 823ms 27 KAZ 22 31 70min 234ms 5574 trains 33 out of memory (5h 38min) 6ms 689 agaricus-lepiota -mushroom 23 8124 29min 4m 47s 507 urology 36 500 out of memory (12h) 42s 741ms 23437 audiology 71 200 out of memory (1h 17min) 14s 508ms 37367 dermatology 35 366 out of memory (3h 27min) 3m 32s 143093 lung-cancer 57 32 out of memory (5h 20min) 111h 57m For the experiments I have used the software presented. I mean RSES, ROSETTA and ROSE2. Despite many efforts directed to the designing of an effective tools for attribute reduction, existing tools are not efficient. Interpretation of results. Bezwzględna przewaga metody uzupełniania!

47 RSES Wniosek Wprowadzenie metody uzupełniania funkcji boolowskich
do procedury obliczania reduktów zmniejsza czas obliczeń o rząd, a niekiedy o kilka rzędów wielkości RSES

48 Podsumowanie Metody syntezy logicznej wypracowane dla potrzeb projektowania układów cyfrowych są skuteczne również w eksploracji danych Dają rewelacyjne wyniki Są proste w implementacji Są źródłem ciekawych prac dyplomowych 48

49 Wnioski Są źródłem ciekawych prac dyplomowych
WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA pod auspicjami Polskiej Akademii Nauk WYDZIAŁ INFORMATYKI STUDIA I STOPNIA (INŻYNIERSKIE) PRACA DYPLOMOWA Piotr Decyk Implementacja algorytmu obliczania reduktów wielowartościowych funkcji logicznych 49

50 Prace dyplomowe WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA pod auspicjami Polskiej Akademii Nauk Konrad Królikowski IMPLEMENTACJA ALGORYTMU OBLICZANIA REDUKTÓW METODĄ UZUPEŁNIANIA FUNKCJI BOOLOWSKICH Andrzej Kisiel UOGÓLNIANIE REGUŁ DECYZYJNYCH BINARNYCH TABLIC DANYCH METODĄ UZUPEŁNIANIA FUNKCJI BOOLOWSKICH Na stronie przedmiotu ULOG: w katalogu Eksperymenty 50

51 Hierarchical decision
Prace dyplomowe… Expert Systems with Applications 37 (2010) 2081–2091 journal homepage: Hierarchical decision rules mining Qinrong Feng, Duoqian Miao, Yi Cheng Department of Computer Science and Technology, Tongji University, Shanghai , PR China Hierarchical decision rules mining Dekompozycji funkcjonalnej


Pobierz ppt "Synteza logiczna w eksploracji danych"

Podobne prezentacje


Reklamy Google