Konspekt do zajęć dotyczących Tablic Decyzyjnych
Transkrypt
Konspekt do zajęć dotyczących Tablic Decyzyjnych
Teoretyczne podstawy zbiorów przybliżonych Agnieszka Nowak 17 kwietnia 2009 1 Podstawy teorii zbiorów przybliżonych 1.1 Wstęp Teoria zbiorów przybliżonych została sformułowana przez Zdzisława Pawlaka w 1982 roku. Jest ona wykorzystywana jako narzędzie do syntezy zaawansowanych i efektywnych metod analizy oraz do redukcji zbiorów danych. Znalazła ona zastosowanie m.in. w eksploracji danych i odkrywaniu wiedzy, złożonych zadaniach klasyfikacji oraz w komputerowych systemach wspomagania decyzji. Metodologia zbiorów przybliżonych zyskała sobie dużą popularność. Jest ona przedmiotem badań wielu osób na całym świecie. Poświęcono jej przeszło 2000 publikacji, w tym kilkanaście książek. Cyklicznie odbywają się na jej temat międzynarodowe konferencje i seminaria (m.in. w USA, Kanadzie i Japonii). 1.2 System informacyjny Istnieje szereg struktur, które mogą być wykorzystane do przechowywania danych. Sposób reprezentacji danych powinien jednak posiadać dwie podstawowe cechy: uniwersalność (powinien pozwalać na gromadzenie i przechowywanie zbiorów różnorodnych danych, opisujących badane zjawiska i procesy) oraz efektywność (powinien umożliwiać w łatwy sposób komputerową analizę tak zapisanych danych). Obie te cechy posiada znany i często wykorzystywany w praktyce tablicowy sposób reprezentacji danych. W tym podejściu zbiór danych przedstawiany jest w postaci tablicy, której kolumny są etykietowane przez atrybuty (parametry, własności, cechy), wiersze odpowiadają zaś obiektom (elementom, sytuacjom, stanom), a na przecięciu wierszy i kolumn znajdują się wartości odpowiednich atrybutów dla poszczególnych obiektów. Tak zdefiniowaną strukturę nazywamy systemem informacyjnym (SI) (ang. information system) rzadziej zaś tablicą informacyjną lub tablicą typu atrybut-wartość. Formalnie systemem informacyjnym nazywamy uporządkowaną czwórkę: SI = (U, A, V, f ) gdzie: • U jest niepustym, skończonym zbiorem zwanym uniwersum, przy czym elementy zbioru, U nazywamy obiektami U = {x1 , x2 , .., xn } • A jest niepustym, skończonym zbiorem atrybutów: U = {a1 , a2 , .., am } 1 • V jest zbiorem wartości atrybutów ze zbioru A: V = ∪a∈A Va przy czym Va nazywamy dziedzina atrybutu a ∈ A . • f : U × A → V jest funkcją informacji taką, że ∀ x∈U f (x, a) ∈ Va a∈A Pacjent 1 2 3 4 5 6 Ból głowy (g) nie tak tak nie tak nie Ból mięsni (m) tak nie tak tak nie tak Temperatura (t) wysoka wysoka bardzo wysoka bardzo wysoka wysoka normalna Grypa (c) tak tak tak tak nie nie Tablica 1: System informacyjny / tablica decyzyjna Tabela przedstawia przykładowy system informacyjny zawierający wyniki badań przeprowadzonych dla grupy pacjentów. System ten składa się z sześciu obiektów (1, 2, .., 6) oraz czterech atrybutów (Ból głowy, Ból mięśni, Temperatura, Grypa). Rozpatrywany system informacyjny może zostać zapisany w następującej postaci: SI = (U, A, V, f ) gdzie: • U={1, 2, 3, 4, 5, 6} • A={Ból głowy, Ból mięśni, Temperatura, Grypa} • V = VBlgowy ∪ VBlmini ∪ VT emperatura ∪ VGrypa VBlgowy = {nie, tak} VBlmini = {nie, tak} VT emperatura = {normalna, wysoka, bardzowysoka} VGrypa = {nie, tak} • f : U × A → V (np. f(1, Ból głowy)=nie; f(3, Grypa) = tak) 1.3 Relacja nierozróżnialności Analizując poszczególne obiekty z tabeli można zaobserwować, że obiekty o numerach 1, 4 i 6 mają te same wartości atrybutów: ból głowy oraz ból mięśni zaś obiekty o numerach 1 i 5 mają tę samą wartość atrybutu temperatura. O obiektach numer 1, 4 i 6 powiemy, że są nierozróżnialne ze względu na atrybuty: ból głowy oraz ból mięśni, zaś obiekty o numerach 1 i 5 są nierozróżnialne ze względu na atrybut: temperatura. Tę obserwację można uogólnić i wyrazić w sposób formalny stosując odpowiednio zdefiniowaną relację. Niech SI = (U, A, V, f ) będzie systemem informacyjnym i niech A ⊆ B. 2 Relację nie rozróżnialności (ang. indiscernibility relation) na zbiorze obiektów U generowaną przez zbiór atrybutów B określamy jako: IN DSI (B) = {(x, y) ∈ U × U : ∀a ∈ Bf (x, a) = f (y, a)} Poszczególne pary obiektów należą do relacji wtedy, gdy posiadają te same wartości dla wszystkich atrybutów ze zbioru B. Relacja nierozróżnialności IN DSI (B) jest relacją równoważności, gdyż jest relacją: • zwrotną, gdyż: ∀ u∈U (u, u) • symetryczną, gdyż: ∈ IN DSI (B) ∀ u,v∈U ((u, v) ∈ IN DSI (B) ⇒ (v, u) ∈ IN DSI (B)) ∀ • przechodnią, gdyż: u,v,w∈U ((u, v) ∈ IN DSI (B) (u, w) ∈ IN DSI (B)) V (v, w) ∈ IN DSI (B) ⇒ Każda relacja równoważności dzieli zbiór, w którym jest określona, na rodzinę rozłącznych podzbiorów zwanych klasami abstrakcji (równoważności) lub zbiorami elementarnymi tej relacji. Klasa abstrakcji elementu y ∈ X względem relacji równoważności R w zbiorze X to zbiór elementów x ∈ X, które są w relacji R z y. Dla danej relacji nie rozróżnialności IN DSI (B) rodzinę wszystkich klas abstrakcji tej relacji oznacza się przez: U/IN DSI (B). Poszczególne klasy nazywamy zbiorami B – elementarnymi, zaś przez ISI,B (x) oznaczamy klasę tej relacji zawierającą obiekt x. Formalnie ISI,B (x) (oznaczane również: [x]IN DSI (B) ) można zdefiniować jako: IN DSI,B (x) = {y ∈ U |(x, y) ∈ IN DSI (B)} Wszystkie elementy każdego zbioru B – elementarnego mają te same wartości wszystkich atrybutów należących do zbioru B (są nierozróżnialne względem tych atrybutów). Zbiór ISI,B (x) zawiera zaś te wszystkie obiekty systemu informacyjnego SI, które są nierozróżnialne z obiektem x względem zbioru atrybutów B (mają te same wartości dla wszystkich atrybutów ze zbioru B). Dla systemu informacyjnego przedstawionego w tabeli można wyznaczyć relacje nie rozróżnialności generowane przez różne zbiory atrybutów. Niech: A1 = g, m, t, A2 = t, A3 = g, m, A4 = g, t, c, A5 = g, m, t, c IN DSI (A1 ) = {(1, 1), (2, 2), (3, 3), (4, 4), (5, 5), (6, 6), (2, 5), (5, 2)} IN DSI (A2 ) = {(1, 1), (2, 2), (3, 3), (4, 4), (5, 5), (6, 6), (1, 2), (2, 1), (1, 5), (5, 1), (2, 5), (5, 2), (3, 4), (4, 3)} IN DSI (A3 ) = {(1, 1), (2, 2), (3, 3), (4, 4), (5, 5), (6, 6), (1, 4), (4, 1), (1, 6), (6, 1), (4, 6), (6, 4), (2, 5), (5, 2)} IN DSI (A4 ) = {(1, 1), (2, 2), (3, 3), (4, 4), (5, 5), (6, 6)} Powyższe relacje dzielę zbiór obiektów systemu informacyjnego na następujące klasy abstrakcji (zbiory elementarne): U/IN DSI (A1 ) = {{1}, {2, 5}, {3}, {4}, {6}} 3 U/IN DSI (A2 ) = {{1, 2, 5}, {3, 4}, {6}} U/IN DSI (A3 ) = {{1, 4, 6}, {2, 5}, {3}} U/IN DSI (A4 ) = {{1}, {2}, {3}, {4}, {5}, {6}} U/IN DSI (A) = {U/IN DSI (A4 )} Na tej podstawie można wyznaczyć przykładowe klasy abstrakcji zawierające poszczególne obiekty systemu informacyjnego: ISI,A3 (1) = {1, 4, 6} ISI,A3 (2) = {2, 5} ISI,A3 (3) = {3} 1.4 Zbiór dokładny oraz zbiór przybliżony Operowanie pojęciami nieostrymi (nieścisłymi, nieprecyzyjnymi) jest bez wątpienia jednym z głównych problemów rozumowań potocznych. Pojęcia nieostre różnią się tym od pojęć ostrych, że w przeciwieństwie do tych ostatnich nie zawsze możliwe jest jednoznaczne zaklasyfikowanie obiektu do pojęcia, tzn. dla pewnej grupy obiektów z otaczającej nas rzeczywistości nie można — stwierdzić jednoznacznie czy dany obiekt należy do rozpatrywanego pojęcia, czy też nie należy. Na przykład mogą to być pojęcia takie jak: małe dziecko, piękna kobieta, wysoki człowiek, dobra książka, łatwe zadanie itd. Najbardziej znany model matematyczny pojęć nieostrych, zwany teorią zbiorów rozmytych został zaproponowany przez Zadeha. Model ten zdobył dużą popularność i znalazł wiele zastosowań (również przy konstrukcji inteligentnych systemów decyzyjnych). Zaletą tego modelu jest duża jego prostota oraz intuicyjność. Innym modelem matematycznym jaki można zastosować do badania pojęć nieostrych jest tzw. teoria ewidencji, zwana również teorią DemsteraShafera, gdyż obecną jej postać zawdzięczamy głównie pracom Demstera i Shafera. W 1976 roku Shafer opublikował monografię, w której zaproponowaó aksjomatyczne ujęcie wcześniejszego modelu pochodzącego od Demstera. Wspomniany model dotyczy konstruowania prawdopodobnych sądów (wnioskowań) o słabo ustrukturowanych problemach, a więc, takich problemach, o których posiadana wiedza ma postać luźnych przesłanek i ewentualnie wstępnych hipotez. Teoria zbiorów przybliżonych także może być uważana za jeden ze sposobów formalizacji nieostrości pojęć. Interesującym wydaje się fakt, że istnieją związki pomiędzy teorią zbiorów rozmytych a teorią zbiorów przybliżonych. Teoria zbiorów przybliżonych proponuje zastąpienie nieostrego (nieprecyzyjnego) pojęcia, parą pojęć precyzyjnych, zwanych dolnym i górnym przybliżeniem tego pojęcia. Różnica między górnym i dolnym przybliżeniem jest właśnie tym obszarem granicznym, do którego nalezą wszystkie przypadki, które nie mogą być prawidłowo zaklasyfikowane na podstawie aktualnej wiedzy. Im większy obszar graniczny pojęcia tym bardziej jest ono nieostre (nieprecyzyjne). Niech SI = {U, A, V, f } będzie systemem informacyjnym i niech B ⊆ A. Mówimy, że zbiór P ⊆ U jest zbiorem B – dokładnym (B – definiowalnym) wtedy, gdy jest on skończoną sumą zbiorów B – elementarnych. Każdy zbiór, który nie jest skończoną sumą zbiorów B – elementarnych jest zbiorem B – przybliżonym. 4 Przykład Kontynuując przykład z poprzedniego podrozdziału niech: X1 = {1, 2, 3, 5} X2 = {3, 4, 5, 6} Możemy stwierdzić, że: • Zbiór X1 jest zbiorem A1 – dokładnym, gdyż jest skończoną sumą zbiorów A1 – elementarnych: X1 = {{1} ∪ {2, 5} ∪ {3}} • Zbiór X2 jest zbiorem A1 – przybliżonym, gdyż nie jest skończoną sumą zbiorów A1 – elementarnych (obiekty 2 i 5 należą do jednego zbioru B – elementarnego, zaś zbiór X2 zawiera tylko obiekt numer 5, a nie zawiera obiektu numer 2) • Zbiór X1 jest zbiorem A2 – przybliżonym, gdyż nie jest skończoną sumą zbiorów A2 – elementarnych (obiekty 3 i 4 należą do jednego zbioru C – elementarnego, zaś zbiór X1 zawiera tylko obiekt numer 3, a nie zawiera obiektu numer 4) • Zbiór X2 jest zbiorem A2 – przybliżonym, gdyż nie jest skończoną sumą zbiorów A2 – elementarnych (obiekty 1, 2 i 5 należą do jednego zbioru C – elementarnego, zaś zbiór X2 zawiera tylko obiekt numer 5, a nie zawiera obiektów numer 1 i 2) 1.5 Aproksymacja zbioru Jeśli SI = {U, A, V, f } jest systemem informacyjnym takim, że B ⊆ A oraz X ⊆ U to: • B – dolnym przybliżeniem (aproksymacją) zbioru X w systemie informacyjnym SI nazywamy zbiór: BX = {x ∈ U : ISI,B (x) ⊆ X} • B – górnym przybliżeniem (aproksymacją) zbioru X w systemie informacyjnym SI nazywamy zbiór: BX = {x ∈ U : ISI,B (x) ∩ X 6= ∅} • B – pozytywnym obszarem (ang. positive area) zbioru X w systemie informacyjnym SI nazywamy zbiór: P OSB (X) = BX • B – brzegiem (granicą) (ang. boundary) zbioru X w systemie informacyjnym SI nazywamy zbiór: BNB (X) = BX − BX • B – negatywnym obszarem (ang. negative area) zbioru X w systemie informacyjnym SI nazywamy zbiór: N EGB X = U − BX 5 Z definicji powyższych możemy wysnuć następujące wnioski: • BX ⊆ X ⊆ BX • zbiór X jest B-dokładny, gdy: BX = BX ⇐⇒ BNB X = ∅ • zbiór X jest B-przybliżony, gdy: BX = BX ⇐⇒ BNB X 6= ∅ Dolne przybliżenie pojęcia jest to więc pojęcie do którego należą wszystkie obiekty, co do których nie ma wątpliwości, że są one reprezentantami tego pojęcia w świetle posiadanej wiedzy. Do górnego przybliżenia niależą obiekty, których nie można wykluczyć, że są reprezentantami tego pojęcia. Brzegiem zaś pojęcia są wszystkie te oniekty, co do ktorych nie wiadomo czy są czy nie reprezentantami danego zbioru. 1.5.1 Aproksymacje zbiorów – interpretacja • Za pomocą dolnej i górnej aproksymacji jesteśmy w stanie określić nieostre pojęcie w ścisły sposób. • Dolna aproksymacja pojęcia, to wszystkie te obiekty, które należą bez wątpienia do pojęcia X. Należą one bowiem do takich klas abstrakcji, które w całości zawierają się w pojęciu X. • Górna aproksymacja pojęcia, to zbiór takich obiektów, co do których nie możemy wykluczyć, że należą do pojęcia X. Jest to spowodowane tym, że należą do klas abstrakcji mających niepuste przecięcie z pojęciem X. Są zatem nierozróżnialne z pewnymi obiektami należącymi do tego pojęcia. • Brzeg zbioru X zawiera obiekty, których nie można jednoznacznie przydzielić do X z uwagi na sprzeczny opis. 1.5.2 Nadmiar informacji jest szkodliwy • W celu precyzyjnego i konkretnego opisana relacji pomiędzy obiektami występującymi w bazie wiedzy, stosuje się redukcję liczby atrybutów opisujących owe relacje. • Poszukuje się takich podzbiorów atrybutów, które zachowują podział obiektów na klasy decyzyjne taki sam, jak wszystkie atrybuty. • Te zbiory atrybutów nie mogą być wyznaczone w dowolny sposób. W teorii zbiorów przybliżonych wykorzystuje się koncepcję reduktu będącego niezależnym podzbiorem atrybutów zachowującym taki sam podział na klasy decyzyjne jak wszystkie atrybuty. • Węższym pojęciem jest pojęcie jądra, określającego zbiór atrybutów niezbędnych dla zachowania rozróżnialności obiektów w systemie. 6 1.6 Liczbowa charakterystyka aproksymacji zbioru Każdy zbiór (przybliżony lub dokładny) można scharakteryzować ilościowo za pomocą współczynnika dokładności aproksymacji (przybliżenia). Współczynnik dokładności aproksymacji zbioru X w systemie informacyjnym SI względem zbioru atrybutów B wyraża się wzorem: αB (X) = card(P OSB (X)) card(BX) = card(BX) card(BX) gdzie card(X) oznacza liczność zbioru X. łatwo zauważyć, że: • 0 ¬ αB (X) ¬ 1 • jeżeli X jest zbiorem dokładnym to: αB (X) = 1 • jeżeli X jest zbiorem przybliżonym to: 0 ¬ αB (X) < 1 Przykład Liczymy teraz dokładność aproksymacji dla zbiorów X1 oraz X2 względem zbioru atrybutów A1 : card(A1 X1 ) αA1 (X1 ) = card(A X ) = 44 = 1 1 αA1 (X2 ) = 1 card(A1 X2 ) card(A1 X2 ) = 3 5 = 0.6 gdzie card(X) oznacza liczność zbioru X. 2 Usuwanie niespójności z tablicy decyzyjnej Wyróżnić można 5 metod usuwanie niespójności w tablicach decyzyjnych: • Zwrócić się do EKSPERTA aby dla obiektów 2 i 5 podjął jedną decyzję. Jest to sposób najprostszy przerzucający ciężar usunięcia niespójności z tablicy na eksperta. Niestety bardzo często zdarza się, że ekspert nie potrafi podjąć jednoznacznej decyzji. Twierdzi np. że dla takich atrybutów (parametrów) raz podejmuje decyzje 1 innym razem decyzje 2. W takim przypadku metoda ta nie daje rezultatu. • Utworzenie dwóch (lub więcej w przypadku ogólnym) spójnych tablic decyzyjnych, poprzez rozdzielenie sprzecznych obiektów. Jest to jednak tylko pozorne rozwiązanie problemu. Powstaną dwa zbiory reguł dla pierwszej i drugiej tablicy. Reguły powstałe na podstawie obiektu 2 w tablicy pierwszej i reguła dla obiektu 5 w tablicy drugiej, będą sprzeczne. • Usunięcie obiektów będących przyczyną niespójności. Powstaje problem, który obiekt usunąć. Można posłużyć się tutaj metodą ilościową. Wówczas usuniemy ten obiekt(-y), którego decyzja mniej razy była potwierdzana. 7 • Można posłużyć się tutaj również metodą jakościową. Usuniemy ten obiekt, którego wartość decyzja jest ”mniej ważąca”. ”Mniej ważąca”to znaczy mająca mniejszą dokładność dolnego lub górnego przybliżenia. Dla każdego X ⊆ U i B ⊆ A dokładność dolnego przybliżenia γB (X) obliczymy ze wzoru: |BX| γB (X) = |U | Dokładność górnego przybliżenia γ B (X)obliczymyzewzoru : γB (X) = |BX| |U | Wówczas usuwamy ten obiekt, dla którego dokładności (górnego bąd”x dolnego) przyblizenia była mniejsza. Przykład Dla tabeli numer 1, która przecież jest niespójna postaramy sie usunąć niespójność metodą jakościową. Najpierw dzielimy zbiór obiektów X ze względu na decyzję na dwa rozłączne podzbiory X1 oraz X2 . X1 = {1, 2, 3, 4} X2 = {5, 6} Generujemy teraz klasy rozróżnialności dla całego zbioru atrybutów warunkowych: IN D(C) = {{1}, {2, 5}, {3}, {4}, {5}, {6}}. Teraz można juz wyznaczyć dla każdego ze zbiorów klasy decyzyjnych: X1 oraz X2 przybliżenie dolne oraz górne. BX1 = {1, 3, 4} BX1 = {1, 2, 3, 4, 5} BX2 = {6} BX2 = {2, 5, 6} Teraz można juz przystąpić do wyliczenia dokładności górnego oraz dolnego przybliżenia: |BX | γB (X1 ) = |U |1 = 36 = 21 γB (X2 ) = γB (X1 ) = |BX2 | |U | |BX1 | |U | |BX2 | |U | = = 1 6 5 6 3 6 γB (X2 ) = = = 21 Metoda mówi, aby usunąć ten obiekt, dla którego uzyskano mniejszą dokładność dolnego, bąd”x górnego przybliżenia w zależności od wybranego wariantu. W naszym przypadku usuniemy obiekt, który powodował niespójność i występował w zbiorze X2 . Spójna juz teraz tablica decyzyjna wygląda następująco: • Tworzenie nowego podziału (Systemu informacyjnego) Decyzja d wyznacza klasyfikację: ClassA (d) = {X1 , ..., Xr(d) }, (gdzie (d) - to ilość różnych wartości atrybutu decyzyjnego.) Tworzymy nowy podział: App − S ClassA (d) = {A| X1, ..., AXr(d) } {BdA () : || > 1} gdzie Ten nowy podział tworzy tablice decyzyjną spójną. Tabela nr 1, (niespójna) po dodaniu do systemu informacyjnego, nowego, uogólnionego atrybutu decyzyjnego wygląda następująco: 8 Pacjent 1 2 3 4 6 Ból głowy (g) nie tak tak nie nie Ból mięśni (m) tak nie tak tak tak Temperatura (t) wysoka wysoka bardzo wysoka bardzo wysoka normalna Grypa (c) tak tak tak tak nie Tablica 2: System informacyjny / tablica decyzyjna po usunięciu niespójności Pacjent 1 2 3 4 5 6 Ból głowy (g) nie tak tak nie tak nie Ból mięśni (m) tak nie tak tak nie tak Temperatura (t) wysoka wysoka bardzo wysoka bardzo wysoka wysoka normalna Grypa (c) tak tak,nie tak tak tak,nie nie Tablica 3: System informacyjny / tablica decyzyjna 3 Macierz, tablica, funkcja oraz wektor odróżnialności dla systemu informacyjnego 3.1 Macierz rozróżnialności Jeśli SI = {U, A, V, f } jest systemem informacyjnym takim, że U = {u1 , u2 , .., un } i A = {a1 , a2 , .., am } , to macierz odróżnialności (rozróżnialności) systemu informacyjnego SI M (SI) (ang. discernibility matrix) definiujemy następująco: M (SI) = (Hi,j )i,j=1,..,n = {a ∈ A : f (ui , a) 6= f (uj , a)} dla i, j = 1, .., n, gdzie n = |U |. Macierz odróżnialności jest dwuwymiarową macierzą kwadratową o wymiarach: |U | × |U |. Komórka M (SI)[i, j] zawiera zbiór tych atrybutów, dla których obiekty uniwersum ui i uj mają różne wartości (są rozróżnialne przy pomocy tych atrybutów). 1 2 3 4 6 1 ∅ g,m g,t t t 2 3 4 6 ∅ m,t g,m,t g,m,t ∅ g g,t ∅ t ∅ Tablica 4: Macierz rozróżnialności dla system informacyjnego 9 Własności macierzy odróżnialności: • macierz M (SI) ma zawsze na przekątnej zbiory puste (∅) • macierz M (SI) jest symetryczna względem przekątnej • każdy element macierzy M (SI) jest zbiorem • rozmiar macierzy rośnie w sposób kwadratowy wraz ze wzrostem liczby obiektów w systemie informacyjnym Generowanie macierzy odróżnialności Wejście: A = (U, A) system informacyjny taki, że U = {u1 , .., un } i A = {a1 , .., am }. Wyjście: M (A) = (Cij )i,j=1,..,n macierz odróżnialności systemu A,przy czym M (A) ma obliczone tylko te pola Cij dla których 1 ¬ j < i ¬ n. Metoda: For i=1 to n do For j=1 to i-1 do Wstaw do Cij atrybuty, na których różnią się obiekty ui i uj 2 Złożoność: Aby obliczyć tablicę M (A), należy wyznaczyć zawartość n 2−n pól macierzy. Złożoność obliczeniowa czasowa wyznaczania każdego pola jest zależna od liczby atrybutów m. Dlatego złożoność obliczeniowa czasowa algorytmu jest rzędu O(n2 ∗ m), natomiast złożoność obliczeniowa pamięciowa algorytmu jest rzędu O(C), gdzie C jest pewną stałą. Powyższe cechy sprawiają, że taka reprezentacja macierzy, jest bardzo niewygodna z programistycznego punktu widzenia. Macierz zawiera redundantne informacje, zawartości komórek nie są typami prostymi a ponadto nie mają stałej wielkości (liczby elementów w zbiorze). W efekcie struktura ta ma bardzo dużą złożoność pamięciową, która dla systemu informacyjnego SI = {U, A, V, f } wynosi: |U |2 ∗ |A|. 3.2 Funkcja rozróżnialności Wiedzę zawartą w macierzy odróżnialności (tablicy odróżnialności) można także przedstawić w postaci funkcji odróżnialności. Funkcją odróżnialności systemu informacyjnego SI (ang. discernibility function) nazywamy funkcję boolowską fSI zmiennych a∗1 , .., a∗m odpowiadających odpowiednio atrybutom (systemu informacyjnego) a1 , ..,TamSzdefiniowaną następująco: fSI (a∗1 , .., a∗m ) = { (Xi,jS: 1 ¬ j ¬ n ∧ Hi, j 6= ∅)} gdzie: n = |U |, m = |A|, Xi,j jest alternatywą wszystkich zmiennych a∗ ∈ {a∗1 , .., a∗m takich, że a ∈ Hi, j. Przykład 10 Obliczmy funkcję odróżnialności dla macierzy odróżnialności z tabeli 2: fSI (g ∗ , m∗ , t∗ , c∗ ) = (g ∗ ∨ m∗ ) ∧ (g ∗ ∨ t∗ ) ∧ (t∗ ) ∧ (g ∗ ∨ m∗ ∨ c∗ ) ∧ (t∗ ∨ c∗ ) ∧ (m∗ ∨ t∗ ) ∧ (g ∗ ∨ m∗ ∨ t∗ ) ∧ (c∗ ) ∧ (g ∗ ∨ m∗ ∨ t∗ ∨ c∗ ) ∧ (g ∗ ) ∧ (m∗ ∨ t∗ ∨ c∗ ) ∧ (g ∗ ∨ t∗ ∨ c∗ ) ∧ (g ∗ ∨ m∗ ∨ t∗ ∨ c∗ ) ∧ (t∗ ∨ c∗ ) ∧ (g ∗ ∨ m∗ ∨ t∗ ) Wyrażenie to można uprościć stosując m.in. prawo pochłaniania (a ∨ (a ∪ b)) = a do postaci: fSI (g ∗ , m∗ , t∗ , c∗ ) = (t∗ ∧ g ∗ ∧ c∗ ) 4 Redukt i Rdzeń zbioru atrybutów Niech SI = {U, A, V, f } będzie systemem informacyjnym oraz B ⊆ A. Definicja. Atrybut zbędny (niezbędny) Atrybut a ⊆ B jest zbędny, jeżeli IN D(B) = IN D(B − {a}). W przeciwnym wypadku (tzn. jeżeli IN D(B) 6= IN D(B − {a}) jest niezbędny. Definicja. Zbiór atrybutów niezależnych (zależnych) A - zbiór atrybutów jest niezależny wtedy i tylko wtedy, gdy dla każdego a ⊆ A, a jest niezbędny. W przeciwnym wypadku zbiór jest zależny. Definicja. Redukt i rdzeń (jądro) B ⊆ A nazywamy reduktem A wtedy i tylko wtedy, gdy B jest niezależny oraz IN D(B) = IN D(A). Zbiór wszystkich reduktów oznaczamy przez RED(A). Zbiór wszystkich niezbędnych atrybutów w B będziemy nazywali rdzeniem (jądrem) B i oznaczali przez CORE(B). Powiązanie między reduktami i jądrem Zachodzi następujący związek: T CORE(A) = RED(A), gdzie RED(A) to zbiór wszystkich reduktów B, tzn. jądro atrybutów to przekrój po wszystkich reduktach. Przykład Zbiór wszystkich reduktów zbioru atrybutów {g, m, t, c} systemu informacyjnego z tabeli 1 wynosi: REDSI ({g, m, t, c}) = {g, t, c}. Aby udowodnić, że zbiór {g, t, c} jest reduktem należy pokazać, że zachodzą warunki z definicji: • IN DSI ({g, m, t, c}) = IN DSI ({g, t, c}), Możemy to pokazać, usuwając z tego zbioru kolejne atrybuty i sprawdzając czy relacja nierozróżnialności względem takiego okrojonego zbioru jest różna od relacji nierozróżnialności względem całego zbioru atrybutów. Jeżeli tak będzie, to zbiór {g, t, c} będzie reduktem. 4.1 Generowanie reduktu i rdzenia z definicji Najpierw wyznaczamy klasy równoważności dla pełnego zbioru atrybutów: IN D(C) = {{1}, {2}, {3}, {4}, {6}} 11 Teraz będziemy sprawdzać czy zmieni się dotychczasowa klasyfikacja obiektów, jaką mamy dla pełnoego zbioru atrybutów, jeśli usuniemy jakiś atrybut ze zbioru. IN D((C) − {g}) = {{1}, {2}, {3, 4}, {6}} czyli: IN D((C) − {g}) 6= IN D(C) więc atrybut {g} jest niezbędny w systemie, ponieważ jeśli go usuniemy to stracimy informacje o rozróznialności dwóch obiektów 3i4. IN D((C) − {m}) = {{1}, {2}, {3}, {4}, {6}} czyli: IN D((C) − {m}) = IN D(C) więc atrybut {m} jest zbędny w systemie, ponieważ jeśli go usuniemy to nie stracimy informacji o rozróznialności obiektów. IN D((C) − {t}) = {{1, 4, 6}, {2}, {3}} czyli: IN D((C) − {t}) 6= IN D(C) więc atrybut {t} jest niezbędny w systemie, ponieważ jeśli go usuniemy to stracimy informacje o rozróznialności obiektów. Zatem CORE(C) to zbiór atrybutów niezbędnych w systemie więc w naszym przypadku stanowią go dwa atrybuty: CORE(C) = {gt} Redukt zgodnie z definicją jest to taki zbiór atrybutów niezbędnych, dla którego zapewniona jest dotychczasowa klasyfikacja obiektów, a wiec na pewno redukt musi zawierać w sobie jądro. Sprawdzamy więc dla jakiej kombinacji atrybutów uzyskamy taki sam podział obiektów jaki dała IN D(C). IN D(gt) = {{1}, {2}, {3}, {4}, {6}} Skoro IN D(gt) = IN D(C), to ten zbiór atrybutów {gt} jest reduktem zbioru atrybutów. RED(C) = {gt}. 4.2 Generowanie reduktu i rdzenia z macierzy rozróżnialności W tym celu generujemy macierz rozróżnialności dla tablicy decyzyjnej. M (SI) = (Hi,j )i,j=1,..,n = {a ∈ A : f (u1 , a) 6= f (uj , a)} dla i, j = 1, .., n, gdzie n = |U |. Macierz odróżnialności jest dwuwymiarową macierzą kwadratową o wymiarach: |U | × |U |. Komórka M (SI)[i, j] zawiera zbiór tych atrybutów, dla których obiekty uniwersum ui i uj mają różne wartości (są rozróżnialne przy pomocy tych atrybutów). Istnieją następujące związki pomiędzy macierzą nierozróżnialności a jądrem i reduktami: CORE(A) = {a ⊆ A : cij = {a}}, dla pewnego 0 < i, j < n + 1, tzn. do jądra 12 1 2 3 4 6 1 ∅ g,m g,t t t 2 3 4 6 ∅ m,t g,m,t g,m,t ∅ g g,t ∅ t ∅ Tablica 5: Macierz rozróżnialności dla system informacyjnego wchodzą te atry-buty, które występują w macierzy rozróżnialności pojedynczo. B ⊆ A jest reduktem A wtedy i tylko wtedy, gdy B jest minimalny (w sensie zawierania zbiorów) oraz z każdym niepustym elementem macierzy nierozróżnialności M (S) ma niepuste przecięcie. Innymi słowy redukt jest to najmniejszy zbiór atrybutów, przy którym zostaje zachowana dotychczasowa klasyfikacja (rozróżnialność) obiektów. RED(C) = {gt} oraz CORE(C) = {gt}. 5 Tablica decyzyjna Szczególnym rodzajem systemów informacyjnych są tablice decyzyjne (T D). Tablicą decyzyjną nazywamy uporządkowaną piątkę: T D = (U, C, D, V, f ) gdzie: • C, D ⊂ A; C 6= ∅; C ∪ D = A; C ∩ D = ∅, • elementy zbioru C nazywamy atrybutami warunkowymi, • elementy zbioru D nazywamy atrybutami decyzyjnymi, • f nazywamy funkcją decyzyjną. • interpretacja U oraz V jest taka sama jak w przypadku systemu informacyjnego, ponadto poszczególne wartości v dziedzin atrybutów D(v ∈ VD ) będziemy nazywać klasami decyzyjnymi. Podstawowa różnica między tablicą decyzyjną a systemem informacyjnym polega więc na tym, że część atrybutów traktujemy jako atrybuty warunkowe (C) a część jako decyzyjne (D). Przykład Tabelę 1 będziemy traktować jako tablicę decyzyjną. Zbiór atrybutów systemu informacyjnego dzielimy na dwa podzbiory: podzbiór atrybutów warunkowych (C) oraz podzbiór atrybutów decyzyjnych (D) w następujący sposób: • C = {Blgowy, Blmini, T emperatura} = {g, m, t} • D = {Grypa} = {c} 13 5.1 Tablice decyzyjne deterministyczne i niedeterministyczne Każdy obiekt u ⊂ U tablicy decyzyjnej T D = (U, C, D, V, f ) może zostać zapisany w postaci zdania warunkowego (postaci: jeżeli warunki to decyzja) i być traktowany jako reguła decyzyjna. Regułą decyzyjną w tablicy decyzyjnej T D nazywamy funkcje:g : C ∪D → V jeżeli istnieje x ∈ U , taki, że g = fx . Obcięcie g do C (g|C) oraz g do D (g|D) nazywamy odpowiednio warunkami oraz decyzjami reguły decyzyjnej g. Przykład Z przykładowej tablicy decyzyjnej z tabeli 1 możemy wyprowadzić następujące reguły (odpowiadające konkretnym obiektom): 1. jeżeli (g=“nie“) i (m=“tak“) i (t=”wysoka”) to (c=”tak”) 2. jeżeli (g=“tak“) i (m=“nie“) i (t=”wysoka”) to (c=”tak”) 3. jeżeli (g=“tak“) i (m=“tak“) i (t=”bardzo wysoka”) to (c=”tak”) 4. jeżeli (g=“nie“) i (m=“tak“) i (t=”bardzo wysoka”) to (c=”tak”) 5. jeżeli (g=“tak“) i (m=“nie“) i (t=”wysoka”) to (c=”nie”) 6. jeżeli (g=“nie“) i (m=“tak“) i (t=”normalna”) to (c=”nie”) Reguły decyzyjne można dzielić na wiele różnych grup biorąc pod uwagę różne kryteria. Jeden z podziałów wyróżnia dwie grupy reguł: • reguły deterministyczne Reguła w tablicy decyzyjnej T D jest deterministyczna, gdy równość atrybutów warunkowych implikuje równość atrybutów decyzyjnych. Fakt ten możemy wyrazić przy pomocy następującej zależności dla obiektów tablicy decyzyjnej: ∀ x,y∈U (∀ x6=y c∈C (f (x, c) = f (y, c)) ⇒ ∀ d∈D (f (x, d) = f (y, d))) • reguły niedeterministyczne Reguła w tablicy decyzyjnej T D jest niedeterministyczna, gdy równość atrybutów warunkowych nie implikuje równości atrybutów decyzyjnych, co można wyrazić następującą zależnością dla obiektów tablicy decyzyjnej: ∀ x,y∈U (∀ x6=y c∈C (f (x, c) = f (y, c)) ∧ ∃ d∈D (f (x, d) 6= f (y, d))) Tablica decyzyjna jest deterministyczna (dobrze określona, spójna), gdy wszystkie reguły w niej zawarte są deterministyczne, w przeciwnym przypadku jest niedeterministyczna (”źle określona, niespójna). 14 Przykład Tablica decyzyjna z tabeli 1 jest niedeterministyczna, gdyż reguły pochodzące z obiektów: 2 i 5 są niedeterministyczne. 5.2 Relacja nierozróżnialności względem decyzji Z uwagi na rzeczywiste zastosowania tablice decyzyjne najczęściej posiadają tylko jeden atrybut decyzyjny, dlatego w dalszej części rozważań przyjmiemy, że D = {d}. Wszystkie definicje mogą jednak w prosty sposób zostać uogólnione na przypadek, kiedy zbiór atrybutów decyzyjnych posiada więcej niż jeden element. Niech T D = (U, C, {d}, V, f ) będzie tablicą decyzyjną i niech B ⊆ C. Relację nierozróżnialności względem decyzji d na zbiorze obiektów U generowaną przez zbiór atrybutów B definiujemy jako: IN DT D (B, d) = {(x, y) ∈ U × U : (x, y) ∈ IN DSI (B) ∨ f (x, d) = f (y, d)} Relacja nierozróżnialności względem decyzji różni się od relacji nierozróżnialności tym, że nie rozróżnia obiektów mających takie same wartości decyzji nawet wtedy, gdy obiekty te różnią się na rozważanym podzbiorze atrybutów warunkowych B. Relacja nierozróżnialności względem decyzji nie jest relacją równoważności. Jest co prawda zwrotna i symetryczna, ale nie jest przechodnia. Przykład Wyznaczymy teraz relację nierozróżnialności dla tablicy decyzyjnej z tabeli 1 względem decyzji d generowaną przez zbiory atrybutów: C1 , C2 , C3 : C1 = {g, m, t}, C2 = {g, m}, C3 = {g, t}, d = {c} IN DT D (C1 , d) = {(1, 1), (2, 2), (3, 3), (4, 4), (5, 5), (6, 6), (2, 5), (5, 2), (1, 2), (2, 1), (1, 3), (3, 1), (1, 4), (4, 1), (2, 3), (3, 2), (2, 4), (4, 2), (3, 4), (4, 3), (5, 6), (6, 5)} IN DT D (C2 , d) = {(1, 1), (2, 2), (3, 3), (4, 4), (5, 5), (6, 6), (1, 4), (4, 1), (1, 6), (6, 1), (4, 6), (6, 4), (2, 5), (5, 2), (1, 2), (2, 1), (1, 3), (3, 1), (2, 3), (3, 2), (2, 4), (4, 2), (3, 4), (4, 3), (5, 6), (6, 5)} IN DT D (C2 , d) = {(1, 1), (2, 2), (3, 3), (4, 4), (5, 5), (6, 6), (2, 5), (5, 2), (1, 2), (2, 1), (1, 3), (3, 1), (1, 4), (4, 1), (2, 3), (3, 2), (2, 4), (4, 2), (3, 4), (4, 3), (5, 6), (6, 5)} 5.3 Macierz, tablica, funkcja oraz wektor odróżnialności dla tablicy decyzyjnej Jeśli T D = (U, C, {d}, V, f ) jest tablicą decyzyjną taką, że U = {u1 , .., un } i C = {c1 , .., cm }, to macierz odróżnialności tablicy decyzyjnej T DM (T D, d) 15 definiujemy następująco: M (T D, d) = (Hi,j )i,j=1,..,n = {c ∈ C : f (ui , c) 6= f (uj , c) ∧ f (ui , d) 6= f (uj , d) dla i, j = 1, .., n gdzie n = |U |. Przykład Obliczmy macierz odróżnialności dla tablicy decyzyjnej z tabeli 1. U/U 1 2 3 4 5 6 1 ∅ ∅ ∅ ∅ g,m t 2 ∅ ∅ ∅ ∅ ∅ g,m,t 3 ∅ ∅ ∅ ∅ m,t g,t 4 ∅ ∅ ∅ ∅ g,m,t t 5 g,m ∅ m,t g,m,t ∅ ∅ 6 t g,m,t g,t t ∅ ∅ Tablica 6: Macierz odróżnialności dla tablicy decyzyjnej 6 Reguły minimalne Tworzymy reguły minimalne dla δG rypa = {tak} czyli reguły postaci: α ⇒ δG rypa = {tak} Aby stworzyć te reguły musimy utworzyć uogólnione macierze rozróżnialności dla obiektów zbioru X (mających wartość decyzji {tak}): M G(A, {tak}, X1 ), M G(A, {tak}, X2 ), M G(A, {tak}, X3 ), M G(A, {tak}, X4 ). Funkcja rozróżnialności odpowiadająca tej macierzy ma postać: fM G (A, {tak}, X1 )(g, m, t) = t fM G (A, {tak}, X2 )(g, m, t) = g ∨ m ∨ t fM G (A, {tak}, X3 )(g, m, t) = g ∨ t fM G (A, {tak}, X4 )(g, m, t) = t Tworzymy reguły minimalne dla δG rypa = {nie} czyli reguły postaci: α ⇒ δG rypa = {nie} Aby stworzyć te reguły musimy utworzyć uogólnione macierze rozróżnialności dla obiektów zbioru X (mających wartość decyzji {tak}): M G(A, {nie}, X6 ). Funkcja rozróżnialności odpowiadająca tej macierzy ma postać: fM G (A, {nie}, X6 )(g, m, t) = (t) ∧ (g ∨ m ∨ t) ∧ (g ∨ t) ∧ (t) Korzystając z praw algebry Boole’a: X * X = X oraz X + X = X a także, że (1 + X) = 1, każde z funkcji przekształcamy następująco: 16 Uwaga l: we wzorze symbol ∧ został zastąpiony przez *, a symbol ∨ przez +. wówczas: fM G (A, {nie}, X6 )(g, m, t) = (t)∗(g+m+t)∗(g+t)∗(t) = tt∗(g+m+t)∗(g+t) = (ttg +ttm+ttt)(g +t) = (ttgg +tttg +ttmg +tttm+tttg +tttt) = (tg +tg +tmg + tm + tg + t) = (tg + tmg + tm + t) = tg(1 + m) + t(1 + m) = tg + t = t(g + 1) = t Czyli: • funkcja dla reguły nr 1: [t] • funkcja dla reguły nr 2: [g + m + t] • funkcja dla reguły nr 3: [g + t] • funkcja dla reguły nr 4: [t] • funkcja dla reguły nr 6: [t] Funkcja fM G (A, {tak}, X1 ) = t oznacza, że możemy zbudować dla decyzji {tak} 1 regułę minimalną: if t = wysoka then grypa = tak Odpowiednio teraz: Funkcja fM G (A, {tak}, X2 ) = g + m + t oznacza, że możemy zbudować dla decyzji {tak} 3 reguły minimalne: if g = tak then grypa = tak if m = nie then grypa = tak if t = wysoka then grypa = tak Funkcja fM G (A, {tak}, X3 ) = g + t oznacza, że możemy zbudować dla decyzji {tak} 2 reguły minimalne: if g = tak then grypa = tak if t = bardzowysoka then grypa = tak Funkcja fM G (A, {tak}, X4 ) = t oznacza, że możemy zbudować dla decyzji {tak} 1 regułę minimalną: if t = bardzowysoka then grypa = tak Ostatecznie otrzymamy optymalną regułę decyzyjną dla decyzji c = tak: if t = wysoka ∨ g = tak ∨ m = nie ∨ t = bardzowysoka then grypa = tak Funkcja fM G (A, {nie}, X6 ) = t oznacza, że możemy zbudować dla decyzji {nie} 1 regułę minimalną: if t = normalna then grypa = nie 17