Synteza logiczna w eksploracji danych

Podobne dokumenty
Synteza logiczna w eksploracji danych

Eksploracja danych (Data mining)

Synteza logiczna w eksploracji danych

Minimalizacja funkcji boolowskich c.d.

Minimalizacja form boolowskich UC1, 2009

PRACA DYPLOMOWA. Andrzej Kisiel DISCOVERING DECISION RULES OF BINARY DATA TABLES USING COMPLEMENT OF BOOLEAN FUNCTIONS

PRACA DYPLOMOWA INŻYNIERSKA

LEMRG algorytm generowania pokoleń reguł decyzji dla baz danych z dużą liczbą atrybutów

Sztuczna inteligencja

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

b) bc a Rys. 1. Tablice Karnaugha dla funkcji o: a) n=2, b) n=3 i c) n=4 zmiennych.

WEKA klasyfikacja z użyciem sztucznych sieci neuronowych

Wstęp do Techniki Cyfrowej... Teoria automatów

Wykład XII. optymalizacja w relacyjnych bazach danych

Klasyfikacja obiektów Drzewa decyzyjne (drzewa klasyfikacyjne)

10. Redukcja wymiaru - metoda PCA

T. Łuba, B. Zbierzchowski Układy logiczne Podręcznik WSISiZ, Warszawa 2002.

Koszt literału (literal cost) jest określony liczbą wystąpień literału w wyrażeniu boolowskim realizowanym przez układ.

ALGORYTM RANDOM FOREST

Reguły decyzyjne, algorytm AQ i CN2. Reguły asocjacyjne, algorytm Apriori.


Odkrywanie wiedzy z danych przy użyciu zbiorów przybliżonych. Wykład 3

Minimalizacja form boolowskich

Indukcja reguł decyzyjnych z dwustopniowym procesem selekcji reguł

ZAGADNIENIA DO EGZAMINU DYPLOMOWEGO NA STUDIACH INŻYNIERSKICH. Matematyka dyskretna, algorytmy i struktury danych, sztuczna inteligencja

INDUKOWANE REGUŁY DECYZYJNE ALORYTM APRIORI JAROSŁAW FIBICH

WEKA klasyfikacja z użyciem sztucznych sieci neuronowych

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

Indeksy w bazach danych. Motywacje. Techniki indeksowania w eksploracji danych. Plan prezentacji. Dotychczasowe prace badawcze skupiały się na

Minimalizacja formuł Boolowskich

SYLABUS. Dotyczy cyklu kształcenia Realizacja w roku akademickim 2016/2017. Wydział Matematyczno - Przyrodniczy

Wykaz tematów prac magisterskich w roku akademickim 2018/2019 kierunek: informatyka

Klasyfikacja i regresja Wstęp do środowiska Weka

Lekcja na Pracowni Podstaw Techniki Komputerowej z wykorzystaniem komputera

4.1. Wprowadzenie Podstawowe definicje Algorytm określania wartości parametrów w regresji logistycznej...74

Systemy ekspertowe i ich zastosowania. Katarzyna Karp Marek Grabowski

Analiza korespondencji

Maciej Piotr Jankowski

Systemy ekspertowe : Tablice decyzyjne

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

dr inż. Olga Siedlecka-Lamch 14 listopada 2011 roku Instytut Informatyki Teoretycznej i Stosowanej Politechnika Częstochowska Eksploracja danych

Definicja bazy danych TECHNOLOGIE BAZ DANYCH. System zarządzania bazą danych (SZBD) Oczekiwania wobec SZBD. Oczekiwania wobec SZBD c.d.

Normalizacja baz danych

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

Metody numeryczne Wykład 4

Podstawy Automatyki. Wykład 12 - synteza i minimalizacja funkcji logicznych. dr inż. Jakub Możaryn. Warszawa, Instytut Automatyki i Robotyki

1. Odkrywanie asocjacji

dr inż. Małgorzata Langer Architektura komputerów

Eksploracja danych (data mining)

Nowe narzędzia zarządzania jakością

Adrian Horzyk

Analiza danych i data mining.

Technologia informacyjna

WYKŁAD 6. Reguły decyzyjne

Document: Exercise*02*-*manual /11/ :31---page1of8 INSTRUKCJA DO ĆWICZENIA NR 2

