Systemy decyzyjne Wykład 3: Wnioskowanie Boolowskie w obliczeniu Redutów i reguł decyzyjnych Nguyen Hung Son Nguyen Hung Son () 1 / 61
Spis treści 1 Wprowadzenie do teorii zbiorów przybliżonych Systemy informacyjne i tablice decyzyjne Redukty 2 Metody wnioskowań Boolowskich w szukaniu reduktów 3 Algorytmy heurystyczne dla problemu reduktu Heurystyka Johnsona Inne heurystyki 4 Systemy decyzyjne oparte o zbiory przybliżone Reguły decyzyjne Regułowe systemy decyzyjne Szukanie minimalnych reguł decyzyjnych Nguyen Hung Son () 2 / 61
Spis treści 1 Wprowadzenie do teorii zbiorów przybliżonych Systemy informacyjne i tablice decyzyjne Redukty 2 Metody wnioskowań Boolowskich w szukaniu reduktów 3 Algorytmy heurystyczne dla problemu reduktu Heurystyka Johnsona Inne heurystyki 4 Systemy decyzyjne oparte o zbiory przybliżone Reguły decyzyjne Regułowe systemy decyzyjne Szukanie minimalnych reguł decyzyjnych Nguyen Hung Son () 3 / 61
Teoria zbiorów przybliżonych Teoria zbiorów przybliżonych jest wprowadzona w latach 80-tych przez prof. Zdzisława Pawlaka. Głównym celem jest dostarczanie narzędzi dla problemu aproksymacji pojęć (zbiorów). Zastosowania w systemach decyzyjnych: Redukcja danych, selekcja ważnych atrybutów Generowanie reguł decyzyjnych Odkrywanie wzorców z danych: szablony, reguły asocjacyjne Odkrywanie zależności w danych Nguyen Hung Son () 4 / 61
Systemy informacyjne Definicja Jest to para S = (U, A), gdzie U skończony niepusty zbiór obiektów (ang. cases, states, patients, observations...) A skończony, niepusty zbiór atrybutów. Każdy a A odpowiada pewnej funkcji a : U V a zwanej wartościowaniem, gdzie V a jest nazwana dziedziną atrybutu a. Dla B A, definiujemy Wektor informacji na B (ang. B-information vector) dla obiektu x U jako inf B (x) = {(a, a(x)) : a B} B-information set: INF (S) = {inf B (x) : x U} Nguyen Hung Son () 5 / 61
Systemy informacyjne Przykład Patient Age Sex Chol. Resting ECG Heart rate Sick p 1 53 M 203 hyp 155 yes p 2 60 M 185 hyp 155 yes p 3 40 M 199 norm 178 no p 4 46 F 243 norm 144 no p 5 62 F 294 norm 162 no p 6 43 M 177 hyp 120 yes p 7 76 F 197 abnorm 116 no p 8 62 M 267 norm 99 yes p 9 57 M 274 norm 88 yes p 10 72 M 200 abnorm 100 no Nguyen Hung Son () 6 / 61
Tablica decyzyjna Tablica decyzyjna Jest to struktura S = (U, A {dec}), gdzie U jest zbiorem obiektów: U = {u 1,..., u n } A jest zbiorem atrybutów postaci a j : U V j dec jest specjalnym atrybutem zwanym decyzją dec : U {1,..., d} Nguyen Hung Son () 7 / 61
Tablica decyzyjna Tablica decyzyjna powstaje ze zwykłych tablic danych poprzez sprecyzowania: Atrybutów: cechy łatwo dostępne, np. pomiary, parametry, dane osobowe,... Decyzji, t.j. cecha ukryta za pewną wiedzą (pojęciem) nieznaną: Decyzja jest znana tylko dla obiektów z (treningowej) tablicy decyzyjnej Jest podana przez eksperta (np. lekarza) lub na podstawie późniejszych obserwacji (np. ocena giełdy). chcemy ją określić dla dowolnych obiektów na podstawie atrybutów Nguyen Hung Son () 8 / 61
Przykład Przedstawiona tablica decyzyjna zawiera: 8 obiektów będących opisami pacjentów 3 atrybuty: Headache, Muscle pain, Temp. Decyzję określającą pacjenta jako przeziębionego lub nie Example U Headache Muscle pain Temp. Flu p1 Yes Yes Normal No p2 Yes Yes High Yes p3 Yes Yes Very-high Yes p4 No Yes Normal No p5 No No High No p6 No Yes Very-high Yes p7 No Yes High Yes p8 No No Very-high No Nguyen Hung Son () 9 / 61
Relacja rozróżnialności Dane są obiekty x, y U i zbiór atrybutów B A, mówimy, że x, y są rozróżnialne przez B wtw, gdy istnieje a B taki, że a(x) a(y) x, y są nieodróżnialne przez B, jeśli one są identyczne na B, tzn. a(x) = a(y) dla każdego a B [x] B = zbiór obiektów nieodróżnialnych z x przez B Nguyen Hung Son () 10 / 61
Relacja rozróżnialności Dla każdych obiektów x, y: albo [x] B = [y] B albo [x]b [y]b = Relacja x IND B y := x, y są nieodróżnialne przez B jest relacją równoważności. Każdy zbiór atrybutów B A wyznacza podział zbioru obiektów na klasy nieodróżnialności Nguyen Hung Son () 11 / 61
Przykład Dla B = {Headache, M usclepain} obiekty p1, p2, p3 są nierozróżnialne. są 3 klasy nieodróżnialności relacji IND B : [p1] B = {p1, p2, p3} [p4]b = {p4, p6, p7} [p5]b = {p5, p8} Example U Headache Muscle pain Temp. Flu p1 Yes Yes Normal No p2 Yes Yes High Yes p3 Yes Yes Very-high Yes p4 No Yes Normal No p5 No No High No p6 No Yes Very-high Yes p7 No Yes High Yes p8 No No Very-high No Nguyen Hung Son () 12 / 61
Relacja rozróżnialności i aproksymacja pojęć Każdy zbiór obiektów X (np. klasa decyzyjna, pojęcie) może być opisany za pomocą atrybutów ze zbioru B dokładnie lub w przybliżeniu dokładnie: jeśli X jest sumą pewnych klas nieodróznialności definiowanych przez B (ZBIORY DOKŁADNE) w przybliżeniu: w przeciwnym przypadku (ZBIORY PRZYBLIŻONE) W obu przypadkach X może być opisany przez 2 dokładne zbiory zwane dolną i górną aproksymacją zbioru X B(X) = {x : [x] B X} B(X) = {x : [x] B X } Nguyen Hung Son () 13 / 61
Aproksymacja pojęć Obszar brzegowy (B-boundary region) pojęcia X zawiera obiekty, dla których nie możemy jednoznacznie decydować czy należy do X czy nie na podstawie atrybutów z B Obszar zewnętrzny (B-outside region of X) zawiera obiekty, które możemy pewnie klasyfikować jako elementy pojęcia X. Zbiór jest przybliżony (rough set) jeśli obszar brzegowy jest niepusty, w przeciwnym przypadku zbiór jest nazwany dokładny (crisp set). Nguyen Hung Son () 14 / 61
Przykład Niech B = {a 1, a 2 } A a 1 a 2 a 3 a 4 d ID outlook temp. hum. windy play 1 sunny hot high FALSE no 2 sunny hot high TRUE no 3 overcast hot high FALSE yes 4 rainy mild high FALSE yes 5 rainy cool normal FALSE yes 6 rainy cool normal TRUE no 7 overcast cool normal TRUE yes 8 sunny mild high FALSE no 9 sunny cool normal FALSE yes 10 rainy mild normal FALSE yes 11 sunny mild normal TRUE yes 12 overcast mild high TRUE yes 13 overcast hot normal FALSE yes 14 rainy mild high TRUE no Nguyen Hung Son () 15 / 61
Przykład Niech B = {a 1, a 2 } IND(B) = {{1, 2}, (sunny, hot) {3, 13}, (overcast, hot) {4, 10, 14}, (rainy, mild) {5, 6}, (rainy, cool) {8, 11}, (sunny, mild) {7}, {9}, {12}} A a 1 a 2 a 3 a 4 d ID outlook temp. hum. windy play 1 sunny hot high FALSE no 2 sunny hot high TRUE no 3 overcast hot high FALSE yes 4 rainy mild high FALSE yes 5 rainy cool normal FALSE yes 6 rainy cool normal TRUE no 7 overcast cool normal TRUE yes 8 sunny mild high FALSE no 9 sunny cool normal FALSE yes 10 rainy mild normal FALSE yes 11 sunny mild normal TRUE yes 12 overcast mild high TRUE yes 13 overcast hot normal FALSE yes 14 rainy mild high TRUE no Nguyen Hung Son () 15 / 61
Przykład Niech B = {a 1, a 2 } IND(B) = {{1, 2}, (sunny, hot) {3, 13}, (overcast, hot) {4, 10, 14}, (rainy, mild) {5, 6}, (rainy, cool) {8, 11}, (sunny, mild) {7}, {9}, {12}} Consider a concept defined by (play=no) X = CLASS no = {1, 2, 6, 8, 14} A a 1 a 2 a 3 a 4 d ID outlook temp. hum. windy play 1 sunny hot high FALSE no 2 sunny hot high TRUE no 3 overcast hot high FALSE yes 4 rainy mild high FALSE yes 5 rainy cool normal FALSE yes 6 rainy cool normal TRUE no 7 overcast cool normal TRUE yes 8 sunny mild high FALSE no 9 sunny cool normal FALSE yes 10 rainy mild normal FALSE yes 11 sunny mild normal TRUE yes 12 overcast mild high TRUE yes 13 overcast hot normal FALSE yes 14 rainy mild high TRUE no Nguyen Hung Son () 15 / 61
Przykład Niech B = {a 1, a 2 } IND(B) = {{1, 2}, (sunny, hot) {3, 13}, (overcast, hot) {4, 10, 14}, (rainy, mild) {5, 6}, (rainy, cool) {8, 11}, (sunny, mild) {7}, {9}, {12}} Consider a concept defined by (play=no) X = CLASS no = {1, 2, 6, 8, 14} Aproksymacje pojęcia X: A a 1 a 2 a 3 a 4 d ID outlook temp. hum. windy play 1 sunny hot high FALSE no 2 sunny hot high TRUE no 3 overcast hot high FALSE yes 4 rainy mild high FALSE yes 5 rainy cool normal FALSE yes 6 rainy cool normal TRUE no 7 overcast cool normal TRUE yes 8 sunny mild high FALSE no 9 sunny cool normal FALSE yes 10 rainy mild normal FALSE yes 11 sunny mild normal TRUE yes 12 overcast mild high TRUE yes 13 overcast hot normal FALSE yes 14 rainy mild high TRUE no L B (X) = {1, 2} U B (X) = {1, 2, 5, 6, 8, 11, 4, 10, 14} Nguyen Hung Son () 15 / 61
Przykład Niech B = {a 1, a 2 } IND(B) = {{1, 2}, (sunny, hot) {3, 13}, (overcast, hot) {4, 10, 14}, (rainy, mild) {5, 6}, (rainy, cool) {8, 11}, (sunny, mild) {7}, {9}, {12}} Consider a concept defined by (play=no) X = CLASS no = {1, 2, 6, 8, 14} Aproksymacje pojęcia X: L B (X) = {1, 2} U B (X) = {1, 2, 5, 6, 8, 11, 4, 10, 14} Reguła pewna: If B(x) = (sunny, hot) then d(x) = no A a 1 a 2 a 3 a 4 d ID outlook temp. hum. windy play 1 sunny hot high FALSE no 2 sunny hot high TRUE no 3 overcast hot high FALSE yes 4 rainy mild high FALSE yes 5 rainy cool normal FALSE yes 6 rainy cool normal TRUE no 7 overcast cool normal TRUE yes 8 sunny mild high FALSE no 9 sunny cool normal FALSE yes 10 rainy mild normal FALSE yes 11 sunny mild normal TRUE yes 12 overcast mild high TRUE yes 13 overcast hot normal FALSE yes 14 rainy mild high TRUE no Reguły przybliżone: If B(x) = (rainy, cool) then d(x) = no If B(x) = (rainy, mild) then d(x) = no If B(x) = (sunny, mild) then d(x) = no Nguyen Hung Son () 15 / 61
Pączek U AX X AX Nguyen Hung Son () 16 / 61
Dokładność aproksymacji Accuracy of approximation 0 α B (X) 1 α B (X) = B(X) B(X) Jeśli α B (X) = 1, to zbiór X jest dokładnie definiowany przez B; Jeśli α B (X) < 1, to zbiór X jest aproksymacyjnie definiowany przez B; Nguyen Hung Son () 17 / 61
Redukty W systemach decyzyjnych, nie wszystkie atrybuty są potrzebne do procesie podejmowania decyzji; Chcemy wybrać pewne podzbiory atrybutów niezbędnych do tego celu; Redukty to minimalne podzbiory atrybutów zachowujących charakterystykę całego zbioru atrybutów. W teorii zbiorów przybliżonych, istnieją co najmniej 2 pojęcia reduktów: informacyjne i decyzyjne; Nguyen Hung Son () 18 / 61
Definicja Definicja reduktu informacyjnego Zbiór atrybutów B A nazywamy reduktem tablicy A wtw, gdy B zachowuje rozróżnialność zbioru A: t.j. dla dowolnych obiektów x, y U, jeśli x, y są rozróżnialne przez A, to są również rozróżnialne przez B B jest niezredukowalny: tzn. żaden właściwy podzbiór B nie zachowuje rozróżnialności zbioru A (t.j., B jest minimalny pod względem rozróżnialności) Nguyen Hung Son () 19 / 61
Definicja Definicja reduktu decyzyjnego Zbiór atrybutów B A nazywamy reduktem tablicy A wtw, gdy B zachowuje rozróżnialność zbioru A względem decyzji dec: t.j. dla dowolnych obiektów x, y U, jeśli dec(x) dec(y) i x, y są rozróżnialne przez A, to są również rozróżnialne przez B B jest niezredukowalny: tzn. żaden właściwy podzbiór B nie zachowuje rozróżnialności zbioru A (B jest minimalny pod względem rozróżnialności) Nguyen Hung Son () 20 / 61
Zbiór reduktów RED(S) = zbiór wszystkich reduktów tablicy decyzyjnej S; Jeśli S = (U, A {dec}) i A = n to RED(S) ( ) n n/2 rdzenie: zbiór atrybutów będących we wszystkich reduktach K = B RED(S) B Nguyen Hung Son () 21 / 61
Problemy obliczeniowe związane z reduktami Znaleźć rdzenie danej tablicy decyzyjnej; Znaleźć jakiś redukt; Znaleźć krótkie redukty; Znaleźć długie redukty; Nguyen Hung Son () 22 / 61
Spis treści 1 Wprowadzenie do teorii zbiorów przybliżonych Systemy informacyjne i tablice decyzyjne Redukty 2 Metody wnioskowań Boolowskich w szukaniu reduktów 3 Algorytmy heurystyczne dla problemu reduktu Heurystyka Johnsona Inne heurystyki 4 Systemy decyzyjne oparte o zbiory przybliżone Reguły decyzyjne Regułowe systemy decyzyjne Szukanie minimalnych reguł decyzyjnych Nguyen Hung Son () 23 / 61
Motywacje W systemach decyzyjnych, nie wszystkie atrybuty są potrzebne do procesie podejmowania decyzji; Chcemy wybrać pewne podzbiory atrybutów niezbędnych do tego celu; Redukty to minimalne podzbiory atrybutów zachowujących charakterystykę całego zbioru atrybutów. W teorii zbiorów przybliżonych, istnieją co najmniej 2 pojęcia reduktów: informacyjne i decyzyjne; Nguyen Hung Son () 24 / 61
Definicja Definicja reduktu informacyjnego Zbiór atrybutów B A nazywamy reduktem tablicy A wtw, gdy B zachowuje rozróżnialność zbioru A: t.j. dla dowolnych obiektów x, y U, jeśli x, y są rozróżnialne przez A, to są również rozróżnialne przez B B jest niezredukowalny: tzn. żaden właściwy podzbiór B nie zachowuje rozróżnialności zbioru A (t.j., B jest minimalny pod względem rozróżnialności) Nguyen Hung Son () 25 / 61
Definicja Definicja reduktu decyzyjnego Zbiór atrybutów B A nazywamy reduktem tablicy A wtw, gdy B zachowuje rozróżnialność zbioru A względem decyzji dec: t.j. dla dowolnych obiektów x, y U, jeśli dec(x) dec(y) i x, y są rozróżnialne przez A, to są również rozróżnialne przez B B jest niezredukowalny: tzn. żaden właściwy podzbiór B nie zachowuje rozróżnialności zbioru A (B jest minimalny pod względem rozróżnialności) Nguyen Hung Son () 26 / 61
Zbiór reduktów RED(S) = zbiór wszystkich reduktów tablicy decyzyjnej S; Jeśli S = (U, A {dec}) i A = n to RED(S) ( ) n n/2 rdzenie: zbiór atrybutów będących we wszystkich reduktach K = B RED(S) B Nguyen Hung Son () 27 / 61
Problemy obliczeniowe związane z reduktami Znaleźć rdzenie danej tablicy decyzyjnej; Znaleźć jakiś redukt; Znaleźć krótkie redukty; Znaleźć długie redukty; Nguyen Hung Son () 28 / 61
Spis treści 1 Wprowadzenie do teorii zbiorów przybliżonych Systemy informacyjne i tablice decyzyjne Redukty 2 Metody wnioskowań Boolowskich w szukaniu reduktów 3 Algorytmy heurystyczne dla problemu reduktu Heurystyka Johnsona Inne heurystyki 4 Systemy decyzyjne oparte o zbiory przybliżone Reguły decyzyjne Regułowe systemy decyzyjne Szukanie minimalnych reguł decyzyjnych Nguyen Hung Son () 29 / 61
Szkic metody 1 Konstrukcja funkcji odróżnialności: Zmienne boolowskie: atrybuty a 1,..., a k ; Klauzula: φ u,v = {a A : a(u) a(v)} Funkcja rozróżnialności: F S (a 1,..., a k ) = x,y U:dec(x) dec(y) φ x,y (a 1,..., a k ) Nguyen Hung Son () 30 / 61
Szkic metody 1 Konstrukcja funkcji odróżnialności: Zmienne boolowskie: atrybuty a 1,..., a k ; Klauzula: φ u,v = {a A : a(u) a(v)} Funkcja rozróżnialności: F S (a 1,..., a k ) = x,y U:dec(x) dec(y) φ x,y (a 1,..., a k ) 2 przekształcenie funkcji rozróżnialności do postaci DNF Nguyen Hung Son () 30 / 61
Szkic metody 1 Konstrukcja funkcji odróżnialności: Zmienne boolowskie: atrybuty a 1,..., a k ; Klauzula: φ u,v = {a A : a(u) a(v)} Funkcja rozróżnialności: F S (a 1,..., a k ) = x,y U:dec(x) dec(y) φ x,y (a 1,..., a k ) 2 przekształcenie funkcji rozróżnialności do postaci DNF 3 każdy implikant pierwszy odpowiada jednemu reduktowi; Nguyen Hung Son () 30 / 61
Przykład tablicy decyzyjnej Hurt. Jakość obsługi Jakość towaru Obok autostrady? Centrum? decyzja ID a 1 a 2 a 3 a 4 dec 1 dobra dobra nie nie strata 2 dobra dobra nie tak strata 3 bdb dobra nie nie zysk 4 slaba super nie nie zysk 5 slaba niska tak nie zysk 6 slaba niska tak tak strata 7 bdb niska tak tak zysk 8 dobra super nie nie strata 9 dobra niska tak nie zysk 10 slaba super tak nie zysk 11 dobra super tak tak zysk 12 bdb super nie tak zysk 13 bdb dobra tak nie? 14 slaba super nie tak? Nguyen Hung Son () 31 / 61
Macierz i funkcja odróżnialności M 1 2 6 8 3 a 1 a 1, a 4 a 1, a 2, a 3, a 4 a 1, a 2 4 a 1, a 2 a 1, a 2, a 4 a 2, a 3, a 4 a 1 5 a 1, a 2, a 3 a 1, a 2, a 3, a 4 a 4 a 1, a 2, a 3 7 a 1, a 2, a 3, a 4 a 1, a 2, a 3 a 1 a 1, a 2, a 3, a 4 9 a 2, a 3 a 2, a 3, a 4 a 1, a 4 a 2, a 3 10 a 1, a 2, a 3 a 1, a 2, a 3, a 4 a 2, a 4 a 1, a 3 11 a 2, a 3, a 4 a 2, a 3 a 1, a 2 a 3, a 4 12 a 1, a 2, a 4 a 1, a 2 a 1, a 2, a 3 a 1, a 4 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 ) Nguyen Hung Son () 32 / 61
Szukanie reduktów 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łaniania(t.j. p (p q) p): f = (α 1 )(α 4 )(α 2 α 3 ) Nguyen Hung Son () 33 / 61
Szukanie reduktów 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łaniania(t.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 Nguyen Hung Son () 33 / 61
Szukanie reduktów 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łaniania(t.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: R 1 = {A 1, A 2, A 4 } i R 2 = {A 1, A 3, A 4 } Nguyen Hung Son () 33 / 61
Spis treści 1 Wprowadzenie do teorii zbiorów przybliżonych Systemy informacyjne i tablice decyzyjne Redukty 2 Metody wnioskowań Boolowskich w szukaniu reduktów 3 Algorytmy heurystyczne dla problemu reduktu Heurystyka Johnsona Inne heurystyki 4 Systemy decyzyjne oparte o zbiory przybliżone Reguły decyzyjne Regułowe systemy decyzyjne Szukanie minimalnych reguł decyzyjnych Nguyen Hung Son () 34 / 61
Spis treści 1 Wprowadzenie do teorii zbiorów przybliżonych Systemy informacyjne i tablice decyzyjne Redukty 2 Metody wnioskowań Boolowskich w szukaniu reduktów 3 Algorytmy heurystyczne dla problemu reduktu Heurystyka Johnsona Inne heurystyki 4 Systemy decyzyjne oparte o zbiory przybliżone Reguły decyzyjne Regułowe systemy decyzyjne Szukanie minimalnych reguł decyzyjnych Nguyen Hung Son () 35 / 61
Heurystyka Johnsona: algorytm zachłanny Atrybut jest ważniejszy jeśli częściej występuje w klauzulach; Nguyen Hung Son () 36 / 61
Heurystyka Johnsona: algorytm zachłanny Atrybut jest ważniejszy jeśli częściej występuje w klauzulach; Selekcja: W każdym kroku wybierzmy atrybut, który najczęściej występuje w funkcji rozróżnialności; Nguyen Hung Son () 36 / 61
Heurystyka Johnsona: algorytm zachłanny Atrybut jest ważniejszy jeśli częściej występuje w klauzulach; Selekcja: W każdym kroku wybierzmy atrybut, który najczęściej występuje w funkcji rozróżnialności; Usuwanie: Usuwamy z tej funkcji te klauzule, które zawierają wybrany atrybut; Nguyen Hung Son () 36 / 61
Heurystyka Johnsona: algorytm zachłanny Atrybut jest ważniejszy jeśli częściej występuje w klauzulach; Selekcja: W każdym kroku wybierzmy atrybut, który najczęściej występuje w funkcji rozróżnialności; Usuwanie: Usuwamy z tej funkcji te klauzule, które zawierają wybrany atrybut; Powtarzamy Selekcja i Usuwanie dopóty, póki funkcja rozróżnialność zawiera jeszcze jakąś klazulę. Nguyen Hung Son () 36 / 61
Heurystyka zachłanna Heurystyka Johnsona 1 Znaleźć atrybut, który występuje najczęściej w macierzy rozróżnialności. 2 Usuwać wszystkie pola zawierające wybrany atrybut 3 Powtarzamy dopóki wszystkie pola macierzy są puste Nguyen Hung Son () 37 / 61
Przykład działania M 1 2 6 8 3 a 1 a 1, a 4 a 1, a 2, a 3, a 4 a 1, a 2 4 a 1, a 2 a 1, a 2, a 4 a 2, a 3, a 4 a 1 5 a 1, a 2, a 3 a 1, a 2, a 3, a 4 a 4 a 1, a 2, a 3 7 a 1, a 2, a 3, a 4 a 1, a 2, a 3 a 1 a 1, a 2, a 3, a 4 9 a 2, a 3 a 2, a 3, a 4 a 1, a 4 a 2, a 3 10 a 1, a 2, a 3 a 1, a 2, a 3, a 4 a 2, a 4 a 1, a 3 11 a 2, a 3, a 4 a 2, a 3 a 1, a 2 a 3, a 4 12 a 1, a 2, a 4 a 1, a 2 a 1, a 2, a 3 a 1, a 4 W macierzy nierozróznialności z poprzedniego przykładu a 1 - występuje 23 razy a 2 - występuje 23 razy a 3 - występuje 18 razy a 4 - występuje 16 razy Jeśli wybieramy a 1, to po usunięciu pól zawierających a 1 zostało 9 niepustych pól macierzy nierozróżnialności. Wśród nich: a 2 - występuje 7 razy a 3 - występuje 7 razy a 4 - występuje 6 razy Jeśli wybieramy tym razem a 2 to zostały 2 niepuste pola i wśród nich a 4 jest zdecydowanym faworytem. Możemy dostać w ten sposób redukt: R 1 = {a 1, a 2, a 4 }. Nguyen Hung Son () 38 / 61
Jak dobra jest heurystyka Johnsona? Niech X = {(u, v) U 2 : dec(u) dec(v)}; Niech S ai = {(u, v) X : a i (u) a i (v)}; Niech C A będzie minimalnym reduktem, lecz C = {a 1,..., a k } będzie reduktem znalezionym przez heurystykę Johnsona; Załóżmy, że heurystyka Johnsona musi płacić 1zł za każdym razem, gdy dodała a i do C. Rozłóżmy ten koszt tym elementom, które zostały po raz pierwszy pokryte przez zbiór S ai Niech c x = koszt ponoszony przez x. Jeśli x jest pokryty po raz pierwszy przez a i, to c x = 1 S ai (S a1... S ai 1 ) Nguyen Hung Son () 39 / 61
Jak dobra jest heurystyka Johnsona? Heurystyka Johnsona ponosi łączny koszt = C. Mamy C = c x x X c x a C x S a Gdybyśmy pokazali, że dla dowolnego altrybutu a A x S a c x H( S a ) gdzie H(n) = n 1 i=1 i, wówczas możemy oszacować dalej: C c x C H(max{ S a : a A }) a C x S a C H( X ) C ln( X + 1) Nguyen Hung Son () 40 / 61
Lemat Dla dowolnego altrybutu a A Dowód: x S a c x H( S a ) Niech u i = S a (S a1... S ai 1 ), mamy: u 0 = S a... u i 1 u i... u k = 0; gdzie k jest najmniejszym indeksem t., że S a = S a1... S ak Zatem k c x = (u i 1 u i ) x S a i=0 k (u i 1 u i ) i=0 1 S ai (S a1... S ai 1 ) 1 u i 1 k (H(u i 1 ) H(u i )) = H( S a ) i=0 Nguyen Hung Son () 41 / 61
Spis treści 1 Wprowadzenie do teorii zbiorów przybliżonych Systemy informacyjne i tablice decyzyjne Redukty 2 Metody wnioskowań Boolowskich w szukaniu reduktów 3 Algorytmy heurystyczne dla problemu reduktu Heurystyka Johnsona Inne heurystyki 4 Systemy decyzyjne oparte o zbiory przybliżone Reguły decyzyjne Regułowe systemy decyzyjne Szukanie minimalnych reguł decyzyjnych Nguyen Hung Son () 42 / 61
Inne heurystyki do szukania implikantów pierwszych ILP (Integer Linear Program) Symulowane wyżarzanie (simulated annealing) Algorytmy genetyczne SAT solver??? Nguyen Hung Son () 43 / 61
ILP Dana jest funkcja f : {0, 1} n {0, 1} zapisana w postaci CNF za pomocą zmiennych x 1,..., x n 1 Utwórz nowe zmienne {y 1,..., y 2n } odpowiadające literałom x 1, x 1,..., x n, x n ; 2 Dla każdej zmiennej x i, utwórzmy nierówność y 2i 1 + y 2i 1 3 Zamień każdą klausulę ω i = (l i1... l ini ) na nierówność y i1 +... + y ini 1; 4 Utwórzmy układ nierówności z poprzednich punktów: Ay b 5 Zagadnienie programowania liniowego liczb całkowitych (ILP) jest definiowane jako problem szukania n min y i przy ograniczeniu: Ay b. i=1 Nguyen Hung Son () 44 / 61
Spis treści 1 Wprowadzenie do teorii zbiorów przybliżonych Systemy informacyjne i tablice decyzyjne Redukty 2 Metody wnioskowań Boolowskich w szukaniu reduktów 3 Algorytmy heurystyczne dla problemu reduktu Heurystyka Johnsona Inne heurystyki 4 Systemy decyzyjne oparte o zbiory przybliżone Reguły decyzyjne Regułowe systemy decyzyjne Szukanie minimalnych reguł decyzyjnych Nguyen Hung Son () 45 / 61
Spis treści 1 Wprowadzenie do teorii zbiorów przybliżonych Systemy informacyjne i tablice decyzyjne Redukty 2 Metody wnioskowań Boolowskich w szukaniu reduktów 3 Algorytmy heurystyczne dla problemu reduktu Heurystyka Johnsona Inne heurystyki 4 Systemy decyzyjne oparte o zbiory przybliżone Reguły decyzyjne Regułowe systemy decyzyjne Szukanie minimalnych reguł decyzyjnych Nguyen Hung Son () 46 / 61
description language (język deskryptorów) Let A be a set of attributes. The description language for A is a triple where L(A) = (D, {,, }, F) D is a called the set of descriptors D = {(a = v) : a A and v V al a } {,, } is a set of standard Boolean operators F is a set of boolean expressions defined on D called formulas. For any B A we denote by D B the set of descriptors restricted to B where D B = {(a = v) : a B and v V al a } We also denote by F B the set of formulas build from D B. Nguyen Hung Son () 47 / 61
Semantyka w systemach informacyjnych The semantics Let S = (U, A) be an information table describing a sample U X. The semantics of any formula φ F, denoted by [[φ]] S, is defined by induction as follows: [[(a = v)]] S = {x U : a(x) = v} (1) [[φ 1 φ 2 ]] S = [[φ 1 ]] S [[φ 2 ]] S (2) [[φ 1 φ 2 ]] S = [[φ 1 ]] S [[φ 2 ]] S (3) [[ φ]] S = U \ [[φ]] S (4) We associate with every formula φ the following numeric features: length(φ) = the number of descriptors that occur in φ; support(φ) = [[φ]] S = the number of objects that match the formula; Nguyen Hung Son () 48 / 61
Reguły decyzyjne Definicja reguł decyzyjnych Let S = {U, A {dec}} be a decision table. Any implication of a form φ δ where φ F A and δ F dec, is called the decision rule in S. The formula φ is called the premise of the decision rule r and δ is called the consequence of r. We denote the premise and the consequence of the decision rule r by prev(r) and cons(r), respectively. Nguyen Hung Son () 49 / 61
reguły... Generic decision rule The decision rule r whose the premise is a boolean monomial of descriptors, i.e., r (a i1 = v 1 )... (a im = v m ) (dec = k) (5) is called the generic decision rule. We will consider generic decision rules only. For a simplification, we will talk about decision rules keeping in mind the generic ones. Nguyen Hung Son () 50 / 61
Reguły... Every decision rule r of the form (5) can be characterized by the following featured: length(r) = the number of descriptor on the assumption of r (i.e. the left hand side of implication) [r] = the carrier of r, i.e. the set of objects from U satisfying the assumption of r support(r) = the number of objects satisfying the assumption of r: support(r) = card([r]) confidence(r) = the confidence of r: confidence(r) = [r] DEC k [r] The decision rule r is called consistent with A if confidence(r) = 1 Nguyen Hung Son () 51 / 61
Minimalne reguły minimal consistent rules For a given decision table S = (U, A {dec}), the consistent rule: r = φ (dec = k) is called the minimal consistent decision rule if any decision rule φ (dec = k) where φ is a shortening of φ is not consistent with S. Nguyen Hung Son () 52 / 61
Spis treści 1 Wprowadzenie do teorii zbiorów przybliżonych Systemy informacyjne i tablice decyzyjne Redukty 2 Metody wnioskowań Boolowskich w szukaniu reduktów 3 Algorytmy heurystyczne dla problemu reduktu Heurystyka Johnsona Inne heurystyki 4 Systemy decyzyjne oparte o zbiory przybliżone Reguły decyzyjne Regułowe systemy decyzyjne Szukanie minimalnych reguł decyzyjnych Nguyen Hung Son () 53 / 61
Ogólne metody Any rule based classification method consists of three phases : 1 Learning phase: generates a set of decision rules RU LES(A) from a given decision table A. 2 Rule selection phase: selects from RU LES(A) the set of such rules that can be supported by x. We denote this set by M atchrules(a, x). 3 Classifying phase: makes a decision for x using some voting algorithm for decision rules from M atchrules(a, x) with respect to the following cases: 1 If MatchRules(A, x) is empty: the decision for x is UNKNOW N, i.e. we have no idea how to classify x; 2 If M atchrules(a, x) consists of decision rules for the same decision class, say k th decision class: in this case dec(x) = k; 3 If M atchrules(a, x) consists of decision rules for the different decision classes: in this case the decision for x should be made using some voting algorithm for decision rules from M atchrules(a, x). Nguyen Hung Son () 54 / 61
Filtrowanie reguł Every set of rules determines a rough approximation of the given concept via the conflict solver; The quality of rules is estimated by training data set - a finite sample of the whole universe; Conflict solving = elimination of noisy and mistakes caused by abnormal rules! Not every rule, which is compatible with the training data set, is also compatible with the universe; It is better to eliminate abnormal rules according to the domain knowledge; Nguyen Hung Son () 55 / 61
Filtering approach supervised methods of filtering: according to rule support; according to the class coverage ratio of rules; according to rule length; by coverage algorithm: e.g., LEM2 method Nguyen Hung Son () 56 / 61
Spis treści 1 Wprowadzenie do teorii zbiorów przybliżonych Systemy informacyjne i tablice decyzyjne Redukty 2 Metody wnioskowań Boolowskich w szukaniu reduktów 3 Algorytmy heurystyczne dla problemu reduktu Heurystyka Johnsona Inne heurystyki 4 Systemy decyzyjne oparte o zbiory przybliżone Reguły decyzyjne Regułowe systemy decyzyjne Szukanie minimalnych reguł decyzyjnych Nguyen Hung Son () 57 / 61
Metoda Oparta o Wnioskowanie Boolowskie Każda reguła powstaje poprzez skracanie opisu jakiegoś obiektu. Redukty lokalne Te same heurystyki dla reduktów decyzyjnych. Nguyen Hung Son () 58 / 61
Przykład tablicy decyzyjnej Hurt. Jakość obsługi Jakość towaru Obok autostrady? Centrum? decyzja ID a 1 a 2 a 3 a 4 dec 1 dobra dobra nie nie strata 2 dobra dobra nie tak strata 3 bdb dobra nie nie zysk 4 slaba super nie nie zysk 5 slaba niska tak nie zysk 6 slaba niska tak tak strata 7 bdb niska tak tak zysk 8 dobra super nie nie strata 9 dobra niska tak nie zysk 10 slaba super tak nie zysk 11 dobra super tak tak zysk 12 bdb super nie tak zysk 13 bdb dobra tak nie? 14 slaba super nie tak? Nguyen Hung Son () 59 / 61
Macierz i funkcja lokalnych odróżnialności M 1 2 6 8 3 a 1 a 1, a 4 a 1, a 2, a 3, a 4 a 1, a 2 4 a 1, a 2 a 1, a 2, a 4 a 2, a 3, a 4 a 1 5 a 1, a 2, a 3 a 1, a 2, a 3, a 4 a 4 a 1, a 2, a 3 7 a 1, a 2, a 3, a 4 a 1, a 2, a 3 a 1 a 1, a 2, a 3, a 4 9 a 2, a 3 a 2, a 3, a 4 a 1, a 4 a 2, a 3 10 a 1, a 2, a 3 a 1, a 2, a 3, a 4 a 2, a 4 a 1, a 3 11 a 2, a 3, a 4 a 2, a 3 a 1, a 2 a 3, a 4 12 a 1, a 2, a 4 a 1, a 2 a 1, a 2, a 3 a 1, a 4 f u3 = (α 1 )(α 1 α 4 )(α 1 α 2 α 3 α 4 )(α 1 α 2 ) = α 1 Reguły: (a 1 = bdb) = dec = zysk Nguyen Hung Son () 60 / 61
Macierz i funkcja lokalnych odróżnialności M 1 2 6 8 3 a 1 a 1, a 4 a 1, a 2, a 3, a 4 a 1, a 2 4 a 1, a 2 a 1, a 2, a 4 a 2, a 3, a 4 a 1 5 a 1, a 2, a 3 a 1, a 2, a 3, a 4 a 4 a 1, a 2, a 3 7 a 1, a 2, a 3, a 4 a 1, a 2, a 3 a 1 a 1, a 2, a 3, a 4 9 a 2, a 3 a 2, a 3, a 4 a 1, a 4 a 2, a 3 10 a 1, a 2, a 3 a 1, a 2, a 3, a 4 a 2, a 4 a 1, a 3 11 a 2, a 3, a 4 a 2, a 3 a 1, a 2 a 3, a 4 12 a 1, a 2, a 4 a 1, a 2 a 1, a 2, a 3 a 1, a 4 f u8 = (α 1 α 2 )(α 1 )(α 1 α 2 α 3 )(α 1 α 2 α 3 α 4 )(α 2 α 3 ) (α 1 α 3 )(α 3 α 4 )(α 1 α 4 ) = α 1 (α 2 α 3 )(α 3 α 4 ) = α 1 α 3 α 1 α 2 α 4 Reguły: (a 1 = dobra) (a 3 = nie) = dec = strata (a 1 = dobra) (a 2 = super) (a 4 = nie) = dec = strata Nguyen Hung Son () 61 / 61