420 likes | 712 Views
Inżynieria Wiedzy Część 2. Prof. dr hab. Wiesław Traczyk traczyk@ia.pw.edu.pl Konsultacje – środa, 15:00..16:00, p.523. Lato 2007. 3. WNIOSKOWANIE NA PODSTAWIE REGUŁ. Ogólne zasady wnioskowania Reguły wnioskowania
E N D
Inżynieria WiedzyCzęść 2 Prof. dr hab. Wiesław Traczyk traczyk@ia.pw.edu.pl Konsultacje – środa, 15:00..16:00, p.523 Lato 2007
3. WNIOSKOWANIE NA PODSTAWIE REGUŁ • Ogólne zasady wnioskowania • Reguły wnioskowania Reguła wnioskowania (dowodzenia) to sposób uzyskiwania wniosku z przesłanek . Typowe przykłady to • - modus ponens • - modus tollens • rezolucja • - sylogizm hipotetyczny IW - 2007
A. Ogólne zasady wnioskowania b. Warianty „modus ponens” 1. Rozbudowane składniki czyli oraz 2. Uzgadnianie zmiennych Elementy przesłanki (poprzedniki i fakty) można sprowadzić do identycznej postaci przez podstawienie termu w miejsce zmiennej: = x|t, = [x1|t1, x2|t2,…] = [1, 2,…] Wynik podstawienia w to konkretyzacja . Podstawienie uzgadnia (unifikuje) 1 i 2 jeśli 1 = 2 ( to unifikator) IW - 2007
A. Ogólne zasady wnioskowania Podstawiać w miejsce zmiennych można tylko termy, więc P(x) = P(A) przy = x|A, ale P(A) i P(B) nie mają unifikatora. Dla {P(A,x,y), P(v,w,C)} unifikatorem jest np. P(A,B,C) ale najbardziej ogólny unifikator to P(A,x,C). Prosta metoda poszukiwania unifikatora polega na kolejnym uzgadnianiu argumentów stwierdzenia, więc dla Q(x,f(x),A) i Q(u,w,w) unifikatorem będzie - ? Nowa postać modus ponens: 3. Podobieństwo warunków i faktów IW - 2007
A. Ogólne zasady wnioskowania 4. Współczynniki oceny ,, - prawdopodobieństwo, - pewność, - ufność, - ważność, - adekwatność, … Np. - „przetrwam 1-szy rok”, - „skończę studia”, = 0,8, = 0,6, = ? 5. Propagacje hipotez IW - 2007
A. Ogólne zasady wnioskowania c. Wnioskowanie dedukcyjne Ogólna reguła wnioskowania to gdzie W – zbiór reguł, aksjomatów, wiedza, F - dane pierwotne, fakty, F’ – dane wtórne, pochodne, wnioski. Można z nich zestawić łańcuch: W,F0W,F0,F1W,F0,F1,…,Fk-1 F1 F2Fk nazywany wnioskowaniem dedukcyjnym – Fkwyprowadzalne (wynika syntaktycznie) z F0 - i oznaczany przez F0|- Fk, albo {F0, W} |- Fk. |- to relacja dowodliwości, |- F - twierdzenie, asercja,wynikanie z aksjomatów. W, F F’ Np. F = {Parzysta(2)}, W = {Parzysta(x) Parzysta(x+2)} P(x) P(x+2), P(2) , P(x) P(x+2),P(4) , …. P(4) P(6) IW - 2007
A. Ogólne zasady wnioskowania Można też postawić problem odwrotny: F = {Parzysta(2)}, W = {Parzysta(x+2) Parzysta(x)}, C = Parzysta(6)? C określa cel wnioskowania (hipotezę), a ogólna reguła ma postać: W,F’,C F Np. P(x+2) P(x), P(2), P(6)?P(x+2) P(x),P(2), P(4)?P(2), P(2)? P(4)? P(2)? T Wynikanie syntaktyczne zastępuje trudniejsze do zautomatyzowania wynikanie semantyczne, powstaje więc pytanie, czy to co wynika semantycznie wynika również syntaktycznie (i odwrotnie): (F |= C) (F |- C) ? twierdzenie o pełności reguł wnioskowania twierdzenie o poprawności reguł wnioskowania IW - 2007
B. Metody wnioskowania dedukcyjnego • Wnioskowanie na podstawie faktów • (danych, w przód, wstępujące, data driven, forward) • Ogólny schemat: {W, F} |-mpC, gdzie • W = { |, - wyrażenia logiczne} – zbiór reguł, wiedza, • F = {p|I[p]= T} - fakty, stwierdzenia podstawowe (bez zmiennych), • C – cel, hipoteza; zwykle stwierdzenie lub wyrażenie logiczne. • Typowe zadania: • Jakie są skutki (wnioski) C faktów F ? • F = {„nie zgłoszę tematu projektu przed 18.IV”, „zaliczę kolokwia”} • Jakie są powodyC faktów F ? • F = {„silnik rzęzi”, „silnik gaśnie”, …} • Czy to prawda, że C gdy znamy F ? • C = {„uszkodzone odchylanie pionowe”}, • F = {„poziome fale na ekranie”}. IW - 2007
B. Metody wnioskowania dedukcyjnego a1. Rozszerzanie zbioru danych D0=Fp; Di, W i = 0, 1, …, k Di+ Di+1= Di Di+ [ Fia], C Dk+ Dk C D0 P(A) P(x) Q(x,y) V(x,y) Q(A,B) P(A) R(x) W(x) R(B) V(u,v) W(v) S Z(u,v) S V(A,B) W(B) Z(A,B) F (D0) W D0+ C (D1+) IW - 2007
B. Metody wnioskowania dedukcyjnego a2. Modyfikowanie zbioru danych D0=Fp; Di, W i = 0, 1, …, k Di+,Di- Di+1= (Di –Di-) Di+ [ Fia], C Dk+ Dk C D0 1 4 Np. Obliczanie obwodów elektrycznych E(z,x,y) – element o impedancji z między węzłami x i y K(x,n) – krotność rozgałęzienia x wynosi n A(x) – zmniejsz o 1 krotność rozgałęzienia x 2 3 r1. K(x,2) E(z1,w,x) E(z2,x,y) E+(z1+z2,w,y) E-(z1,w,x) E-(z2,x,y) K-( x,2) r2. E(z1,x,y) E(z2,x,y) E+(Z1,2,x,y) E-(z1,x,y) E-(z2,x,y) A(x) A(y) IW - 2007
B. Metody wnioskowania dedukcyjnego • b. Wnioskowanie na podstawie celu • (wstecz, zstępujące, backward, goal driven) • Model: {C,W} |- F albo {C,W,F} |- T. • Typowe zadania: • Dla jakich F zachodzi C ? • C = {„uzyskam wysoki kredyt”} • Czy to prawda, że C gdy F ? • C0= C, D0 = F (albo ), Ci,Di,W, i=0,1,…,k • Ci+1,Pti • Di+1= Di OdiCk,Dk,W • • Ci+1 – podcele, Pt – pytania, Od – odpowiedzi. IW - 2007
B. Metody wnioskowania dedukcyjnego • Komentarz • Wykonuje się procedurę potwierdzenia [pod]celu przez • a. uzgadnianie z faktami, • b. uzgadnianie z konkluzjami reguł, • c. pytanie użytkownika lub źródeł zewnętrznych. • Gdy próba nieudana – nawrót. • 2. Gdy w1b kilka możliwości – wybiera się strategię przeszukiwania. • Wyniki uzgodnień przenosi się w przód, potwierdzając cel. Np. P(A) Z(x,y) V(x,y) P(x) Q(x,y) S W(x) P(A) R(x) Z(u,v) (W(v) S) V(u,v) F C W IW - 2007
B. Metody wnioskowania dedukcyjnego Np. Dowodzenie nierówności: udowodnić, że gdy A,B,D > 0i C > D, jeśli wiadomo, że r1 x > 0 y > 0 xy > 0 r2 x >0 y > z x + y > z r3 x > 0 y > z xy > xz r4 x > wy y > 0 x/y > w Często wynik zależy od kolejności podstawień, trzeba więc rozważać różne warianty albo dodać uogólniające reguły. • Wnioskowanie dwukierunkowe • - póki można, potem - , • - gdy nowe fakty, - okresowo lub wg potrzeb. IW - 2007
C. Wnioskowanie rezolucyjne • Podstawy • Zbiór formuł jest niespełnialny gdy żadna interpretacja i wartościowanie nie zapewnia prawdziwości wszystkich formuł zbioru, czyli • Iv i Iv[] = T • Jeśli jest spełnialny (prawdziwy przy jakichś Iv), oraz |- H, • to zbiór {, H} też jest spełnialny, natomiast {, H} jest niespełnialny. • Tak więc, aby wykazać, że przy spełnionym zachodzi |- H, trzeba • wykazać, że {, H} jest niespełnialne. Twierdzenie o zaprzeczeniowej pełności rezolucji: Jeśli zbiór klauzul K jest niespełnialny, to istnieje rezolucyjny wywód klauzuli pustej z K, i odwrotnie: Kniesp (K |- ) gdyż P, P IW - 2007
C. Wnioskowanie rezolucyjne Zasada falsyfikacji (zaprzeczania) , {, H} |-rez H Reguła rezolucji p , p p , p’ , p = p’ Faktoryzacja gdy p = p’ to p p’ = p. Przykłady: 1. Niektórzy wegetarianie lubią wszelkie warzywa, ale wszyscy wegetarianie nie cierpią glątw. Chyba glątwy nie są warzywami… 2. : x P(x) Q(x) R(x) y P(y) S(y) H: zR(z) S(z) Zazwyczaj istnieje kilka możliwości – potrzebna strategia postępowania. IW - 2007
C. Wnioskowanie rezolucyjne b. Rezolucja w Prologu Dopuszczalne tylko klauzule Horna – zawierające najwyżej jeden literał pozytywny i odpowiadające najprostszej regule produkcji: p1 p2 … pn q czyli q p1 p2 … pn.. Typowe oznaczenia: - rachunek predykatów Predykat(STAŁA,Funkcja(zmienna)) - Prolog :- , ;not predykat(stała, funkcja(Zmienna)) Trzy rodzaje klauzul: q :- p1, p2,…, pn. - reguła q. - fakt, asercja ? – p1, p2, …, pm. - pytanie, opis celu IW - 2007
C. Wnioskowanie rezolucyjne Przykład abstrakcyjny: C: ?- Q. W: Q’ :- P1, P2. Q’’ :- R1, R2. P1 :- P3. P2 :- P4. R1’:- R3. F: P3. R2. R3. Strategie przeszukiwania: wszerz, w głąb. Ważna kolejność stwierdzeń: np. „Ile zarabia żona prezydenta?” ?- zarobki(X,Y), żona(Y,Z), prezydent(Z). czy ?- prezydent(Z), żona(Y,Z), zarobki(X,Y). IW - 2007
C. Wnioskowanie rezolucyjne Przykład praktyczny: informacje o lotach W: połączenie(Start, Cel, Czas-odlotu, Czas-przylotu, Nr-lotu) :- rozkład-lotów(Start, Cel, Czas-odlotu, Czas-przylotu, Nr-lotu). F: rozkład-lotów(wwa, med, 09:20, 11:20, LO231). rozkład-lotów(wwa, med, 14:10, 16:10, AL121). rozkład-lotów(wwa, rom, 07:30, 10:40, LO218). „Jakie są połączenia Warszawy z Mediolanem?” ?- połączenia(wwa, med., Czo, Czp, Nrl). ?- rozkład-lotów(wwa, med, Czo, Czp, Nrl). Czo = 09:20, Czp= 11:20, Nrl = Lo231; Czo = 14:10, Czp = 16:10, Nrl = AL121; no; „Dokąd lecą samoloty z Warszawy?” ?- połączenie(wwa, Cel, -, -, -). Cel = med, Cel = rom, … Łatwe rozszerzenia: pora dnia, dzień tygodnia, trasy łączone itd. IW - 2007
C. Wnioskowanie rezolucyjne Uwzględnienie pory dnia: połączenie(Start, Cel, Czas-odlotu, Czas-przylotu, Pora,Nr-lotu) :- rozkład-lotów(Start, Cel, Czas-odlotu, Czas-przylotu, Nr-lotu), pora-dnia(Czas-odlotu, Pora). pora-dnia(Czas-odlotu, rano) :- pora-dnia(G:M, rano), G < 10. pora-dnia(Czas-odlotu, środek dnia) :- ….. Trasy łączone: połączenie(Start, Cel, Czas-odlotu, Czas-przylotu, -) :- połączenie(Start, Przesiadka, …), połaczenie(Przesiadka, Cel, ….). IW - 2007
D. Proste oceny pewności Typowy przypadek – różne oceny tych samych konkluzji: p1 p2 1q, p1 p3 2q, p1, p2, p3 q ( ) ( ) Agregacja ocen: = f(1, 2). Wartości współczynników z przedziału: [0, 1], {1,2,…,10}, [0, 100] albo [-1, 1], {-10. -9,…,9, 10}, [-100, 100] „Zatrzask” – dominacja wartości ekstremalnych: f(min, x) = min, f(max, x) = max IW - 2007
D. Proste oceny pewności Metody agregacji a. Wartość średnia = (1 + 2)/2 np. „makler A poleca akcje Z” „kup akcje Z” (1 = 60), „makler B poleca akcje Z” „kup akcje Z” (2= 90), „kup akcje Z” ( = 75). b. Iloczyn = 1.2 np. „są kłopoty z gaźnikiem” „warto kupić” (1= 60), „są kłopoty z zapłonem” „warto kupić” (2= 90), „warto kupić” ( = 54). c. Suma unormowana = 1 + 2 - 1.2 np. „stan jest dobry” „warto kupić” (1 = 60), „cena jest przystępna” „warto kupić” (2= 90), „warto kupić” ( = 96). d. Suma (wartość przyrostowa) = 1 + 2 lepiej niż a i silniej niż c uwzględnia liczbę ocen. IW - 2007
D. Proste oceny pewności Przykłady 1. Wybór żony r1. „x jest ograniczona” „wybierz x” r2. mądra r3. genialna r4. „x jest brzydka” „wybierz x” r5. ładna r6. „x gotuje źle” „wybierz x” r7. dobrze r8. wspaniale • = 1 9 7 2 8 0 5 10 „wybierz x” ( > 7) (’ = 9) „oświadcz się pannie x” IW - 2007
D. Proste oceny pewności 2. Wybór samochodu r11. „cena jest istotna” „fiat126p” (20), „polonez” (5), r12. „cena bez znaczenia” „fiat126p” (-90), „polonez” (10), r21. „wielkość jest ważna” „fiat126p” (0), „polonez” (25), r22. „wielkość jest bardzo ważna” „fiat126p” (-20), „polonez” (35). r11, r21 – „a” – „fiat126p” (10), „polonez” (15), r11, r22 – „a” - (0), (20), … IW - 2007
4. REGUŁOWE SYSTEMY EKSPERCKIE A. Struktury i rodzaje systemów eksperckich System ekspercki to program komputerowy, wykonujący zadania o dużych wymaganiach intelektualnych tak dobrze jak człowiek – ekspert w określonej dziedzinie. Struktura podstawowa: INTERFEJS UŻYTKOWNIKA BAZA DANYCH KONTROLA POPRAWNOŚCI UŻYTKOWNIK GENERATOR WYJAŚNIEŃ MASZYNA WNIOSKUJĄCA OBLICZENIA STEROWANIE EDYTOR BAZA WIEDZY INŻ. WIEDZY INTERFEJS BD Proc. Sieć SN IW - 2007
A. Struktury i rodzaje systemów eksperckich Struktura tablicowa ŹRÓDŁO WIEDZY 1 ŹRÓDŁO WIEDZY 2 TABLICA SZKOLNA ŹRÓDŁO WIEDZY k STEROWANIE Cechy SE: - operują na tekstach, liczbach, obrazach, - wyspecjalizowane, - elastyczne, - pytają, wyjaśniają, radzą, - mają „inteligencję”. IW - 2007
A. Struktury i rodzaje systemów eksperckich Współpraca z otoczeniem: SE SE SE SE SE SE autonomiczny nadzorczy wbudowany rozproszony Środki do budowania SE: - języki popularne (C++, Java), - języki sztucznej inteligencji (Prolog, Lisp), - języki specjalizowane (OPS5, ART, KES), - systemy szkieletowe IW - 2007
B. Przykłady systemów szkieletowych • EXSYS Developer • Podstawowe składniki reprezentacji: • pytania, zmienne i wyrażenia, cele – reguły. • Np. Q. Kwiat ma kształt – kieliszka • - spodka • V. Jaka jest średnica (w cm)? • G. To jest tulipan. • To jest konwalia. • R. IF Kwiat ma kształt –kieliszka • AND Średnica > 3 AND Średnica < 5 • THEN To jest tulipan Conf = 10 Przy Średnica = 2 będzie To jest tulipan Conf = 6 To jest konwalia Conf = 5 IW - 2007
B. Przykłady systemów szkieletowych Po IF: Q, Ex, Gconf, po THEN: G, Q, przypisania. Tryby ufności: T/F, podstawowe, Custom design, Fuzzy. Derivation mode: - badaj wszystkie, - stop po pierwszym wyniku, - badaj nienadmiarowe. Konfiguracje: BACKWARD - w kolejności nr celów, FORWARD - w kolejności nr reguł, FORWARD NOBACKWARD – uporządkowane reguły, FINALPASS - w przód, pozostałe reguły. Ponadto: Rozkazy, tablice, ramy, badanie poprawności, raporty, odwołania do baz danych itp.. IW - 2007
Projekt Projekt musi zawierać: - reguły (nie drzewa !), - co najmniej 2 poziomy, - zmienne [i wyrażenia arytm.], - jeden z podstawowych wsp. ufności. Wielkość nie jest ważna ! Raport (papier + dyskietka, w przezroczystej kopercie) musi zawierać: A. Opis problemu B. Uzasadnienie wyboru parametrów [C. Przykłady ciekawszych reguł] D. Wnioski IW - 2007
B. Przykłady systemów szkieletowych • PC-Shell • Elementarne reprezentacje – agregaty: • a(o) liczba, a(o) = „nazwa” zmienna, a = „nazwa”, (także –bez o) • Np. facts (- moduły) • obrót(nasza-firma) = 300000 • zabezpieczenie(nasza-firma) = „bardzo dobre” • not sytuacja kryzysowa • end; • Reguły: [nr:] wynik if war1, war2,… (także i &) • Np. rules • decyzja = „przyznać kredyt” • if (gwarancje = „dostateczne” sytuacja = dobra) & zarobki > 3000; • end; • Wnioskowanie – wstecz, oceny pewności – brak. • Dodatkowo: struktura tablicowa, współpraca z BD siecią neuronową. IW - 2007
B. Przykłady systemów szkieletowych c. Jess Wykorzystuje listy, z nazwą lub symbolem predykatu na początku (jak Clips). Typowe definicje: Jess > (deffunction max(?a,?b) (if (> ?a ?b) then ?a else ?b)) Jess > (deffact (pracownik „Kowalski” mężczyzna 35)) albo Jess > (deffact (pracownik(nazwisko „Kowalski”)(wiek 35)(płeć M)) Jess > (defrule przykład 1 (pracownik (nazwisko ?x)(wiek ?y)) (and) (test (> ?y 30) => (printout t „Ale stary ten ?x!” crlf )) IW - 2007
C. Przykłady zastosowań SE CLIPS (60) – statki kosmiczne (Apollo,…) DENDRAL (65) – spektrogram, struktura chemiczna substancji MACSYMA (68) – problemy matematyczne MYCIN (72) – infekcje bakteryjne PROSPECTOR (74) – geologia INTERNIST (75) – 100 000 przypadków XCON (80) – konfiguracja komputerów VAX 1997: finanse, interesy 41 produkcja, projektowanie 35 medycyna 21 środowisko 13 Lokalne: komisja dysc., choroby stóp, wybór środowiska,… (toksyk.) IW - 2007
5. TABLICE I DRZEWA DECYZYJNE • Tablice decyzyjne • Pochodzenie • np. baza danych upraw polowych Pomijając atrybut „właściciel” i wybierając wiersze „plon” = „wysoki” można uzyskać ważne informacje o zależności atrybutu x od pozostałych. Tworzy to tablicę decyzyjną z atrybutami warunkowymi c i decyzyjnymi d: Każdy wiersz tablicy odpowiada regule (pesymistycznej): i. (c1=v1i) (c2=v2i) … (d1=w1i) (d2=w2i) … IW - 2007
A. Tablice decyzyjne b. Wielowarstwowość Rozważmy TD określającą warunki przyznawania kredytu: Prosta transformacja na reguły daje 36=769 reguł o 6 warunkach. Lepiej zgrupować atrybuty pierwotnew sensowne atrybuty pośrednie, np. „gwarancje kredytowe”(3), „stopień ryzyka” (3), „sytuacja finansowa”(3): 3 3 3 32 = 27 reguł o 2 warunkach 33 = 27 reguł o 3 warunkach razem – 54 reguły 3 5 razem – 769 reguł 5 IW - 2007
A. Tablice decyzyjne c. Upraszczanie wyników Zwykle zbiór reguł można uprościć. Tu – zamiast 8 reguł o 4 warunkach można wybrać 3 atrybuty, co daje 6 reguł o 2 warunkach: 1,5 (c2=x) (c3=) (d=T) 2,4 (c1=0) (c3 =) (d=N) itd., albo 3 reguły dla d=T i (d=T) (d=N), albo 1 regułę złożoną i negację jw., albo 1 regułę decyzyjną z else. Wariant z 4-ma atrybutami: 1,5 - j.w. 6,7 - (c1=1) (c4=B) (d=T) (d=T) (d=N), IW - 2007
A. Tablice decyzyjne Problem komplikują ciągłe wartości atrybutów: Jedna z metod: 1. Założyć punkty separujące wartości ci: c1: 2 12 16 20 x1 x2 x3 c2: 45 52 66 74 y1 y2 y3 2. Wyznaczyć warunki rozróżnialności uii uj: (1,3) = x1 y1 y2 y3, (1,4) = x1 x2 y2 y3, itd. 3. Wyliczyć warianty separowalności: E = (1,3) (1.4) … = = (y2 x3) (y2 y3 x2) … Założenie o reprezentowalności! IW - 2007
A. Tablice decyzyjne Dla x3 = 18 i y2 = 59 (środki przedziałów)ustala się nowe zmienne, np: c1 = 0 gdy c1 18 i c2 = 0 gdy c2 59 uzyskując nową tabelę, z której wynika, że (c1 18) (c2 > 59) (d = A) (c1 18) (c2 59) (d = B) (c1 > 18) (c2 > 59) (d = C) Atrybuty dyskretne mogą pomóc w separacji. Wykorzystywane tu relacje o postaci c V to tzw. selektory. IW - 2007
A. Tablice decyzyjne d. Sprzeczności U C D Może się zdarzyć, że jednakowym warunkom odpowiadają różne decyzje. Nierozróżnialność: IND(C*) = {(u, u’) cC* c(u) = c(u’)}, C* C. Takie pary tworzą klasy równoważności [u]C*. Zbiór X U (np. wierszy o identycznych decyzjach w) można aproksymować: [u] C* _ C* X - aproksymacja dolna - aproksymacja górna C* IW - 2007
A. Tablice decyzyjne C-brzeg zbioru X C-dokładność aproksymacji Zbiór przybliżony ma brzeg . Zbiór dokładny ma = 1. Tutaj XT = {1,5,6,7}, BC(XT) = {1,5,6,7,9} – {1,6,7} = {5,9}, C(XT) = 0,6. Prof. Zdzisław Pawlak IW - 2007
B. Drzewa decyzyjne Węzły to nazwy atrybutów, etykiety gałęzi towartości(ew. z relacjami), Liście to nazwyi wartości atrybutów decyzyjnych: cx vx1 cy vy1 d = w1 vy2 cz itd vx2 cz vz1 d = w2 vz2 d = w1 cx Albo < vx > vx = vx cy < vy vy Zalety: - szybkie przeszukiwanie, Wady: - sztywna struktura, - kontrola pełności, - więcej elementów, - poglądowość. - duże trudno analizować. IW - 2007
B. Drzewa decyzyjne Na przykład: c1 0 1 c2 c2 x y x y N T c3 c3 T N T N Więcej elementów. Kolejność atrybutów może mieć wpływ na złożoność drzewa. Niekiedy liściom przypisuje się odpowiadającą im liczbę wierszy tablicy lub dokładność aproksymacji. IW - 2007