Instytut Informatyki, Uniwersytet Śląski, ul. Będzinska 39, Sosnowiec, Polska Tel (32) 2 918 381, Fax (32) 2 918 283 Wykład II i III
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).
Wprowadzenie do teorii zbiorów przybliżonych Część I Definition Wprowadzenie do teorii zbiorów przybliżonych. Część I.
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), 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.
System informacyjny Definicja System informacyjny SI zdefiniowany jest jako dwójka: SI = (U, A) gdzie: U jest niepustym, skończonym zbiorem obiektów, A jest niepustym, skończonym zbiorem atrybutów. Zbiór V a jest dziedziną atrybutu a A, V = a A Va. Definiuje się rownież funkcję informacyjną. f : U A V, taką, że a A,x U, f (a, x) V a.
System informacyjny Jak należy rozumieć definicję SI? Rysunek: Jak należy rozumieć definicję SI? f (C2, 1) = Niski, f (C2, 2) = Wysoki, f (C1, 4) = 2, f (C1, 2) = 1, f (S, 3) = Off, f (S, 7) = On. f : U A V : a A,x U f (a, x) V a gdzie V a jest dziedziną atrybutu a A.
System informacyjny System informacyjny a tabela bazy danych? Rysunek: Jak należy rozumieć definicję SI? Pojęcie systemu informacyjnego odpowiada pojęciowo pojęciu tabeli (relacji) w bazach danych.
System informacyjny a system decyzyjny System decyzyjny to rodzaj systemu informacyjnego, który przydziela obiekty do pewnych klas określonych za pomocą jednego z atrybutów, zwanego atrybutem decyzyjnym. Atrybuty zawarte w zbiorze A są nazywane warunkowymi albo po prostu warunkami, zaś d jest nazywane konkluzją bądź po prostu decyzją systemu. Zbiory te są zbiorami skończonymi. i-ta klasa decyzyjna to zbiór obiektów C i = {x U : d(x) = d i}, gdzie d i jest i -tą wartością decyzji odpowiadającą zbiorowi wartości decyzji V d = {d 1,..., d Vd }. Reguła decyzyjna jest formułą: (a i1 = v 1)... (a ik = v k ) (d = v d ), gdzie 1 i 1 <... < i k m, v j V ai j.
Indukcja reguł decyzyjnych W procesie indukcji pomocna jest funkcja rozróżnialności f A, która pozwala budować reguły minimalne (optymalne) dla danej tablicy decyzyjnej. Funkcja rozróżnialności f A dla danego systemu informacyjnego A jest funkcją boolowską m zmiennych boolowskich a1,..., am (odpowiadających atrybutom a 1,..., a m) zdefiniowanym przez: { } f A = cij 1 j i n, c ij gdzie c ij = {a a c ij}.
Tablica decyzyjna Tablicą decyzyjną DT nazywać będziemy system informacyjny w postaci: DT = (U, A {d}), gdzie d / A jest atrybutem decyzyjnym niezaliczanym do zbioru atrybutow A systemu. Atrybuty a A nazywamy atrybutami warunkowymi.
System informacyjny - tablica decyzyjna Pacjent Ból głowy (g) Ból mięsni (m) Temperatura (t) Grypa (c) 1 nie tak wysoka tak 2 tak nie wysoka tak 3 tak tak bardzo wysoka tak 4 nie tak bardzo wysoka tak 5 tak nie wysoka nie 6 nie tak normalna nie 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.
Definicja przykładowego SI 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 = V Bolglowy V Bolmiesni V Temperatura V Grypa V Bolglowy = {nie, tak} V Bolmiesni = {nie, tak} V Temperatura = {normalna, wysoka, bardzowysoka} V Grypa = {nie, tak} f : U A V (np. f(1, Ból głowy)=nie; f(3, Grypa) = tak)
Powtórka iloczyn kartezjański Iloczyn kartezjański zbiorów A i B to zbiór wszystkich par uporządkowanych (a, b), takich, że a należy do zbioru A, zaś b należy do zbioru B. Oznacza się go symbolem A B. Formalnie: A B = {(a, b) : a A, b B} Iloczyn kartezjański może być zbudowany na tym samym zbiorze, np. A A, co bywa oznaczane A 2. Formalnie: A A = {(a, b) : a A, b A} Iloczyn kartezjański dla zbioru obiektów U tablicy decyzyjnej DT : Iloczyn kartezjański U U to zbiór par obiektów. U U = {(x, y) : x U, y U} U U = {(1, 1), (1, 2), (1, 3), (1, 4), (1, 5), (1, 6), (2, 2), (2, 3), (2, 4), (2, 5), (2, 6), (3, 3), (3, 4), (3, 5), (3, 6), (4, 4), (4, 5), (4, 6), (5, 5), (5, 6), (6, 6)}
Powtórka relacja Definition Relacja pomiędzy elementami zbioru A a elementami zbioru B to wybrany podzbiór iloczynu kartezjańskiego A B. Relację tworzą pary elementów wybrane z iloczynu kartezjańskiego według pewnego kryterium. W praktyce najpopularniejsze i najszerzej stosowane są relacje dwuargumentowe (dwuczłonowe, binarne), zwykle nazywane po prostu relacjami. Definition Jeśli założymy, że relacja nazywa się np. R, to zapis xry oznacza, że x jest w relacji R z y.
Relacja nierozróżnialności O relacji nierozróżnialności mówimy wówczas, gdy w rozpatrywanym systemie mamy do czynienia z obiektami o identycznych opisach, bądź obiektami o tej samej wartości danego atrybutu (-ów [kilku, nie wszystkich]). 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ę.
Relacja nierozróżnialności Niech SI = (U, A, V, f ) będzie systemem informacyjnym i niech B A. Definition Relację nie rozróżnialności (ang. indiscernibility relation) na zbiorze obiektów U generowaną przez zbiór atrybutów B określamy jako: IND(B) = {(x, y) U U : a(x) = a(y)} a B gdzie znak = między a(x) i a(y) należy rozumieć w ten sposób, że dla obiektów x i y, należących do U, atrybut a przyjmuje taką samą wartość. Definition Zapis w postaci: xind(b)y oznacza, że x jest w relacji IND(B) z y. Mówiąc konkretnie: obiekt x systemu informacyjnego SI jest nierozróżnialny od obiektu y tegoż samego systemu, ze względu na wybrany podzbiór atrybutów B.
Własności relacji nierozróżnialności 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 IND(B) jest relacją równoważności, gdyż jest relacją: zwrotną, gdyż: u U (u, u) IND(B) symetryczną, gdyż: ((u, v) IND(B) (v, u) IND(B)) u,v U przechodnią, gdyż: ((u, v) IND(B) (v, w) IND(B) (u, w) IND(B)) u,v,w U
Relacja nierozróżnialności - cd Dla systemu informacyjnego przedstawionego w tabeli można wyznaczyć relacje nierozróżnialności generowane przez różne zbiory atrybutów: Pacjent Ból głowy (g) Ból mięsni (m) Temperatura (t) Grypa (c) 1 nie tak wysoka tak 2 tak nie wysoka tak 3 tak tak bardzo wysoka tak 4 nie tak bardzo wysoka tak 5 tak nie wysoka nie 6 nie tak normalna nie Tabela: System informacyjny / tablica decyzyjna Niech: A 1 = {g, m, t}, A 2 = {t}, A 3 = {g, m}, A 4 = {g, t, c}, A 5 = {g, m, t, c} IND SI (A 1) = {(1, 1), (2, 2), (3, 3), (4, 4), (5, 5), (6, 6), (2, 5), (5, 2)} IND SI (A 2) = {(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)} IND SI (A 3) = {(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)} IND SI (A 4) = {(1, 1), (2, 2), (3, 3), (4, 4), (5, 5), (6, 6)}
Dowód, że IND(B) jest relacją zwrotną 1 Niech SI = (U, A) będzie systemem informacyjnym i niech B A. 2 Relacja IND(B) jest zwrotną, bo: 3 Weźmy dowolny obiekt x U, mamy więc: a B, a(x) = a(x) 4 a więc z definicji: (x, x) IND(B).
Dowód, że IND(B) jest relacją symetryczną 1 Niech SI = (U, A) będzie systemem informacyjnym i niech B A. 2 Relacja IND(B) jest symetryczną, bo: 3 Weźmy dowolne obiekty x, y U, 4 załóżmy, że: (x, y) IND(B) 5 mamy wtedy: a B, a(x) = a(y) 6 stąd: a B, a(y) = a(x) 7 a więc: (y, x) IND(B)
Dowód, że IND(B) jest relacją przechodnią 1 Niech SI = (U, A) będzie systemem informacyjnym i niech B A. 2 Relacja IND(B) jest przechodnią, bo: 3 Weźmy dowolne obiekty x, y, z U, 4 załóżmy, że (x, y) IND(B) oraz (y, z) IND(B), 5 mamy wtedy: a B, (a(x) = a(y) a(y) = a(z)) 6 stąd: a B, a(x) = a(z) 7 a więc: (x, z) IND(B).
Klasy abstrakcji Relacja nierozróżnialności IND(B) będąc relacją równoważnościową, dzieli zbiór obiektów U na rozłączne, niepuste klasy abstrakcji. Klasy abstrakcji relacji nierozróżnialności IND(B) oznacza się U/IND(B). Każda klasa abstrakcji relacji nierozróżnialności IND(B) to zbiór obiektów nierozróżnialnych ze względu na atrybuty ze zbioru B. Klasy abstrakcji U/IND(B) relacji nierozróżnialności IND(B) to zatem zbiór zbiorów takich obiektów, które są nierozróżnialne ze względu na atrybuty ze zbioru B. Klasa abstrakcji dla obiektu x U relacji IND(B) zdefiniowana jest następująco: [x] IND(B) = {y U, a B, a(x) = a(y)}
Klasy abstrakcji - cd Powyższe relacje dzielą zbiór obiektów systemu informacyjnego na następujące klasy abstrakcji (zbiory elementarne): U/IND(A 1) = {{1}, {2, 5}, {3}, {4}, {6}} U/IND(A 2) = {{1, 2, 5}, {3, 4}, {6}} U/IND(A 3) = {{1, 4, 6}, {2, 5}, {3}} U/IND(A 4) = {{1}, {2}, {3}, {4}, {5}, {6}} U/IND(A) = {U/IND(A 4)} Na tej podstawie można wyznaczyć przykładowe klasy abstrakcji zawierające poszczególne obiekty systemu informacyjnego: I SI,A3 (1) = {1, 4, 6} I SI,A3 (2) = {2, 5} I SI,A3 (3) = {3}
Aproksymacja zbiorów przybliżenie dolne, górne, brzeg zbior Problem z jednoznaczną klasyfikacją obiektów do pewnego podzbioru Jednym z celów wnioskowania w systemach decyzyjnych jest próba stwierdzenia czy obiekt (lub ich grupa) należy do pewnej klasy, lub nie. Inaczej mówiąc czy należą do pewnego pojęcia czy nie. Proces taki opiera się na opisie obiektu wyrażonym przy pomocy atrybutów. Wybrany podzbiór atrybutów systemu informacyjnego determinuje podział obiektów na rozłączne klasy abstrakcji. Ważnym problemem jest zdolność radzenia sobie z niedoskonałymi danymi. Jednym ze źródeł trudności w zadaniach opisu czy klasyfikacji jest istnienie niespójności w dostępnych danych. Obiekty posiadające identyczne (lub podobne) opisy, lecz zaliczone do różnych pojęć, uniemożliwiają stworzenie jednoznacznej definicji tychże pojęć. Niespójności nie powinny być traktowane wyłącznie jako wynik błędu czy szumu informacyjnego. Mogą one także wynikać z niedostępności części informacji, naturalnej granularności i niejednoznaczności języka reprezentacji.
Zbiory przybliżone a problem z jednoznaczną klasyfikacją obiektów Teoria zbiorów przybliżonych (ang. rough sets) zaproponowana przez Zdzisława Pawlaka jest dogodnym narzędziem analizy tego typu niespójności informacji. Teoria oparta jest na założeniu, że posiadając informację reprezentowaną za pomocą atrybutów i ich wartości na obiektach, możliwe jest określenie relacji zachodzącej pomiędzy tymi obiektami. Obiekty posiadające ten sam opis, wyrażony za pomocą atrybutów, są nierozróżnialne ze względu na dostępną informację. W przypadku niemożliwości precyzyjnego zdefiniowania zbioru obiektów (pojęcia, klasy decyzyjnej) tworzy ona dolne i górne przybliżenie tego zbioru na podstawie klas relacji nierozróżnialności pomiędzy obiektami.
Pojęcia nieostre a 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. 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 należą 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).
Zbiór dokładny oraz zbiór przybliżony
Aproksymacja - definicje Definition Niech SI = {U, A, V, f } będzie systemem informacyjnym i niech B A. Definition 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. Definition Każdy zbiór, który nie jest skończoną sumą zbiorów B elementarnych jest zbiorem B przybliżonym.
Przykład Niech: oraz Wówczas: X 1 = {1, 2, 3, 5} X 2 = {3, 4, 5, 6} A 1 = {g, m, t}, A 2 = {t} U/IND SI (A 1) = {{1}, {2, 5}, {3}, {4}, {6}} U/IND SI (A 2) = {{1, 2, 5}, {3, 4}, {6}} Zbiór X 1 jest zbiorem A 1 dokładnym, gdyż jest skończoną sumą zbiorów A 1 elementarnych: X 1 = {{1} {2, 5} {3}} Ale: Zbiór X 2 jest zbiorem A 1 przybliżonym, gdyż nie jest skończoną sumą zbiorów A 1 elementarnych (obiekty 2 i 5 należą do jednego zbioru B elementarnego, zaś zbiórx 2 zawiera tylko obiekt numer 5, a nie zawiera obiektu numer 2)
Przykład - cd Niech: X 1 = {1, 2, 3, 5} X 2 = {3, 4, 5, 6} A 1 = {g, m, t}, A 2 = {t} U/IND SI (A 1) = {{1}, {2, 5}, {3}, {4}, {6}} U/IND SI (A 2) = {{1, 2, 5}, {3, 4}, {6}} Możemy dalej stwierdzić, że: Zbiór X 1 jest zbiorem A 2 przybliżonym, gdyż nie jest skończoną sumą zbiorów A 2 elementarnych (obiekty 3 i 4 należą do jednego zbioru C elementarnego, zaś zbiór X 1 zawiera tylko obiekt numer 3, a nie zawiera obiektu numer 4) Zbiór X 2 jest zbiorem A 2 przybliżonym, gdyż nie jest skończoną sumą zbiorów A 2 elementarnych (obiekty 1, 2 i 5 należą do jednego zbioru C elementarnego, zaś zbiór X 2 zawiera tylko obiekt numer 5, a nie zawiera obiektów numer 1 i 2)
Aproksymacja zbioru - definicja 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 : I SI,B (x) X } B górnym przybliżeniem (aproksymacją) zbioru X w systemie informacyjnym SI nazywamy zbiór: BX = {x U : I SI,B (x) X }
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.
Współczynniki dokładności dla aproksymacji zbioru X Zbiór przybliżony X może być scharakteryzowany ilościowo za pomocą: Współczynnika dokładności przybliżenia: αbx = BX, gdzie X to liczność niepustego zbioru X, BX Współczynnika dokładności przybliżenia dolnego: α B X = BX U Współczynnika dokładności przybliżenia górnego:α B X = BX U
Obszary pozytywne i negatywne zbiorów B pozytywnym obszarem (ang. positive area) zbioru X w systemie informacyjnym SI nazywamy zbiór: POS B (X ) = BX B brzegiem (granicą) (ang. boundary)zbioru X w systemie informacyjnym SI nazywamy zbiór: BN B (X ) = BX BX B negatywnym obszarem (ang. negative area) zbioru X w systemie informacyjnym SI nazywamy zbiór: NEG B X = U BX
Interpretacja dolnego i górnego przybliżenia zbioru Definition 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. Definition Do górnego przybliżenia należą obiekty, których nie można wykluczyć, że są reprezentantami tego pojęcia. Definition Brzegiem zaś pojęcia są wszystkie te obiekty, co do których nie wiadomo czy są czy nie reprezentantami danego zbioru. Z definicji powyższych możemy wysnuć następujące wnioski: BX X BX
Interpretacja dolnego i górnego przybliżenia zbioru Definition 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. Definition Do górnego przybliżenia należą obiekty, których nie można wykluczyć, że są reprezentantami tego pojęcia. Definition Brzegiem zaś pojęcia są wszystkie te obiekty, co do których nie wiadomo czy są czy nie reprezentantami danego zbioru. Z definicji powyższych możemy wysnuć następujące wnioski: BX X BX zbiór X jest B-dokładny, gdy: BX = BX BN B X =
Interpretacja dolnego i górnego przybliżenia zbioru Definition 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. Definition Do górnego przybliżenia należą obiekty, których nie można wykluczyć, że są reprezentantami tego pojęcia. Definition Brzegiem zaś pojęcia są wszystkie te obiekty, co do których nie wiadomo czy są czy nie reprezentantami danego zbioru. Z definicji powyższych możemy wysnuć następujące wnioski: BX X BX zbiór X jest B-dokładny, gdy: BX = BX BN B X = zbiór X jest B-przybliżony, gdy: BX BX BN B X
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). Definition 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(pos B(X )) card(bx ) gdzie card(x ) oznacza liczność zbioru X. Łatwo zauważyć, że: 0 α B (X ) 1 = card(bx ) card(bx )
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). Definition 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(pos B(X )) 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 = card(bx ) card(bx )
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). Definition 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(pos B(X )) 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 = card(bx ) card(bx ) jeżeli X jest zbiorem przybliżonym to: 0 α B (X ) < 1
Przykład Jeśli: oraz X 1 = {1, 2, 3, 5} X 2 = {3, 4, 5, 6} U/IND SI (A 1) = {{1}, {2, 5}, {3}, {4}, {6}} U/IND SI (A 2) = {{1, 2, 5}, {3, 4}, {6}} Liczymy teraz dokładność aproksymacji dla zbiorów X 1 oraz X 2 względem zbioru atrybutów A 1: α A1 (X 1) = card(a 1X 1 ) card(a 1 X 1 ) = 4 4 = 1 α A1 (X 2) = card(a 1X 2 ) card(a 1 X 2 ) = 3 5 = 0.6 gdzie card(x ) oznacza liczność zbioru X.
Niespójność w danych Niespójność danych zachodzi wówczas, gdy dla takich samych danych wejściowych system podjąłby odmienne decyzje.
Niespójność w danych Niespójność danych zachodzi wówczas, gdy dla takich samych danych wejściowych system podjąłby odmienne decyzje. Praca z systemem o niespójnej wiedzy jest niemożliwa.
Niespójność w danych Niespójność danych zachodzi wówczas, gdy dla takich samych danych wejściowych system podjąłby odmienne decyzje. Praca z systemem o niespójnej wiedzy jest niemożliwa. Niespójność należy usunąć.
Pacjent Ból głowy (g) Ból mięsni (m) Temperatura (t) Grypa (c) 1 nie tak wysoka tak 2 tak nie wysoka tak 3 tak tak bardzo wysoka tak 4 nie tak bardzo wysoka tak 5 tak nie wysoka nie 6 nie tak normalna nie Dla obiektów 2 i 5 zachodzi niespójność, gdyż, dla tych samych atrybutów warunkowych zachodzą różne decyzje: ból głowy=tak and ból mięśni=nie and temp=wysoka dla obiektu 2 podano decyzję: Grypa=tak dla obiektu 5 podano decyzję: Grypa=nie
Usuwanie niespójności z tablicy decyzyjnej Wyróżnić można 5 metod usuwania niespójności w tablicach decyzyjnych: 1 Zwrócić się do EKSPERTA aby dla obiektów 2 i 5 podjął jedną decyzję. 2 Utworzenie dwóch (lub więcej w przypadku ogólnym) spójnych tablic decyzyjnych, poprzez rozdzielenie sprzecznych obiektów. 3 Usunięcie obiektów będących przyczyną niespójności(metoda ilościowa). 4 Można posłużyć się tutaj również metodą jakościową. 5 Metoda tworzenia nowego atrybutu decyzyjnego (metoda uogólnionego atrybutu decyzyjnego)
Usuwanie niespójności z tablicy decyzyjnej Zwrócenie się do EKSPERTA Zwrócenie się do EKSPERTA 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.
Usuwanie niespójności z tablicy decyzyjnej 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. Pacjent Ból głowy (g) Ból mięsni (m) Temperatura (t) Grypa (c) 1 nie tak wysoka tak 2 tak nie wysoka tak 3 tak tak bardzo wysoka tak 4 nie tak bardzo wysoka tak 6 nie tak normalna nie Pacjent Ból głowy (g) Ból mięsni (m) Temperatura (t) Grypa (c) 1 nie tak wysoka tak 3 tak tak bardzo wysoka tak 4 nie tak bardzo wysoka tak 5 tak nie wysoka nie 6 nie tak normalna nie
Metoda jakościowa Metoda jakościowa 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: γ B (X ) = BX U Dokładność górnego przybliżenia γ B (X ) obliczymy ze wzoru: γ B (X ) = BX U Wówczas usuwamy ten obiekt, dla którego dokładności (górnego bądź dolnego) przybliżenia była mniejsza.
Przykład usuwania niespójności metodą jakościową Najpierw dzielimy zbiór obiektów X ze względu na decyzję na dwa rozłączne podzbiory X 1 oraz X 2. X 1 = {1, 2, 3, 4} X 2 = {5, 6} Generujemy teraz klasy rozróżnialności dla całego zbioru atrybutów warunkowych: U/IND(C) = {{1}, {2, 5}, {3}, {4}, {6}}. B dolnym przybliżeniem zbioru X w systemie informacyjnym SI nazywamy zbiór: BX = {x U : I SI,B (x) X } B górnym przybliżeniem zbioru X w systemie informacyjnym SI nazywamy zbiór: BX = {x U : I SI,B (x) X }
Przykład - cd Teraz można juz wyznaczyć dla każdego ze zbiorów klasy decyzyjnych: X 1 oraz X 2 przybliżenie dolne oraz górne. X 1 = {1, 2, 3, 4} X 2 = {5, 6} U/IND(C) = {{1}, {2, 5}, {3}, {4}, {6}}. BX 1 = {1, 3, 4} BX 1 = {1, 2, 3, 4, 5} BX 2 = {6} BX 2 = {2, 5, 6} Teraz można juz przystąpić do wyliczenia dokładności górnego oraz dolnego przybliżenia: γ B (X 1) = BX 1 U = 3 6 = 1 2 γ B (X 2) = BX 2 U = 1 6 γ B (X 1) = BX 1 U = 5 6 γ B (X 2) = BX 2 U = 3 6 = 1 2 Metoda mówi, aby usunąć ten obiekt, dla którego uzyskano mniejszą dokładność dolnego, bądź 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 X 2.
Spójna tablica decyzyjna Spójna juz teraz tablica decyzyjna wygląda następująco: Pacjent Ból głowy (g) Ból mięsni (m) Temperatura (t) Grypa (c) 1 nie tak wysoka tak 2 tak nie wysoka tak 3 tak tak bardzo wysoka tak 4 nie tak bardzo wysoka tak 6 nie tak normalna nie Tabela: System informacyjny / tablica decyzyjna po usunięciu niespójności
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ą. Metoda iloścoiwa Wówczas usuniemy ten obiekt(-y), którego decyzja mniej razy była potwierdzana.
Tworzenie nowego podziału (Systemu informacyjnego) Tworzenie nowego podziału (Systemu informacyjnego) Decyzja d wyznacza klasyfikację: Class A (d) = {X 1,..., X r(d) }, (gdzie (d) - to ilość różnych wartości atrybutu decyzyjnego.) Tworzymy nowy podział: App Class A (d) = {A X 1,..., A Xr(d) } {Bd A (θ) : θ > 1} 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:
Macierz, tablica, funkcja oraz wektor rozróżnialności dla systemu informacyjnego Macierz rozróżnialności Definition Jeśli SI = {U, A, V, f } jest systemem informacyjnym takim, że U = {u 1, u 2,.., u n} i A = {a 1, a 2,.., a m}, to macierz rozróżnialności (odróżnialności) systemu informacyjnego SI M(SI ) (ang. discernibility matrix) definiujemy następująco: M(SI ) = (H i,j) i,j=1,..,n = {a A : f (u i, a) f (u j, a)} dla i, j = 1,.., n, gdzie n = U. Macierz rozróż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 u i i u j mają różne wartości (są rozróżnialne przy pomocy tych atrybutów).
Spójna juz teraz tablica decyzyjna wygląda następująco: Pacjent Ból głowy (g) Ból mięsni (m) Temperatura (t) Grypa (c) 1 nie tak wysoka tak 2 tak nie wysoka tak 3 tak tak bardzo wysoka tak 4 nie tak bardzo wysoka tak 6 nie tak normalna nie Tabela: System informacyjny / tablica decyzyjna po usunięciu niespójności 1 2 3 4 6 1 2 g,m 3 g,t m,t 4 t g,m,t g 6 t g,m,t g,t t Tabela: Macierz rozróżnialności dla system informacyjnego
Własności macierzy rozróżnialności macierz M(SI ) ma zawsze na przekątnej zbiory puste ( ),
Własności macierzy rozróżnialności macierz M(SI ) ma zawsze na przekątnej zbiory puste ( ), macierz M(SI ) jest symetryczna względem przekątnej,
Własności macierzy rozróż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,
Własności macierzy rozróż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 rozróżnialności Wejście: A = (U, A) system informacyjny taki, że U = {u 1,.., u n} i A = {a 1,.., a m}. Wyjście: M(A) = (C ij) i,j=1,..,n macierz odróżnialności systemu A,przyczym M(A) ma obliczone tylko te pola C ij dla których 1 j < i n. Metoda: For i=1 to n do For j=1 to i-1 do Wstaw do C ij atrybuty, na których różnią się obiekty u i i u j
Złożoność: Aby obliczyć tablicę M(A), należy wyznaczyć zawartość n2 n 2 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(n 2 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.
Funkcja rozróżnialności Funkcją odróżnialności systemu informacyjnego SI (ang. discernibility function) nazywamy funkcję boolowską f SI zmiennych a1,.., am odpowiadających odpowiednio atrybutom (systemu informacyjnego) a 1,.., a m zdefiniowaną następująco: f SI (a1,.., am) = { (X i,j : 1 j n Hi, j )} gdzie:n = U, m = A, X i,j jest alternatywą wszystkich zmiennych 1 2 3 4 6 1 a {a1,.., am} takich, że a Hi, j. 2 g,m 3 g,t m,t 4 t g,m,t g 6 t g,m,t g,t t Obliczmy funkcję rozróżnialności dla macierzy odróżnialności: f SI (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: f SI (g, m, t, c) = (t g c)
Redukcja atrybutów pojęcie jądra i reduktów 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.
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 IND(B) = IND(B {a}). W przeciwnym wypadku (tzn. jeżeli IND(B) IND(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 IND(B) = IND(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: 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.
Spójna juz teraz tablica decyzyjna wygląda następująco: Pacjent Ból głowy (g) Ból mięsni (m) Temperatura (t) Grypa (c) 1 nie tak wysoka tak 2 tak nie wysoka tak 3 tak tak bardzo wysoka tak 4 nie tak bardzo wysoka tak 6 nie tak normalna nie Tabela: System informacyjny / tablica decyzyjna po usunięciu niespójności
Przykład Zbiór wszystkich reduktów zbioru atrybutów {g, m, t, c} systemu informacyjnego z tabeli 1 wynosi: RED SI ({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: IND SI ({g, m, t, c}) = IND SI ({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.
Metody generowania reduktów i rdzenia z TD Redukty i rdzeń z tablicy decyzyjnej generuje się jedną z dwóch dróg: z definicji, z macierzy rozróżnialności.
Wyznaczanie jądra (rdzenia) z definicji Wyznacz klasy abstrakcji relacji nierozróżnialności U/IND(B), gdzie B jest to zbiór wszystkich rozważanych atrybutów.
Wyznaczanie jądra (rdzenia) z definicji Wyznacz klasy abstrakcji relacji nierozróżnialności U/IND(B), gdzie B jest to zbiór wszystkich rozważanych atrybutów. Wyznacz klasy abstrakcji z pominięciem i-tego atrybutu U/IND(B a i).
Wyznaczanie jądra (rdzenia) z definicji Wyznacz klasy abstrakcji relacji nierozróżnialności U/IND(B), gdzie B jest to zbiór wszystkich rozważanych atrybutów. Wyznacz klasy abstrakcji z pominięciem i-tego atrybutu U/IND(B a i). Jeżeli U/IND(B) = U/IND(B a i) to atrybut a i jest zbędny, w przeciwnym wypadku a i jest niezbędny i wchodzi do jądra CORE(B).
Wyznaczanie jądra (rdzenia) z definicji Wyznacz klasy abstrakcji relacji nierozróżnialności U/IND(B), gdzie B jest to zbiór wszystkich rozważanych atrybutów. Wyznacz klasy abstrakcji z pominięciem i-tego atrybutu U/IND(B a i). Jeżeli U/IND(B) = U/IND(B a i) to atrybut a i jest zbędny, w przeciwnym wypadku a i jest niezbędny i wchodzi do jądra CORE(B). Powtarzaj pkt. 2, aż wykorzystane zostaną wszystkie atrybuty z B.
Algorytm wyznaczania jądra z definicji Dane:B = a 1, a 2, a 3,...a i,...a n Tablica KRS gdzie: CORE(B) := {} Wyznacz U/INB(B) Dla każdego a B wykonaj Jeżeli U/INB(B) U/IND(B a i) To CORE(B) := CORE(B) a i CORE(B) - jądro (zbiór atrybutów), B - rozważany zbiór atrybutów, a i - i-ty atrybut ze zbioru B, U/INB(B) - klasa abstrakcji relacji nierozróżnialności dla pełnego zbioru atrybutów, U/IND(B a i) - klasy abstrakcji relacji nierozróżnialności dla zbioru atrybutów z pominięciem atrybutu a i.
Wyznaczenie rdzenia z definicji Wyznacz klasy abstrakcji U/IND(B), gdzie B jest to zbiór wszystkich rozważanych atrybutów. Sprawdź, czy jądro CORE(B) nie jest reduktem. Ponieważ jądro to zbiór atrybutów niezbędnych, to sprawdź, czy U/IND(B) = U/IND(CORE(B)), jeżeli tak to jądro to jedyny redukt i przejdź do Punktu 6. Sprawdź kolejne podzbiory atrybutów B i B. Sprawdź, czy podzbiór B i jest niezależny. Jeżeli tak, to sprawdź czy U/IND(B) = U/IND(B i), jeżeli zachodzi równość to podzbiór B i jest reduktem. Wypisanie reduktów.
Podzbiór atrybutów B A nazywamy reduktem zbioru atrybutów A, gdy zbiór atrybutów B jest niezależny oraz IND(B) = IND(A). Zbiór wszystkich reduktów oznaczamy przez RED(A). Redukt to najmniejszy zbiór atrybutów, przy którym zostaje zachowana dotychczasowa klasyfikacja (rozróżnialność) obiektów. Ważne! Redukt musi spełniać dwa kryteria: 1 musi być niezależnym zbiorem atrybutów (tylko atrybuty niezbędne), 2 musi zachowywać taką samą rozróżnialność obiektów jak zbiór redukowany. Uwaga!!! Redukty można wyznaczać dla dowolnego podzbioru A. Do tej pory rozważaliśmy zawsze jakiś podzbiór atrybutów B A. Dla takiego podzbiory B też możemy liczyć redukty. Wtedy reduktem będzie jakiś podzbiór atrybutów C B, a zbiór wszystkich reduktów B oznaczać będziemy RED(B).
Związek pomiędzy jądrem a reduktem Jądro systemu informacyjnego rozpatrywanego dla podzbioru atrybutów B A jest częścią wspólną wszystkich reduktów tego systemu. CORE(B) = RED(A). Uwaga! To właściwość wiążąca jądro i redukty a nie definicja jądra!
Algorytm generowania reduktu z definicji Dane:B = {a 1, a 2, a 3,...a i,..., a n} Tablica KRS Wyznacz U/IND(B) Wyznacz CORE(B) RED(B) := CORE(B) Jeżeli U/IND(B) = U/IND(CORE(B)) To RED(B) := CORE(B), w przeciwnym wypadku Dla każdego podzbioru atrybutów B i B wykonaj: Jeżeli U/IND(B) = U/IND(B i)tored(b) := RED(B) B i
Generowanie reduktu i rdzenia z definicji Najpierw wyznaczamy klasy równoważności dla pełnego zbioru atrybutów: IND(C) = {{1}, {2}, {3}, {4}, {6}} Teraz będziemy sprawdzać czy zmieni się dotychczasowa klasyfikacja obiektów, jaką mamy dla pełnego zbioru atrybutów, jeśli usuniemy jakiś atrybut ze zbioru. czyli: IND((C) {g}) = {{1}, {2}, {3, 4}, {6}} IND((C) {g}) IND(C) więc atrybut {g} jest niezbędny w systemie, ponieważ jeśli go usuniemy to stracimy informacje o rozróżnialności dwóch obiektów 3i4.
Generowanie reduktu i rdzenia z definicji - cd czyli: IND((C) {m}) = {{1}, {2}, {3}, {4}, {6}} IND((C) {m}) = IND(C) więc atrybut {m} jest zbędny w systemie, ponieważ jeśli go usuniemy to nie stracimy informacji o rozróżnialności obiektów. czyli: IND((C) {t}) = {{1, 4, 6}, {2}, {3}} IND((C) {t}) IND(C) więc atrybut {t} jest niezbędny w systemie, ponieważ jeśli go usuniemy to stracimy informacje o rozróżnialności obiektów.
Generowanie reduktu i rdzenia z definicji - cd 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 IND(C). IND(gt) = {{1}, {2}, {3}, {4}, {6}} Skoro IND(gt) = IND(C), to ten zbiór atrybutów {gt} jest reduktem zbioru atrybutów. RED(C) = {gt}.
Algorytm generacji jądra z macierzy rozróżnialności Dane: Macierz M[I, J] CORE(B) := {} Dla I := 1 do N wykonaj Dla J := 1 do I 1 wykonaj Jeżeli card(m[i, J]) = 1 to CORE(B) := CORE(B) + M[I, J]
Wyznaczanie reduktów z macierzy Utworzenie wszystkich możliwych podzbiorów atrybutów. Wybranie tych, które zawierają rdzeń CORE(B). Sprawdzenie, czy otrzymane podzbiory mają niepuste przecięcie z każdym niepustym elementem macierzy rozróżnialności M(S). Spośród otrzymanych podzbiorów atrybutów należy wybrać i usunąć te, które stanowią nadzbiory wyznaczonych reduktów. Pozostałe podzbiory stanowią redukty RED(B).
Generowanie reduktu i rdzenia z macierzy rozróżnialności W tym celu generujemy macierz rozróżnialności dla tablicy deecyzyjnej: M(SI ) = (H i,j) i,j=1,..,n = {a A : f (u 1, a) f (u j, a)} dla i, j = 1,.., n,gdzien = U. Definition 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 u i i u j mają różne wartości (są rozróżnialne przy pomocy tych atrybutów).
1 2 3 4 6 1 2 g,m 3 g,t m,t 4 t g,m,t g 6 t g,m,t g,t t Tabela: Macierz rozróżnialności dla system informacyjnego
Macierz rozróżnialności a redukt i rdzeń zbioru atrybutów Istnieją następujące związki pomiędzy macierzą rozróżnialności a jądrem i reduktami: CORE(A) = {a A : c ij = {a}} dla pewnego 0 < i, j < n + 1, tzn. do jądra wchodzą te atry-buty, które występują w macierzy rozróżnialności pojedynczo. Definition 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}.
Podsumowanie części I 1 System informacyjny a system decyzyjny. 2 Tablicowa forma systemu decyzyjnego. 3 Relacja nierozróżnialności, klasa abstrakcji rozróżnialności. 4 Aproksymacja zbiorów obiektów. Dolne przybliżenie, górne przybliżenie, brzeg zbioru, dokładność górnego i dolnego przybliżenia. 5 Usuwanie niespójności z tablicy decyzyjnej. 6 Redukcja atrybutów, generowanie RED(C) oraz CORE(C): z definicji, z macierzy rózróżnialności.
Generowanie reguł minimalnych z tablic decyzyjnych Część II Definition Generowanie reguł minimalnych z tablic decyzyjnych. Część II.
Tablica decyzyjna Szczególnym rodzajem systemów informacyjnych są tablice decyzyjne (TD). Tablicą decyzyjną nazywamy uporządkowaną piątkę: gdzie: TD = (U, C, D, V, f ) C, D A; C ; 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 V D ) 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 = {Bol glowy, Bol miesni, Temperatura} = {g, m, t} D = {Grypa} = {c}
Tablice decyzyjne deterministyczne i niedeterministyczne Każdy obiekt u U tablicy decyzyjnej TD = (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 TD nazywamy funkcje:g : C D V jeżeli istnieje x U, taki, że g = f x. Obcięcie g do C (g C) oraz g do D (g D) nazywamy odpowiednio warunkami oraz decyzjami reguły decyzyjnej g.
Reguły decyzyjne 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 - rodzaje reguł 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ły niedeterministyczne
Reguły deterministyczne Definition Reguła w tablicy decyzyjnej TD jest deterministyczna, gdy równość atrybutów warunkowych implikuje równość atrybutów decyzyjnych. Mówiąc jaśniej: reguła jest deterministyczna gdy zawsze dla tych samych wartości atrybutów warunkowych podaje na wyjście taką samą decyzję systemu - czyli taką samą wartość atrybutu decyzyjnego. Fakt ten możemy wyrazić przy pomocy następującej zależności dla obiektów tablicy decyzyjnej: x,y U x 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 TD 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 x y ( c C (f (x, c) = f (y, c)) d D (f (x, d) f (y, d)))
Reguły decyzyjne: deterministyczne i niedeterministyczne 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). Tablica decyzyjna z tabeli jest niedeterministyczna, gdyż reguły pochodzące z obiektów: 2i 5 są niedeterministyczne. 2,5 U 2 5 a dokładniej: ( c C (f (2, c) = f (5, c)) d D (f (2, d) f (5, d))) f (2, c) = f (5, c) : (g = tak) (m = nie) (t = wysoka) f (2, d) f (5, d) : bo(c = tak) 2 (c = nie) 5
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.
Center for Machine Learning and Intelligent Systems at the University of California
Center for Machine Learning and Intelligent Systems at the University of California
Center for Machine Learning and Intelligent Systems at the University of California Definition 171 zbiorów danych rzeczywistych 1 Zastosowanie: klasyfikacja (113),regresja (12),grupowanie (5),inne (43) 2 Typ atrybutów: porządkowe (35), numeryczne (59), mieszane (54) 3 Typ danych: Multivariate (131), Univariate (3), ciągłe (8), Time-Series (13), Text (8), Domain-Theory (13), inne (21) 4 Obszar: Life Sciences (47), Physical Sciences (27),CS Engineering (26),Social Sciences (14) Business (5),Game (8),Other (43) 5 Liczba atrybutów: < 10 (39), (10, 100 > (81), > 100 (16) 6 Liczba obiektów: < 100 (10), (100, 1000 > (75), > 1000(63) 7 Format: Matrix (122), Non-Matrix (49)
Relacja nierozróżnialności względem decyzji - rodzaje decyzji
Relacja nierozróżnialności względem decyzji - rodzaje decyzji
Relacja nierozróżnialności względem decyzji - rodzaje decyzji
Relacja nierozróżnialności względem decyzji - rodzaje decyzji
Relacja nierozróżnialności względem decyzji - rodzaje decyzji
Relacja nierozróżnialności względem decyzji - rodzaje decyzji
Relacja nierozróżnialności względem decyzji - rodzaje decyzji
Relacja nierozróżnialności względem decyzji - rodzaje decyzji
Relacja nierozróżnialności względem decyzji - rodzaje decyzji Niech TD = (U, C, {d}, V, f ) będzie tablicą decyzyjną i niech B C. Definition Relację nierozróżnialności względem decyzji d na zbiorze obiektów U generowaną przez zbiór atrybutów B definiujemy jako: IND(B, d) = {(x, y) U U : (x, y) IND SI (B) f (x, d) = f (y, d)}
Relacja nierozróżnialności względem decyzji - rodzaje decyzji 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.
Macierz, tablica, funkcja oraz wektor odróżnialności dla tablicy decyzyjnej Jeśli TD = (U, C, {d}, V, f ) jest tablicą decyzyjną taką, że U = {u 1,.., u n} i C = {c 1,.., c m}, to macierz odróżnialności tablicy decyzyjnej TDM(TD, d) definiujemy następująco: M(TD, d) = (H i,j) i,j=1,..,n = {c C : f (u i, c) f (u j, c) dla i, j = 1,.., n gdzie n = U. f (u i, d) f (u j, d)
Macierz rozróżnialności dla tablicy decyzyjnej - 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 Tabela: Macierz odróżnialności dla tablicy decyzyjnej Zasada! Patrzymy tylko na te obiekty, które mają przeciwną decyzję, i wypisujemy w komórce macierzy atrybuty warunkowe, które różnią te obiekty.
Reguły minimalne Znanym algorytmem generującym reguły na podstawie tablicy decyzyjnej jest algorytm zamieszczony w pracy Z. Pawlaka i A. Skowrona z 1993 roku. Ponieważ algorytm działa dla tablic spójnych, na początku sprawdza się spójność tablicy decyzyjnej. W przypadku wystąpienia niespójności usuwa się ją za pomocą uogólnionego atrybutu decyzyjnego lub metody jakościowejusuwania niespójności z tablicy decyzyjnej.
Od tablicy decyzyjnej do reguł Generowanie reguł minimalnych: 1 Doprowadź tablicę do spójności, np. wprowadzając uogólniony atrybut decyzyjny. 2 Usuń identyczne obiekty. 3 Utwórz macierz nierozróżnialności 4 Dla każdej wartości atrybutu decyzyjnego: 5 Utwórz uogólnioną macierz nierozróżnialności względem decyzji. 6 Zapisz funkcję nierozróżnialności, zminimalizuj ją. 7 Zapisz regułę decyzyjną na podstawie zminimalizowanej funkcji rozróżnialności.
Generowanie reguł minimalnych przypomnienie działań w algebrze Boola Algebra Boola jest to struktura matematyczna A = (X, +,,, 0, 1) spełniająca następujące aksjomaty: łączność i przemienność: x + y = y + x x y = y x (x + y) + z = x + (y + z) (x y) z = x (y z) 0 jest elementem neutralnym dla + : x + 0 = x 1 jest elementem neutralnym dla : x 1 = x x + ( x) = 1 x ( x) = 0 rozdzielność + i względem siebie: x (y + z) = (x y) + (x z) x + (y z) = (x + y) (x + z) dwa działania się znoszą: x = x prawa de Morgana (x y) = ( x) + ( y) (x + y) = ( x) ( y)
Wnioskowanie Boolowskie Funkcje Boolowskie 1 Funkcje postaci f : {0, 1} n {0, 1} nazywamy (zupełnymi) funkcjami Boolowskimi. 2 Liczba wszystkich n-argumentowych funkcji Boolowskich wynosi 2 2n ; 3 Zmienne, Literały, Termy, miniterm, maxterm,... 4 Formy zapisu funkcji: Opis słowny Tablica prawdy Kanoniczna postać sumy Kanoniczna postać iloczynu Macierz kostek
Wnioskowanie Boolowskie Funkcje Boolowskie 1 Relacja częściowego porządku ( ) w {0, 1} n 2 Funkcja f jest monotonna (niemalejąca), gdy dla każdych x, y {0, 1} n jeśli x y to f (x) f (y) 3 monotoniczne funkcje Boolowskie można zapisać bez użycia negacji. 4 jednomian f 0 = x i1 x i2... x ik nazywamy implikantem pierwszym funkcji monotonicznej f jeśli: f 0 (x) f (x) dla każdego wektora x (jest implikantem) każda funkcja większa od f 0 nie jest implikantem 5 Np. funkcja f (x 1, x 2, x 3) = (x 1 x 2) (x 2 x 3) posiada 2 implikanty pierwsze: f 1 = x 2 i f 2 = x 1 x 3
Minimalizacja funkcji rozróżnialności f f = (α 1)(α 1 α 4)(α 1 α 2)(α 1 α 2 α 3 α 4)(α 1 α 2 α 4)(α 2 α 3 α 4)(α 1 α 2 α 3)(α 4)(α 2 α 3)(α 2 α 4)(α 1 α 3)(α 3 α 4)(α 1 α 2 α 4) usuwanie alternatyw regułą pochłanianiat.j. (p (p q) p): f = (α 1)(α 4)(α 2 α 3) sprowadzanie funkcji f z postaci CNF (koniunkcja alternatyw) do postaci DNF (alternatywa koniunkcji) f = α 1α 4α 2 α 1α 4α 3 Każdy składnik jest reduktem. Zatem mamy 2 redukty: R1 = {a 1, a 2, a 4} i R2 = {a 1, a 3, a 4}
Wnioskowanie Boolowskie 1 Problem optymalizacji π (proces kodowania) 2 Funkcja Boolowska F π (Heurystyki dla implikantów pierwszych) 3 Generowanie implikantów pierwszych f 1, f 2,..., f k dla F π (proces dekodowania) 4 Rozwiązanie R 1, R 2,... R k dla π
Definicje Implikant funkcji boolowskiej f (x 1,..., x n) oznacza term g = x ( 1) i 1 x ( 2) i 2... x ( r ) i r, gdzie k {0, 1}, xi 0 k = x ik, xi 1 k = x ik, i k {1, 2,..., n}, k = 1,..., r jeżeli jest prawdziwa dla każdego wartościowania V nierówność g(v ) f (V ). Implikant pierwszy oznacza implikant g, z którego nie można usunąć żadnej zmiennej. Każda funkcja monotoniczna da się przedstawić w postaci alternatywy wszystkich implikantów pierwszych tej funkcji. Zbiór implikantów pierwszych danej funkcji monotonicznej będziemy oznaczać przez PI f.
Macierz rozróżnialności dla tablicy decyzyjnej Tablica decyzyjna Macierz rozróżnialności dla tablicy decyzyjnej 1 2 3 4 6 1 2 g,m 3 g,t m,t 4 t g,m,t g 6 t g,m,t g,t t
Generujemy funkcje rozróżnialności dla poszczególnych decyzji Uproszczony zapis 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) (g + m + t) (g + t) (t) co zapisujemy jako: f MG (A, {tak}, X 1) = t f MG (A, {tak}, X 2) = g + m + t f MG (A, {tak}, X 3) = g + t f MG (A, {tak}, X 4) = t f MG (A, {nie}, X 6) = (t) (g + m + t) (g + t) (t) ale po kolei... następna strona...
reguły minimalne dla σ A = {tak} dla obiektu X 1 1 Wyliczamy reguły minimalne dla σ A = {tak} czyli reguły postaci α σ A = {tak}. 2 Opierając się na uogólnionej macierzy nierozróżnialności dla obiektu X 1: MG(A, {tak}, X 1) wyznaczamy funkcję nierozróżnialności f MG (A, {tak}, X 1). 1 2 3 4 6 1 g,m g,t t t 3 f MG (A, {tak}, X 1) = t 4 Minimalizujemy funkcję f MG (A, {tak}, X 1) - nie ma co minimalizować! 5 Zatem implikanty pierwsze funkcji f MG (A, {tak}, X 1) to PRIME MG (A, {tak}, X 1) = {t}
reguły minimalne dla σ A = {tak} 1 Wyliczamy reguły minimalne dla σ A = {tak} czyli reguły postaci α σ A = {tak}. 2 Opierając się na implikantach pierwszych PRIME MG (A, {tak}, X 1) = {t} i oryginalnej tablicy możemy zapisać regułę minimalną: 3 t = wysoka σ A = {tak}
reguły minimalne dla σ A = {tak} dla obiektu X 2 1 Wyliczamy reguły minimalne dla σ A = {tak} czyli reguły postaci α σ A = {tak}. 2 Opierając się na uogólnionej macierzy nierozróżnialności dla obiektu X 2: MG(A, {tak}, X 2) wyznaczamy funkcję nierozróżnialności f MG (A, {tak}, X 2). 1 2 3 4 6 2 g,m m,t g,m,t g,m,t 3 f MG (A, {tak}, X 2) = g + m + t 4 Minimalizujemy funkcję f MG (A, {tak}, X 2) - nie ma co minimalizować! 5 Zatem implikanty pierwsze funkcji f MG (A, {tak}, X 2) to PRIME MG (A, {tak}, X 2) = {g + m + t}
reguły minimalne dla σ A = {tak} 1 Wyliczamy reguły minimalne dla σ A = {tak} czyli reguły postaci α σ A = {tak}. 2 Opierając się na implikantach pierwszych PRIME MG (A, {tak}, X 2) = {g + m + t} i oryginalnej tablicy możemy zapisać 3 reguły minimalne: 3 g = tak σ A = {tak} 4 m = nie σ A = {tak} 5 t = wysoka σ A = {tak}
reguły minimalne dla σ A = {tak} dla obiektu X 3 1 Wyliczamy reguły minimalne dla σ A = {tak} czyli reguły postaci α σ A = {tak}. 2 Opierając się na uogólnionej macierzy nierozróżnialności dla obiektu X 3: MG(A, {tak}, X 3) wyznaczamy funkcję nierozróżnialności f MG (A, {tak}, X 3). 1 2 3 4 6 3 g,t m,t g g,t 3 f MG (A, {tak}, X 3) = g + t 4 Minimalizujemy funkcję f MG (A, {tak}, X 3) - nie ma co minimalizować! 5 Zatem implikanty pierwsze funkcji f MG (A, {tak}, X 3) to PRIME MG (A, {tak}, X 3) = {g + t}
reguły minimalne dla σ A = {tak} 1 Wyliczamy reguły minimalne dla σ A = {tak} czyli reguły postaci α σ A = {tak}. 2 Opierając się na implikantach pierwszych PRIME MG (A, {tak}, X 3) = {g + t} i oryginalnej tablicy możemy zapisać 2 reguły minimalne: 3 g = tak σ A = {tak} 4 t = bardzowysoka σ A = {tak}
reguły minimalne dla σ A = {tak} dla obiektu X 4 1 Wyliczamy reguły minimalne dla σ A = {tak} czyli reguły postaci α σ A = {tak}. 2 Opierając się na uogólnionej macierzy nierozróżnialności dla obiektu X 4: MG(A, {tak}, X 4) wyznaczamy funkcję nierozróżnialności f MG (A, {tak}, X 4). 1 2 3 4 6 4 t g,m,t g t 3 f MG (A, {tak}, X 4) = t 4 Minimalizujemy funkcję f MG (A, {tak}, X 4) - nie ma co minimalizować! 5 Zatem implikanty pierwsze funkcji f MG (A, {tak}, X 4) to PRIME MG (A, {tak}, X 4) = {t}
reguły minimalne dla σ A = {tak} 1 Wyliczamy reguły minimalne dla σ A = {tak} czyli reguły postaci α σ A = {tak}. 2 Opierając się na implikantach pierwszych PRIME MG (A, {tak}, X 4) = {t} i oryginalnej tablicy możemy zapisać 1 regułę minimalną: 3 t = bardzowysoka σ A = {tak}
reguły minimalne dla σ A = {nie} dla obiektu X 6 1 Wyliczamy reguły minimalne dla σ A = {nie} czyli reguły postaci α σ A = {nie}. 2 Opierając się na uogólnionej macierzy nierozróżnialności dla obiektu X 6: MG(A, {nie}, X 6) wyznaczamy funkcję nierozróżnialności f MG (A, {nie}, X 6). 1 2 3 4 6 6 g,t m,t g g,t 3 f MG (A, {nie}, X 6) = t (g + m + t) (g + t) (t) 4 Minimalizujemy funkcję f MG (A, {nie}, X 6) = 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 5 Zatem implikanty pierwsze funkcji f MG (A, {nie}, X 6) to PRIME MG (A, {nie}, X 6) = {t}
reguły minimalne dla σ A = {nie} 1 Wyliczamy reguły minimalne dla σ A = {nie} czyli reguły postaci α σ A = {nie}. 2 Opierając się na implikantach pierwszych PRIME MG (A, {nie}, X 6) = {t} i oryginalnej tablicy możemy zapisać 1 regułę minimalną: 3 t = normalna σ A = {nie}
Wygenerowane reguły optymalne -baza: PACJENCI 1 if t = wysoka then grypa = tak 2 if g = tak then grypa = tak 3 if m = nie then grypa = tak 4 if t = bardzo wysoka then grypa = tak 5 if t = normalna then grypa = nie Ostatecznie otrzymamy 2 optymalne reguły decyzyjne: dla decyzji c = tak: if t = wysoka g = tak m = nie t = bardzo wysoka then grypa = tak dla decyzji c = nie: if t = normalna then grypa = nie
Przykładowa tablica decyzyjna
Tablica jest niespójna Wniosek Tablica jest niespójna!
Wprowadzamy uogólniony atrybut decyzyjny σ A Decyzja: Wprowadzamy uogólniony atrybut decyzyjny σ A
Teraz w tablicy występują powielone obiekty Obserwacja: Teraz w tablicy występują powielone obiekty
Eliminujemy powielone obiekty Decyzja: Eliminujemy powielone obiekty
Tworzymy macierz nierozróżnialności Krok algorytmu: Tworzymy macierz nierozróżnialności