WSTĘP I TAKSONOMIA METODY INŻYNIERII WIEDZY KNOWLEDGE ENGINEERING AND DATA MINING. Adrian Horzyk. Akademia Górniczo-Hutnicza

Odkrywanie wiedzy w danych

Zastosowania metod odkrywania wiedzy do diagnostyki maszyn i procesów

Zalew danych skąd się biorą dane? są generowane przez banki, ubezpieczalnie, sieci handlowe, dane eksperymentalne, Web, tekst, e_handel

Szczegółowy opis przedmiotu zamówienia

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

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

METODY INŻYNIERII WIEDZY

Teoretyczne podstawy informatyki

CLUSTERING. Metody grupowania danych

Wykład I. Wprowadzenie do baz danych

Wyk lad 8: Leniwe metody klasyfikacji

Architektura komputerów ćwiczenia Bramki logiczne. Układy kombinacyjne. Kanoniczna postać dysjunkcyjna i koniunkcyjna.

Opis efektów kształcenia dla programu kształcenia (kierunkowe efekty kształcenia) WIEDZA. rozumie cywilizacyjne znaczenie matematyki i jej zastosowań

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

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 ;

Wstęp do Techniki Cyfrowej... Algebra Boole a

METODY INŻYNIERII WIEDZY ASOCJACYJNA REPREZENTACJA POWIĄZANYCH TABEL I WNIOSKOWANIE IGOR CZAJKOWSKI

Data Mining Wykład 1. Wprowadzenie do Eksploracji Danych. Prowadzący. Dr inż. Jacek Lewandowski

Metody systemowe i decyzyjne w informatyce

Metody zbiorów przybliżonych w uczeniu się podobieństwa z wielowymiarowych zbiorów danych

Politechnika Gdańska Wydział Elektrotechniki i Automatyki Katedra Inżynierii Systemów Sterowania

Mail: Pokój 214, II piętro

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

Ćwiczenie 5. Metody eksploracji danych

data mining machine learning data science

Metoda eliminacji Gaussa. Autorzy: Michał Góra

Elementy logiki. Algebra Boole a. Analiza i synteza układów logicznych

Wielopoziomowa synteza układów logicznych

Analiza danych. TEMATYKA PRZEDMIOTU

1. Synteza automatów Moore a i Mealy realizujących zadane przekształcenie 2. Transformacja automatu Moore a w automat Mealy i odwrotnie

PODSTAWY BAZ DANYCH. 19. Perspektywy baz danych. 2009/2010 Notatki do wykładu "Podstawy baz danych"

Podstawy Automatyki. Wykład 13 - Układy bramkowe. dr inż. Jakub Możaryn. Warszawa, Instytut Automatyki i Robotyki

Wstęp do Techniki Cyfrowej... Układy kombinacyjne

5. Analiza dyskryminacyjna: FLD, LDA, QDA

Podstawy Automatyki. Wykład 13 - Układy bramkowe. dr inż. Jakub Możaryn. Warszawa, Instytut Automatyki i Robotyki

METODY INŻYNIERII WIEDZY

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

Zależności funkcyjne

Rachunek podziałów i elementy teorii grafów będą stosowane w procedurach redukcji argumentów i dekompozycji funkcji boolowskich.

Minimalizacja funkcji boolowskich

Klasteryzacja i klasyfikacja danych spektrometrycznych

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

WYKŁAD 9 METODY ZMIENNEJ METRYKI

Transkrypt:

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 medycynie marketingu farmakologii bankowości do wykrywania anomalii w sieciach tkm ZPT

Zastosowania ZPT

Literatura (łatwiej dostępna) LERS J. Grzymała-Busse, LERS a Data Mining System, in Data Mining and Knowledge Discovery Handbook, 5, VIII, 347-35, DOI:.7/-387-5465-X_65 3 ZPT

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 przeprowadzić sondaż Potrafi wykryć anomalie w sieci Eksploracja danych Potrafi zdiagnozować pacjenta Potrafi podjąć decyzję o przyznaniu kredytu klientowi banku ZPT Nazywa się również odkrywaniem wiedzy w bazach danych (ang. knowledge discovery in databases). 4

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? ZPT 5

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

Komputerowe systemy eksploracji danych ROSETTA http://logic.mimuw.edu.pl/~rses/ http://www.lcb.uu.se/tools/rosetta/ Rough Set Toolkit foranalysis of Data: BiomedicalCentre (BMC), Uppsala, Sweden. ZPT 7

WEKA, ROSE 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. ZPT

Znaczenie eksploracji danych Wiele rzeczywistych zjawisk opisuje się tablicami danych a b d e O b i e k 4 t 5 y 6 3 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. ZPT 9

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

Uogólnianie reguł 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. ZPT

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

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

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

Przykład uogólniania reguł cd. Pouogólnieniuobiektuu u. U a b c d e - - u można usunąć U a b c d e - - 3 4 5 6 7 ZPT 5

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

Przykład uogólniania reguł c.d. U a b c d e 3 4 5 6 7 Dla obiektu u5 a b c d (d,) (e,) u 6, u 7 ZPT 7

Reguły minimalne Uogólnione reguły decyzyjne: (a,)&(b,) (e,) a b c d e (a,) (e,) (b,)&(d,) (e,) (d,) (e,) w innym zapisie: (a,)&(b,) (e,) (a,) (b,) &(d,) (e,) (d,) (e,) ZPT 8

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 Ale pojawia się nowy zestaw danych są w niej dane zebrane do tej pory i już sklasyfikowane a=,b=, c=, d= U a b c d e 3 4 5 6 7 Na uogólnionych regułach jest to oczywiste! Jaka decyzja? a b c d e e = ZPT 9

Predykcja decyzji a a a 3 a 4 a 5 a 6 d 3 3 3 4 5 3 6 3 3 4 3 7 3 3 3 8 9 4 3 3 4 3 3? Reguły (a=)&(a3=)&(a5=)&(a=)&(a6=)=>(d=) (a6=)&(a=)&(a=)=>(d=) (a=3)&(a=3)&(a3=)&(a4=)=>(d=) (a=)&(a3=)&(a=)&(a4=)&(a5=)&(a6=)=>(d=) (a=3)&(a3=)&(a=3)&(a4=3)=>(d=) (a4=4)&(a5=3)&(a6=)&(a=)=>(d=) Nieznana wartość decyzji (a=)&(a=)&(a3=)&(a4=3)&(a5=)&(a6=) ZPT Potrafimy sklasyfikować nowe dane

Zastosowania Sytuacja ta występuje np. przy wnioskach kredytowych składanych w bankach. Ponieważ część z nich jest akceptowana, a część odrzucana, można dane zebrane w dłuższym okresie czasu zapisać w tablicy decyzyjnej, uogólnić i dalej stosować w uproszczonej formie do podejmowania decyzji. Klientów charakteryzuje się za pomocą następujących cech jakościowych i ilościowych: Przykładowo: - Sytuacja zawodowa: B (bezrobotny), P (pracujący) -przeznaczenie kredytu: komputer (K), sprzęt audio (A), biżuteria (B) -wiek w latach -stan konta ZPT

Przykładowa tablica danych... Sytuacja Przeznaczenie: zawodowa Komp., sam. wiek Stan konta Staż pracy w danym zakładzie pracy C C C3 C4 C5 C6 C7 C8 C9 C Klasa P K K S nie 8 5 tak P K K S nie tak B K K R tak 5 5 4 nie P S M R nie 5 3 3 tak P S M S nie 5 5 tak P S M R nie 38 5 tak ZPT

Zastosowania Po uogólnieniu reguł decyzyjnych [wiek > 5] & [stan konta > 7] & [staż pracy > ] tak. [płeć = kobieta] & [wiek < 5] nie Proces uogólniania takich reguł to jedno głównych zagadnień Eksploracji Danych Do wykonywania takich obliczeń opracowano wiele narzędzi komputerowych. Do najbardziej znanych należą: RSES, JMAF, WEKA, ROSETTA, LERS ZPT LERS 3

Redukcja atrybutów Poszukuje się takich podzbiorów atrybutów, które zachowują podział obiektów na klasy decyzyjne taki sam, jak wszystkie atrybuty a a a 3 a 4 a 5 a 6 d 3 4 5 3 6 3 7 8 3 9 3 4 3 4 a a 4 a 6 d 3 4 5 3 6 3 7 8 3 9 3 4 3 4 {a, a 4, a 6 },{a, a, a 3, a 5, a 6 } ZPT 4

Redukcja atrybutów Jak obliczać minimalne zbiory atrybutów? Tak samo jak minimalne zbiory argumentów Metoda obliczania reduktów: Obliczyć: atrybuty niezbędne, iloczyn podziałów indukowanych atrybutami niezbędnymi (P N), podział ilorazowy P N P D (podział ilorazowy wskazuje na wszystkie pary obiektów, których porównanie utworzy tablicę porównań) z tablicy porównań utworzyć funkcje wyróżniającą (typu CNF) przekształcić CNF na DNF DNF reprezentuje wszystkie redukty! ZPT 5

Przykład redukcji atrybutów a atrybuty niezbędne: a 6 a 4 a 5 d a 6 a 3 a a ponieważ wiersze 6 i różnią się na pozycji a 3 3 6 3 5 4 skoro wiersze i 8 różnią się na pozycji a 6 3 7 3 8 6 3 3 4 9 4 ZPT 6

Przykład redukcji atrybutów a 4 a 5 d a 6 a 3 a a ) ; 9;3,6,7 P =(,,4,5,8, 3 = P 6 =(,,6,9,;3,4,5,7,8) 3 5 4 3 6 = P =(,,7;3,4,6;5,8;9,) 3 7 6 P D =(,,7;3,4,6;5,8;9,) 3 3 4 9 3 8 4 3 4 (,)(9);(4)(5,8);(6);(3)(7);() P P P = ZPT 7 (,)(9);(4)(5,8);(6);(3)(7);() P P P D 6 =

Przykład redukcji atrybutów 3 4 5 a a a 3 a 4 a 5 a 6 d P P P = 3 6 D = (,)(9);(4)(5,8);(6);(3)(7);() a, a 4, a 5,9,9 4,5 6 3 4,8 7 8 9 Redukty: 3 3 4 3 4 3,7 Wyrażenie CNF a, a 3, a 4, a 5 a 3, a 4 a, a 4 a 4, a 5 DNF (a 4 + a ) (a 4 + a 3 ) (a 4 + a 5 ) = a 4 + a a 3 a 5 {a, a 4, a 6 } ZPT {a, a, a 3, a 5, a 6 } 8

Plik danych RSES ZPT TABLE EXPLOR ATTRIBUTES 7 x numeric x numeric x3 numeric x4 numeric REDUCTS () x5 numeric { x, x4, x6 } x6 numeric { x, x, x3, x5, x6 } x7 numeric OBJECTS 3 3 3 3 4 3 4

Przykładowa baza (tablica) danych Wyniki badań i diagnozy 7 pacjentów Badanie Badanie Badanie Badanie Badanie Badanie Badanie Badanie Pacjenci Diagnoza 3 4 5 6 7 8 P D3 P D3 P3 D3 P4 D P5 D P6 D3 P7 D3 Wyniki badań i symptomy choroby zapisane są symbolicznymi wartościami atrybutów Reguły decyzyjne (Bad_=)&(Bad_=) &(Bad_5=) &(Bad_8=)=>(Diagnoza=D3) ZPT 3

Uogólnione reguły decyzyjne Badanie Badanie Badanie Badanie Badanie Badanie Badanie Badanie Pacjenci Diagnoza 3 4 5 6 7 8 P D3 P D3 P3 D3 P4 D P5 D P6 D3 P7 D3 Reguły decyzyjne: (Bad_=)&(Bad_4=)=>(Diagnoza=D3) (Bad_4=)&(Bad_7=)=>(Diagnoza=D3) (Bad_=)&(Bad_3=)&(Bad_6=)=>(Diagnoza=D) ( (Bad_3=)&(Bad_5=)&(Bad_6=)=>(Diagnoza=D) (Bad_=)=>(Diagnoza=D) (Bad_=)&(Bad_4=)&(Bad_6=)&(Bad_8=)=>(Diagnoza=D) Reguły decyzyjne wygenerowane z pierwotnej bazy danych używane są do klasyfikowania nowych obiektów. ZPT 3

Uogólnione reguły decyzyjne mogą być zastosowane do zdiagnozowania nowego pacjenta. Bad Bad Bad3 Bad4 Bad5 Bad6 Bad7 Bad8 Diagnoza P D3 P D3 P3 D3 P4 D P5 D P6 D3 P7 D3 Nowy pacjent??? (Bad_=)&(Bad_4=)=>(Diagnoza=D3) Dla nowego pacjenta (Bad_4=)&(Bad_7=)=>(Diagnoza=D3) Diagnoza = D3 (Bad_=)&(Bad_3=)&(Bad_6=)=>(Diagnoza=D) (Bad_3=)&(Bad_5=)&(Bad_6=)=>(Diagnoza=D) (Bad_=)=>(Diagnoza=D) (Bad_=)&(Bad_4=)&(Bad_6=)&(Bad_8=)=>(Diagnoza=D) ZPT 3

Redukcja atrybutów Poszukiwanie takich podzbiorów atrybutów, które zachowują podział obiektów na klasy decyzyjne taki sam, jak wszystkie atrybuty Bad Bad Bad3 Bad4 Bad5 Bad6 Bad7 Bad8 Diagnoza P D3 P D3 P3 D3 P4 D P5 D P6 D3 P7 D3 { Bad_ Bad_4 Bad_6 Bad_8 } { Bad_ Bad_6 Bad_7 Bad_8 } { Bad_ Bad_3 Bad_6 } { Bad_ Bad_ Bad_6 Bad_8 } (Tomograf) Bad Bad6 Bad7 Bad8 Diagnoza P D3 P D3 P3 D3 P4 D P5 D P6 D3 P7 D3 ZPT 33

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 Breast Cancer Database Audiology Database ZPT Dermatology Database 34

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

Breast Cancer Database(fragment) ZPT ID a a a3 a4 a5 a6 a7 a8 a9 a 5 5 3 945 5 4 4 5 7 3 545 3 3 677 6 8 8 3 4 3 7 73 4 3 3 7 8 8 7 9 7 4 899 3 856 3 3378 5 3378 4 3583 3 367 48 5 3 3 3 3 4 4 4 43999 3 3 4457 8 7 5 7 9 5 5 4 4 4763 7 4 6 4 6 4 3 4 4867 4 4985 4 3 567 7 7 6 4 4 4 578 6 3 5459 7 3 5 5 4 4 4 36

REDUCTS (7) { x, x, x3, x4, x6 } { x, x, x3, x5, x6 } { x, x3, x4, x6, x7 } { x, x3, x4, x6, x7 } { x, x, x4, x6, x7 }. { x3, x4, x5, x6, x7, x8 } { x3, x4, x6, x7, x8, x9 } { x4, x5, x6, x7, x8, x9 } RULE_SET breast_cancer RULES 35 (x9=)&(x8=)&(x=)&(x6=)=>(x=) (x9=)&(x=)&(x3=)&(x6=)=>(x=) (x9=)&(x8=)&(x4=)&(x3=)=>(x=) (x9=)&(x4=)&(x6=)&(x5=)=>(x=).. (x9=)&(x6=)&(x=)=>(x=4) (x9=)&(x6=)&(x5=4)=>(x=4) (x9=)&(x6=)&(x=8)=>(x=4) ZPT

Inne bazy danych z zakresu medycyny Audiology Database Dermatology Database Number of instances: Number of Instances: 366 training cases Number of attributes: 34 Number of attributes: 7 Classification(6 classes) Classification(4 classes) Sources: (a) Original Owner: Professor Jergen at Baylor College of Medicine (b) Donor: Bruce Porter (porter@fall.cs.utexas.edu) ZPT Source Information: Nilsel Ilter, M.D., Ph.D., Gazi University, School of Medicine 65 Ankara, Turkey Phone: +9 (3) 48 38

UC Irvine Machine Learning Repository Breast Cancer Database Audiology Database Dermatology Database ZPT Co jest przyczyną takiej sytuacji? 39

Przyczyna Mało skuteczne algorytmy stosowane w komputerowych systemach eksploracji danych. Przykładem potwierdzającym tę tezę jest redukcja atrybutów, stosowana w RSES, ROSE, WEKA Czy można je usprawnić??? ZPT 4

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 ZPT 4

Przykład metoda klasyczna Pokrycie kolumnowe (przypomnienie) M: x x x 4 x 3 x 4 x x x x 4 (x + x + x 4 ) (x 3 + x 4 ) (x + x )(x + x 4 ) = = x x 3 + x x 4 +x x 4 ZPT To są wszystkie minimalne pokrycia kolumnowe macierzy M 4

Przykład metoda uzupełniania M: f = xx x + x x + xx + xx = = M 4 3 4 x x + x x + 4 3 x 4 x 4 x 3 x 4 xx x x x 3 + x x 4 +x x 4 f M = x x 3 + + x x xx 4 4 ZPT To samo co poprzednio! 43

Metoda obliczania reduktów jest równoważna obliczaniu Complementu (Uzupełnienia) funkcji boolowskiej, reprezentowanej Tablicą porównań lub wyrażeniem boolowskim w postaci CNF (Koniunkcyjna Postać Normalna). Istotą metody jest transformacja wyrażenia boolowskiego CNF na DNF (Dysjunkcyjna Postać Normalna), którą tradycyjnie obliczamy metodą przekształceń boolowskich. ZPT 44

Przykład Wyrażenie CNF Zamieniamy na DNF (K + K 3 )(K + K 5 )(K + K 3 )(K + K 5 ) (K 3 + K 4 ) = (K 3 +K ) (K 3 + K ) (K 3 + K 4 ) (K 5 + K ) (K 5 + K ) = = (K 3 +K K K 4 ) (K 5 + K K ) = K 3 K 5 + K K K 3 + K K K 4 K 5 + K K K 4 Wyrażenie DNF: K 3 K 5 + K K K 3 + K K K 4 DNF reprezentuje zbiory {K 3,K 5 }, {K,K,K 3 }, {K,K,K 4 } ZPT 45

Zastosowanie algorytmu uzupełniania Dla koniunkcyjnej postaci normalnej obliczonej w przykładzie: F= (K + K 3 )(K + K 5 )(K + K 3 )(K + K 5 ) (K 3 + K 4 ) reprezentacja funkcji Fw w postaci zbioru kostek jest następująca: F = {(***), (***),(***), (***),(***)}. Uzupełnienie funkcji F, obliczone procedurą Complement jest reprezentowane trzema Kostkami: {(**),(**),(***)}. Można to sprawdzić posługującsię tablicą Karnaugha, reprezentującą uzupełnienie funkcji F: {K,K,K 4 },{K,K,K 3 },{K 3,K 5 } ZPT K 4 K 5 K K K 3 46

Algorytm obliczania reduktów Oczywiście w praktyce nikt nie liczy uzupełnienia posługując się tablica Karnaugha 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. ZPT 47

Metoda Complement Pierwotnie była stosowana w systemie Espresso, ale wyłącznie do obliczania zbioru D (lub R) F,D Espresso Complement Expand Essential primes Irredundant-Cover Reduce ZPT Last-gasp F M (Rozdział 5.5 ) 48

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

ZPT.type fr.i.o.p 3 Funkcja KAZ Wszystkich rozwiązań: z minimalną i najmniejszą liczbą argumentów jest 35, z minimalną liczbą argumentów jest: 5574 Czas obliczeń RSES = 6 min. Czas obliczeń Błyskawicy = 56 ms. ok.. tysięcy razy szybciej!.end 5

Zastosowania Układ do wykrywania wzorców x y x y x 3 : Pattern matching circuit x 4 y 4 y 3 Trzeba wykryć stosunkowo niewielką liczbę wzorów spośród ogromnej liczby innych wektorów 4-bitowych ZPT 5

wektorów 4 bitowych Wynik Sasao Jak zaprojektować układ do wykrywania wzorców? Zadanie takie rozwiązuje się algorytmem redukcji argumentów T. Sasao, Index Generation Functions: Logic Synthesis for Pattern Matching, EPFL Workshop on Logic Synthesis & Verification, Dec. 5. ZPT 5

Generator indeksów Znając redukt generowanie indeksów można zrealizować w strukturze 5 4 x 5 Linear Main Circuity Memory 35 AUX x Memory AND 4 Głównym problemem jest zatem obliczanie reduktów! x 35 35 Comparator T. Sasao, Index Generation Functions: Logic Synthesis for Pattern Matching, EPFL Workshop on Logic Synthesis & Verification, Dec. 5. ZPT 53

Redukcja argumentów ZPT Błyskawica liczy wszystkie najmniejsze redukty w czasie ok. s i znajduje lepszy wynik x6, x6, x4 i x3.e 54

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 ZPT 55

Są źródłem ciekawych prac dyplomowych Konrad Królikowski Implementacja algorytmu obliczania reduktów metodą uzupełniania funkcji boolowskich, Cezary Jankowski Dyskretyzacja danych numerycznych metodami przekształceń boolowskich, WEiTI 4 Michał Andrzej Mańkowski Uogólnianie reguł decyzyjnych metodą uzupełniania funkcji boolowskich, WEiTI 4 ZPT 56